Korištenje mscp-a za brze prijenose datoteka
Naučite kako koristiti mscp (multi-threaded scp) za brze prijenose datoteka na svoj Appbox poslužitelj pomoću više SSH veza.
mscp je višedretvena varijanta scp koja kopira datoteke preko više SSH (SFTP) veza istodobno. To omogućuje znatno brže prijenose velikih datoteka i direktorija korištenjem paralelnih veza.
Preduvjeti
Prije korištenja mscp-a morate instalirati SFTPgo na svoj Appbox poslužitelj kako biste dobili SFTP vjerodajnice.
Korak 1: Instalirajte SFTPgo
- Posjetite stranicu aplikacije SFTPgo u Appbox App Storeu
- Kliknite Install kako biste dodali SFTPgo na svoj poslužitelj
- Nakon instalacije dobit ćete podatke za povezivanje:
- Username: Vaše SFTP korisničko ime
- Password: Vaša SFTP lozinka
- Hostname: npr.
sftpgo.yourserver.appboxes.co - SFTP Port: npr.
25557 - FTP/FTPS Port: npr.
25555 - WebDav URL: Za WebDAV pristup
Napomena
Čuvajte svoje SFTPgo vjerodajnice na sigurnom. Za mscp veze trebat će vam hostname, korisničko ime, lozinka i SFTP port.
Instalacija mscp-a
Odaberite način instalacije za svoj operacijski sustav:
macOS
Korištenje Homebrew (preporučeno)
brew install upa/tap/mscpKorištenje 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 nema izvorne Windows binarne datoteke, ali možete ga koristiti kroz WSL (Windows Subsystem for Linux):
Korak 1: Instalirajte WSL
Otvorite PowerShell kao Administrator i pokrenite:
wsl --installPonovno pokrenite računalo kada se to zatraži.
Korak 2: Instalirajte mscp u WSL-u
Nakon što je WSL postavljen (Ubuntu je zadani), otvorite WSL terminal i pokrenite:
sudo add-apt-repository ppa:upaa/mscp
sudo apt-get update
sudo apt-get install mscpWindows putanje datoteka u WSL-u
U WSL-u su vaši Windows diskovi dostupni pod /mnt/. Na primjer, C:\Users\YourName\Downloads postaje /mnt/c/Users/YourName/Downloads.
Izgradnja iz izvornog koda
Ako paketi nisu dostupni za vaš sustav, mscp možete izgraditi iz izvornog koda:
# 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 installOsnovna upotreba
Sintaksa mscp-a slična je scp. Evo čestih obrazaca korištenja.
Važno: koristite svoj SFTP port
U primjerima u nastavku 25557 predstavlja SFTP Port iz vaših SFTPgo postavki. Zamijenite ga stvarnim SFTP portom prikazanim u vašem SFTPgo Options panelu.
Prenesite datoteku na poslužitelj
# -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/Prenesite direktorij
Za razliku od scp, mscp ne zahtijeva zastavicu -r za direktorije:
# -P 25557 is the SFTP port from your SFTPgo Options
mscp -P 25557 /local/directory username@sftpgo.yourserver.appboxes.co:/remote/path/Preuzmite datoteku s poslužitelja
# Replace 25557 with your actual SFTP port
mscp -P 25557 username@sftpgo.yourserver.appboxes.co:/remote/file.zip /local/destination/Preuzmite direktorij
mscp -P 25557 username@sftpgo.yourserver.appboxes.co:/remote/directory/ /local/path/Napredne opcije
Korištenje više veza
Prema zadanim postavkama mscp koristi više veza. Broj veza možete odrediti pomoću -n:
mscp -P 25557 -n 8 largefile.zip username@sftpgo.yourserver.appboxes.co:/destination/Nastavak neuspjelih prijenosa (checkpointing)
mscp podržava checkpointing za nastavak prekinutih prijenosa:
# 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 -rOdredite autentikaciju SSH ključem
Ako ste postavili autentikaciju SSH ključem sa SFTPgo:
mscp -P 25557 -i ~/.ssh/your_key localfile.zip username@sftpgo.yourserver.appboxes.co:/destination/Ograničite propusnost
Za ograničavanje propusnosti prijenosa (korisno na dijeljenim vezama):
mscp -P 25557 -l 10M localfile.zip username@sftpgo.yourserver.appboxes.co:/destination/Primjer: potpuni tijek rada
Evo potpunog primjera korištenja SFTPgo vjerodajnica iz 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/Savjeti za performanse
- Koristite više veza za velike datoteke: Povećajte vrijednost
-nza prijenose velikih datoteka (npr.-n 8ili-n 16) - Koristite manje veza za mnogo malih datoteka: Za direktorije s mnogo malih datoteka manji broj veza može biti učinkovitiji
- Omogućite kompresiju za tekstualne datoteke: mscp nasljeđuje SSH kompresiju; koristite
-Cza prijenose s mnogo teksta - Koristite checkpointing za vrlo velike prijenose: Uvijek omogućite checkpointing za višegigabajtne prijenose kako biste mogli nastaviti ako se prijenos prekine
Rješavanje problema
Veza odbijena
Provjerite koristite li ispravan SFTP port iz svojih SFTPgo postavki (ne FTP port):
mscp -P 25557 ... # Use your actual SFTP portDozvola odbijena
Provjerite jesu li vaše korisničko ime i lozinka ispravni. Najprije možete testirati standardnim SFTP klijentom:
sftp -P 25557 username@sftpgo.yourserver.appboxes.coSpori prijenosi
Pokušajte prilagoditi broj paralelnih veza:
mscp -P 25557 -n 16 ... # Increase connections