Pobieranie wielu fragmentów jednocześnie – FTP pod Linuksem

Niestety niektórzy usługodawcy/operatorzy przycinają prędkość transmisji dla pojedynczych transmisji. Mimo, że teoretycznie mamy dostępny transfer rzędu 10MB/s, to często w praktyce dostajemy możliwość korzystania z ~1-1.5MB/s.

Ale możemy temu w prosty sposób zaradzić. Prawie w każdej dystrybucji Linuksa dostępny jest pakiet lftp. Za pomocą odpowiednich przełączników możemy „zrównoleglić” pobieranie pliku z serwera w taki oto sposób:

$ lftp -e 'pget -c -n 5 /path/to/file’ ftp://username@server

Dzięki temu jednocześnie pobieramy plik z serwera w 5. częściach (parametr -n), z opcją kontynuowania pobierania (-c), jeśli coś by się przydarzyło z połączeniem.

Z pomocą przełącznika -e (execute) programu lftp możemy również bardzo prosto stworzyć backup/mirror lokalnego katalogu na zdalnej maszynie, jeśli mamy dostępną funkcję uploadu na zdalnym serwerze FTP:

$ lftp -u username,password -e „mirror –reverse –delete –only-newer –verbose path/to/source_directory path/to/target_directory” ftpserver