Używam rsync 3.1.1, aby zsynchronizować dwa dyski, z których jeden jest w sieci i jest zamontowany jako udział samby /mnt/ROUTER_WD_2TB/
. Jest to źródło o prędkości 30–40 MB / s ze względu na ograniczenia sieci. Drugi, miejsce docelowe, jest montowany lokalnie (szczyt 110 MB / s) i jest /mnt/BACKUP_HITACHI_2TB/
.
Używam następującego polecenia rsync:
rsync -haAXi --quiet --append-verify --delete /mnt/ROUTER_WD_2TB/* /mnt/BACKUP_HITACHI_2TB/.
Dyski zawierają wiele plików, w większości małych.
Problem polega na tym, że rsync zajmuje dość dużo czasu (10-20 m), zanim zacznie przenosić jakiekolwiek pliki, chyba dlatego, że musi obliczyć listy plików dla bardzo dużej liczby małych plików. W tym okresie wykorzystanie nowej pracy wynosi 200-500 KB / s, a podczas przesyłania plików prędkość wynosi około 40 MB / s.
Zwykle zdarza się, że rsync potrzebuje około 15 m, aby w końcu znaleźć coś do skopiowania, a następnie zajmuje 5 sekund, aby je skopiować, a następnie kontynuuje sprawdzanie innych plików do skopiowania przez kolejne 5 minut. Podsumowując, 5-sekundowa kopia pliku kończy się na 20 minut!
Czy mogę podjąć jakieś środki, aby uniknąć tego długiego okresu przed kopiowaniem plików, poza wykluczeniem folderów? Jakikolwiek „bufor”, który mogę wdrożyć, aby rsync nie musiał odbudowywać całej listy plików od zera?