Pamiętaj, że jeśli masz wolne łącze lub serwer jest mocno obciążony, narzędzie używane do kopiowania nie będzie wąskim gardłem, a jakikolwiek sposób kopiowania i tak będzie powolny.
Powinno to zapewnić podstawowe użycie do kopiowania między komputerem lokalnym a serwerem zdalnym: http://oreilly.com/pub/h/38
Aby skopiować z komputera lokalnego na zdalny serwer (oczywiście musisz zastąpić ścieżki, nazwę użytkownika i adres hosta):
Zwróć uwagę, że @Piskvor nie uwzględnił -zopcji kopiowania lokalnego, ponieważ powoduje to niepotrzebny narzut. IMHO, powinieneś używać tylko -zpodczas używania rsync przez wolne łącze sieciowe. Jeśli kopiujesz duże ilości danych ponad 100Base-T, możesz być w porządku bez -z. Dzięki szybkiemu połączeniu sieciowemu kompresja może ustalić procesor i zagłodzić inne procesy.
@tomlogic: Dobra uwaga - innymi słowy, nie używaj -zdo kopiowania lub kopiowania w sieci LAN na jednym komputerze; testuj z lub bez -zkopiowania przez Internet (jedno lub drugie może być szybsze, w zależności od wielu rzeczy).
Pominąłbym również kompresję, jeśli wiesz, że Twoje pliki są już skompresowane, na przykład synchronizację drzewa folderów pełnego plików JPEG, ponieważ nie ma nic do zyskania.
W przypadku pojedynczych transakcji scp jest przydatny. Jeśli jest dużo plików, dobrym pomysłem jest rsync. Jeśli połączenie zostanie przerwane, rsync może rozpocząć od miejsca, w którym zostało przerwane.
Wiedziałem, że rsync ma kompresję ( -z), i właśnie dowiedziałem się, że scp również ( -C).
W twoim ustawieniu rsync prawdopodobnie wystarcza ... ale na przykład, jeśli jest wiele małych plików, może być szybsze tarowanie plików najpierw niż przesyłanie następnie przez rsync. Dzieje się tak, ponieważ przenoszenie właściciela, znaczników czasu i uprawnień jest czasem cięższe niż sam plik, jeśli plik jest mały. Tar połączy wszystkie te informacje w jednym pliku, a rsync skopiuje większe bloki.
Lub jeszcze lepiej, jeśli nie są potrzebne żadne zabezpieczenia, użyj tar i nc:
Na miejscu przygotuj demona odbierającego, rozpakuj i rozpakuj:
nc -l -p 12345 | pigz -d | tar xvf -
W źródle, tar wszystko, kompresję równoległą i wysłać do miejsca docelowego:
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.
-z
opcji kopiowania lokalnego, ponieważ powoduje to niepotrzebny narzut. IMHO, powinieneś używać tylko-z
podczas używania rsync przez wolne łącze sieciowe. Jeśli kopiujesz duże ilości danych ponad 100Base-T, możesz być w porządku bez-z
. Dzięki szybkiemu połączeniu sieciowemu kompresja może ustalić procesor i zagłodzić inne procesy.