DokumentációDocumentationTutorialsUsing mscp for Fast File Transfers

Az mscp használata gyors fájlátvitelhez

Ismerd meg az mscp (multi-threaded scp) használatát nagy sebességű fájlátvitelekhez az Appbox szerveredre, több SSH kapcsolat használatával.

Az mscp az scp több szálon futó változata, amely egyszerre több SSH (SFTP) kapcsolaton keresztül másol fájlokat. Ez jelentősen gyorsabb átvitelt tesz lehetővé nagy fájloknál és könyvtáraknál a párhuzamos kapcsolatok kihasználásával.

Előfeltételek

Az mscp használata előtt telepítened kell az SFTPgo alkalmazást az Appbox szerveredre, hogy megkapd az SFTP hitelesítő adataidat.

1. lépés: SFTPgo telepítése

  1. Nyisd meg az SFTPgo alkalmazásoldalát az Appbox App Store-ban
  2. Kattints az Install gombra az SFTPgo szerverhez adásához
  3. A telepítés után megkapod a kapcsolódási adataidat:
    • Username: Az SFTP felhasználóneved
    • Password: Az SFTP jelszavad
    • Hostname: például sftpgo.yourserver.appboxes.co
    • SFTP Port: például 25557
    • FTP/FTPS Port: például 25555
    • WebDav URL: WebDAV hozzáféréshez

mscp telepítése

Válaszd ki az operációs rendszerednek megfelelő telepítési módszert:

macOS

Homebrew használatával (ajánlott)

brew install upa/tap/mscp

MacPorts használatával

sudo port install mscp

Ubuntu / Debian

sudo add-apt-repository ppa:upaa/mscp
sudo apt-get update
sudo apt-get install mscp

RHEL / Fedora / CentOS / Rocky Linux / AlmaLinux

sudo dnf copr enable upaaa/mscp
sudo dnf install mscp

Windows

Az mscp-hez nincs natív Windows bináris, de WSL-en (Windows Subsystem for Linux) keresztül használhatod:

1. lépés: WSL telepítése

Nyisd meg a PowerShellt rendszergazdaként, és futtasd:

wsl --install

Indítsd újra a számítógépet, amikor a rendszer kéri.

2. lépés: mscp telepítése WSL-ben

Miután a WSL be van állítva (az Ubuntu az alapértelmezett), nyisd meg a WSL terminált, és futtasd:

sudo add-apt-repository ppa:upaa/mscp
sudo apt-get update
sudo apt-get install mscp

Buildelés forrásból

Ha nem érhetők el csomagok a rendszeredhez, forrásból is buildelheted az mscp-t:

# 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 install

Alapvető használat

Az mscp szintaxisa hasonló az scp szintaxisához. Íme néhány gyakori használati minta.

Fájl feltöltése a szerveredre

# -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/

Könyvtár feltöltése

Az scp-vel ellentétben az mscp nem igényli a -r flaget könyvtárakhoz:

# -P 25557 is the SFTP port from your SFTPgo Options
mscp -P 25557 /local/directory username@sftpgo.yourserver.appboxes.co:/remote/path/

Fájl letöltése a szerveredről

# Replace 25557 with your actual SFTP port
mscp -P 25557 username@sftpgo.yourserver.appboxes.co:/remote/file.zip /local/destination/

Könyvtár letöltése

mscp -P 25557 username@sftpgo.yourserver.appboxes.co:/remote/directory/ /local/path/

Haladó beállítások

Több kapcsolat használata

Alapértelmezés szerint az mscp több kapcsolatot használ. A kapcsolatok számát a -n kapcsolóval adhatod meg:

mscp -P 25557 -n 8 largefile.zip username@sftpgo.yourserver.appboxes.co:/destination/

Sikertelen átvitelek folytatása (checkpointing)

Az mscp támogatja a checkpointing használatát a megszakított átvitelek folytatásához:

# 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 -r

SSH kulcsos hitelesítés megadása

Ha beállítottad az SSH kulcsos hitelesítést az SFTPgo-val:

mscp -P 25557 -i ~/.ssh/your_key localfile.zip username@sftpgo.yourserver.appboxes.co:/destination/

Sávszélesség korlátozása

Az átviteli sávszélesség korlátozásához (megosztott kapcsolatokon hasznos):

mscp -P 25557 -l 10M localfile.zip username@sftpgo.yourserver.appboxes.co:/destination/

Példa: teljes munkafolyamat

Íme egy teljes példa az Appboxból származó SFTPgo hitelesítő adatokkal:

# 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/

Teljesítménytippek

  1. Használj több kapcsolatot nagy fájlokhoz: Növeld a -n értékét nagy fájlátvitelekhez (például -n 8 vagy -n 16)
  2. Használj kevesebb kapcsolatot sok kis fájlhoz: Sok kis fájlt tartalmazó könyvtáraknál a kevesebb kapcsolat hatékonyabb lehet
  3. Kapcsold be a tömörítést szövegfájlokhoz: Az mscp örökli az SSH tömörítést; szövegtúlsúlyos átvitelekhez használd a -C kapcsolót
  4. Használj checkpointinget nagyon nagy átvitelekhez: Több gigabájtos átviteleknél mindig kapcsold be a checkpointinget, hogy megszakadás esetén folytatható legyen

Hibaelhárítás

Kapcsolat visszautasítva

Győződj meg róla, hogy a megfelelő SFTP portot használod az SFTPgo beállításaidból (nem az FTP portot):

mscp -P 25557 ...  # Use your actual SFTP port

Hozzáférés megtagadva

Ellenőrizd, hogy a felhasználóneved és jelszavad helyes. Először tesztelheted egy szabványos SFTP klienssel:

sftp -P 25557 username@sftpgo.yourserver.appboxes.co

Lassú átvitelek

Próbáld módosítani a párhuzamos kapcsolatok számát:

mscp -P 25557 -n 16 ...  # Increase connections

További erőforrások