Bruke mscp for raske filoverføringer
Lær hvordan du bruker mscp (multi-threaded scp) for høyhastighets filoverføringer til Appbox-serveren din med flere SSH-tilkoblinger.
mscp er en flertrådet variant av scp som kopierer filer over flere SSH-tilkoblinger (SFTP) samtidig. Dette gir betydelig raskere overføringer av store filer og mapper ved å bruke parallelle tilkoblinger.
Forutsetninger
Før du bruker mscp, må du installere SFTPgo på Appbox-serveren din for å få SFTP-legitimasjonen din.
Trinn 1: Installer SFTPgo
- Gå til SFTPgo-appsiden i Appbox App Store
- Klikk Install for å legge SFTPgo til på serveren din
- Når den er installert, mottar du tilkoblingsdetaljene dine:
- Username: SFTP-brukernavnet ditt
- Password: SFTP-passordet ditt
- Hostname: f.eks.
sftpgo.yourserver.appboxes.co - SFTP Port: f.eks.
25557 - FTP/FTPS Port: f.eks.
25555 - WebDav URL: For WebDAV-tilgang
Merk
Oppbevar SFTPgo-legitimasjonen din trygt. Du trenger vertsnavn, brukernavn, passord og SFTP-port for mscp-tilkoblinger.
Installere mscp
Velg installasjonsmetoden for operativsystemet ditt:
macOS
Med Homebrew (anbefalt)
brew install upa/tap/mscpMed MacPorts
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 har ikke innebygde Windows-binærfiler, men du kan bruke det gjennom WSL (Windows Subsystem for Linux):
Trinn 1: Installer WSL
Åpne PowerShell som administrator og kjør:
wsl --installStart datamaskinen på nytt når du blir bedt om det.
Trinn 2: Installer mscp i WSL
Etter at WSL er satt opp (Ubuntu er standard), åpner du WSL-terminalen og kjører:
sudo add-apt-repository ppa:upaa/mscp
sudo apt-get update
sudo apt-get install mscpWindows-filstier i WSL
I WSL er Windows-diskene dine tilgjengelige under /mnt/. For eksempel blir C:\Users\YourName\Downloads til /mnt/c/Users/YourName/Downloads.
Bygge fra kildekode
Hvis pakker ikke er tilgjengelige for systemet ditt, kan du bygge mscp fra kildekode:
# 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 installGrunnleggende bruk
mscp-syntaksen ligner på scp. Her er vanlige bruksmønstre.
Viktig: Bruk SFTP-porten din
I eksemplene nedenfor representerer 25557 SFTP Port fra SFTPgo-innstillingene dine. Erstatt dette med den faktiske SFTP-porten som vises i SFTPgo Options-panelet ditt.
Last opp en fil til serveren din
# -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/Last opp en mappe
I motsetning til scp krever ikke mscp flagget -r for mapper:
# -P 25557 is the SFTP port from your SFTPgo Options
mscp -P 25557 /local/directory username@sftpgo.yourserver.appboxes.co:/remote/path/Last ned en fil fra serveren din
# Replace 25557 with your actual SFTP port
mscp -P 25557 username@sftpgo.yourserver.appboxes.co:/remote/file.zip /local/destination/Last ned en mappe
mscp -P 25557 username@sftpgo.yourserver.appboxes.co:/remote/directory/ /local/path/Avanserte alternativer
Bruke flere tilkoblinger
Som standard bruker mscp flere tilkoblinger. Du kan angi antall tilkoblinger med -n:
mscp -P 25557 -n 8 largefile.zip username@sftpgo.yourserver.appboxes.co:/destination/Gjenoppta mislykkede overføringer (checkpointing)
mscp støtter checkpointing for å gjenoppta avbrutte overføringer:
# 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 -rAngi autentisering med SSH-nøkkel
Hvis du har satt opp autentisering med SSH-nøkkel i SFTPgo:
mscp -P 25557 -i ~/.ssh/your_key localfile.zip username@sftpgo.yourserver.appboxes.co:/destination/Begrens båndbredde
For å begrense overføringsbåndbredden (nyttig på delte tilkoblinger):
mscp -P 25557 -l 10M localfile.zip username@sftpgo.yourserver.appboxes.co:/destination/Eksempel: Komplett arbeidsflyt
Her er et komplett eksempel med SFTPgo-legitimasjon fra Appbox:
# 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/Ytelsestips
- Bruk flere tilkoblinger for store filer: Øk
-n-verdien for store filoverføringer (f.eks.-n 8eller-n 16) - Bruk færre tilkoblinger for mange små filer: For mapper med mange små filer kan færre tilkoblinger være mer effektivt
- Aktiver komprimering for tekstfiler: mscp arver SSH-komprimering. Bruk
-Cfor teksttunge overføringer - Bruk checkpointing for svært store overføringer: Aktiver alltid checkpointing for overføringer på flere gigabyte, slik at de kan gjenopptas hvis de avbrytes
Feilsøking
Tilkobling avvist
Sørg for at du bruker riktig SFTP-port fra SFTPgo-innstillingene dine (ikke FTP-porten):
mscp -P 25557 ... # Use your actual SFTP portTilgang nektet
Kontroller at brukernavn og passord er riktige. Du kan først teste med en standard SFTP-klient:
sftp -P 25557 username@sftpgo.yourserver.appboxes.coTrege overføringer
Prøv å justere antall parallelle tilkoblinger:
mscp -P 25557 -n 16 ... # Increase connections