mscp:n käyttö nopeisiin tiedostonsiirtoihin
Opi käyttämään mscp:tä (multi-threaded scp) nopeisiin tiedostonsiirtoihin Appbox-palvelimellesi useiden SSH-yhteyksien avulla.
mscp on monisäikeinen muunnelma scp-komennosta, joka kopioi tiedostoja useiden SSH (SFTP) -yhteyksien kautta samanaikaisesti. Tämä mahdollistaa merkittävästi nopeammat siirrot suurille tiedostoille ja hakemistoille hyödyntämällä rinnakkaisia yhteyksiä.
Edellytykset
Ennen mscp:n käyttöä sinun täytyy asentaa SFTPgo Appbox-palvelimellesi saadaksesi SFTP-tunnistetietosi.
Vaihe 1: Asenna SFTPgo
- Käy SFTPgo-sovellussivulla Appbox App Storessa
- Lisää SFTPgo palvelimellesi napsauttamalla Install
- Kun asennus on valmis, saat yhteystietosi:
- Username: SFTP-käyttäjänimesi
- Password: SFTP-salasanasi
- Hostname: esim.
sftpgo.yourserver.appboxes.co - SFTP Port: esim.
25557 - FTP/FTPS Port: esim.
25555 - WebDav URL: WebDAV-käyttöä varten
Huomautus
Säilytä SFTPgo-tunnistetietosi turvallisesti. Tarvitset isäntänimen, käyttäjänimen, salasanan ja SFTP-portin mscp-yhteyksiä varten.
mscp:n asentaminen
Valitse käyttöjärjestelmällesi sopiva asennustapa:
macOS
Homebrew'n käyttö (suositeltu)
brew install upa/tap/mscpMacPorts-ohjelman käyttö
sudo port install mscpUbuntu / Debian
sudo add-apt-repository ppa:upaa/mscp
sudo apt-get update
sudo apt-get install mscpRHEL / Fedora / CentOS / Rocky Linux / AlmaLinux
sudo dnf copr enable upaaa/mscp
sudo dnf install mscpWindows
mscp:lle ei ole natiiveja Windows-binäärejä, mutta voit käyttää sitä WSL:n (Windows Subsystem for Linux) kautta:
Vaihe 1: Asenna WSL
Avaa PowerShell järjestelmänvalvojana ja suorita:
wsl --installKäynnistä tietokone uudelleen, kun sitä pyydetään.
Vaihe 2: Asenna mscp WSL:ssä
Kun WSL on määritetty (Ubuntu on oletus), avaa WSL-pääte ja suorita:
sudo add-apt-repository ppa:upaa/mscp
sudo apt-get update
sudo apt-get install mscpWindows-tiedostopolut WSL:ssä
WSL:ssä Windows-asemasi ovat käytettävissä /mnt/-hakemiston alla. Esimerkiksi C:\Users\YourName\Downloads muuttuu muotoon /mnt/c/Users/YourName/Downloads.
Rakentaminen lähdekoodista
Jos paketteja ei ole saatavilla järjestelmällesi, voit rakentaa mscp:n lähdekoodista:
# Clone the repository
git clone https://github.com/upa/mscp.git
cd mscp
# Prepare patched libssh
git submodule update --init
patch -d libssh -p1 < patch/$(git -C libssh describe).patch
# Install build dependencies
bash ./scripts/install-build-deps.sh
# Build
mkdir build && cd build
cmake ..
make
# Install
sudo make installPeruskäyttö
mscp-syntaksi muistuttaa scp-komentoa. Tässä on yleisiä käyttötapoja.
Tärkeää: käytä SFTP-porttiasi
Alla olevissa esimerkeissä 25557 edustaa SFTP Port -arvoa SFTPgo-asetuksistasi. Korvaa se todellisella SFTP-portilla, joka näkyy SFTPgo Options -paneelissasi.
Lataa tiedosto palvelimellesi
# -P specifies the SFTP port (use your SFTP port from SFTPgo settings)
mscp -P 25557 localfile.zip username@sftpgo.yourserver.appboxes.co:/path/to/destination/Lataa hakemisto
Toisin kuin scp, mscp ei vaadi -r-lippua hakemistoille:
# -P 25557 is the SFTP port from your SFTPgo Options
mscp -P 25557 /local/directory username@sftpgo.yourserver.appboxes.co:/remote/path/Lataa tiedosto palvelimeltasi
# Replace 25557 with your actual SFTP port
mscp -P 25557 username@sftpgo.yourserver.appboxes.co:/remote/file.zip /local/destination/Lataa hakemisto palvelimelta
mscp -P 25557 username@sftpgo.yourserver.appboxes.co:/remote/directory/ /local/path/Edistyneet asetukset
Useiden yhteyksien käyttö
Oletuksena mscp käyttää useita yhteyksiä. Voit määrittää yhteyksien määrän -n-lipulla:
mscp -P 25557 -n 8 largefile.zip username@sftpgo.yourserver.appboxes.co:/destination/Epäonnistuneiden siirtojen jatkaminen (checkpointing)
mscp tukee checkpointing-toimintoa keskeytyneiden siirtojen jatkamiseen:
# Enable checkpointing
mscp -P 25557 -C /path/to/checkpoint.json largefile.zip username@server:/destination/
# Resume a failed transfer
mscp -P 25557 -C /path/to/checkpoint.json -rSSH-avainpohjaisen todennuksen määrittäminen
Jos olet määrittänyt SSH-avainpohjaisen todennuksen SFTPgo:ssa:
mscp -P 25557 -i ~/.ssh/your_key localfile.zip username@sftpgo.yourserver.appboxes.co:/destination/Rajoita kaistanleveyttä
Siirtokaistanleveyden rajoittaminen (hyödyllistä jaetuissa yhteyksissä):
mscp -P 25557 -l 10M localfile.zip username@sftpgo.yourserver.appboxes.co:/destination/Esimerkki: kokonainen työnkulku
Tässä on kokonainen esimerkki Appboxista saaduilla SFTPgo-tunnistetiedoilla:
# Set your credentials (replace with your actual values from SFTPgo Options)
HOST="sftpgo.yourserver.appboxes.co" # Your Hostname
PORT="25557" # Your SFTP Port (not FTP port!)
USER="your_username" # Your Username
# Upload a large file using 4 connections
mscp -P $PORT -n 4 ~/Downloads/large-backup.tar.gz $USER@$HOST:/backups/
# Upload an entire directory
mscp -P $PORT ~/Projects/my-website/ $USER@$HOST:/www/
# Download files from server
mscp -P $PORT $USER@$HOST:/media/movies/ ~/Downloads/movies/Suorituskykyvinkit
- Käytä enemmän yhteyksiä suurille tiedostoille: Kasvata
-n-arvoa suurissa tiedostonsiirroissa (esim.-n 8tai-n 16) - Käytä vähemmän yhteyksiä monille pienille tiedostoille: Hakemistoissa, joissa on paljon pieniä tiedostoja, vähemmän yhteyksiä voi olla tehokkaampaa
- Ota pakkaus käyttöön tekstitiedostoille: mscp perii SSH-pakkauksen; käytä
-C-lippua tekstipainotteisiin siirtoihin - Käytä checkpointing-toimintoa erittäin suuriin siirtoihin: Ota checkpointing aina käyttöön useiden gigatavujen siirroissa, jotta siirtoa voidaan jatkaa keskeytyksen jälkeen
Vianmääritys
Yhteys hylätty
Varmista, että käytät oikeaa SFTP-porttia SFTPgo-asetuksistasi (et FTP-porttia):
mscp -P 25557 ... # Use your actual SFTP portLupa evätty
Varmista, että käyttäjänimesi ja salasanasi ovat oikein. Voit testata ensin tavallisella SFTP-asiakasohjelmalla:
sftp -P 25557 username@sftpgo.yourserver.appboxes.coHitaat siirrot
Kokeile säätää rinnakkaisten yhteyksien määrää:
mscp -P 25557 -n 16 ... # Increase connections