Właśnie przeprowadziłem się i odkryłem po kilku próbach i błędach, że gdzieś między moim domem a moim zdalnym serwerem trwa dławienie ... ale dławienie nie jest zbyt inteligentne. Ogranicza tylko pojedyncze połączenia. Więc jeśli skopiuję jeden plik 1 GB, będzie on działał wesoło z prędkością 150 kB / s. Ale jeśli zainicjuję 10 kopii, każda z nich osiągnie prędkość 150 kB / s (tj. Uzyskam znacznie większą łączną przepustowość na wielu połączeniach).
Używam rsync dość często do synchronizowania niektórych dużych zbiorów danych z pracy do domu (na szczęście w postaci wielu plików). Czy istnieje sposób, aby powiedzieć rsync, aby pobierał za pomocą wielu połączeń? Teoretycznie powinno to być możliwe, ponieważ o ile mogę powiedzieć, rsync najpierw wykonuje podanie w celu ustalenia niezbędnych zmian, a następnie dokonuje faktycznej transmisji. Punkty bonusowe, jeśli istnieje magiczny sposób nakazania rsync pokroić pojedyncze pliki na N kawałków, a następnie połączyć je z powrotem. Uważam, że CuteFTP jest wystarczająco inteligentny, aby to osiągnąć.
źródło
GNU Parallel ma rozwiązanie .
Przesunąłem 15 TB na 1 Gbps i może nasycić łącze 1 Gbps.
Następujące uruchomienie rsync na duży plik w src-dir do dest-dir na serwerze fooserver:
Utworzone katalogi mogą kończyć się niewłaściwymi uprawnieniami i mniejsze pliki nie są przesyłane. Aby naprawić te uruchamianie rsync po raz ostatni:
źródło
Tak. Taka funkcja istnieje.
Istnieje narzędzie o nazwie pssh, które zapewnia opisaną funkcjonalność.
Nie jestem pewien, jak łatwo jest to skonfigurować, ale może to załatwić sprawę!
źródło
Nie mogę komentować, więc dodałem nową odpowiedź z nieco lepszym kodem niż poprzedni (ładny i inteligentny) kod.
Sprawdź
rsync
linię, ponieważ zawiera ona opcjonalnąionice
modyfikację.źródło
Wygląda na to, że ktoś napisał to narzędzie dla Ciebie. Rozbija transfer na równoległe fragmenty. Jest to lepsza implementacja niż wersja „równoległego dużego pliku” wymieniona w GNU Parallel:
https://gist.github.com/rcoup/5358786
Ponadto lftp może równolegle przesyłać pliki przez ftp, ftps, http, https, hftp, fish, sftp. Wiele razy korzystanie z lftp ma pewne zalety, ponieważ zarządzanie uprawnieniami, ograniczony dostęp itp. Dla rsync może być trudnym zadaniem.
źródło
Nie. Nie ma takiej funkcji. Możesz podzielić synchronizację na wiele połączeń,
rsync
jeśli naprawdę tego chcesz.Sugeruję, abyś znalazł to, co powoduje ograniczenie prędkości i poważnie porozmawiał z tym, kto go utrzymuje / zarządza.
źródło
Chciałem przenieść kilka katalogów (z wieloma plikami) jednocześnie, więc stworzyłem ten mały skrypt:
Zrobiłem ten skrypt dość szybko, więc proszę go poprawić i przetestować przed użyciem w środowisku produkcyjnym.
źródło
Utworzyłem następujący skrypt do równoległego przesyłania wielu folderów ze zdjęciami. Uruchom go najpierw z celem synchronizacji, a następnie ze wszystkimi nazwami folderów do skopiowania.
Poprzedza nazwę folderu na żółto do wszystkich danych wyjściowych konsoli rsync, aby wyglądać ładnie.
źródło
Aria2 to dobry program kliencki do pobierania danych przy użyciu wielu połączeń z wielu serwerów lustrzanych. Nie obsługuje SFTP. Więc zainstalowałem serwer FTP - vsftpd . Moje połączenie 3g działa na pełnej mocy z 5 połączeniami z serwerem FTP.
źródło