Każdy z nas to zna: musisz przerzucić kilkaset gigabajtów danych z jednego dysku na drugi. Standardowe cp -r niby działa, ale przy setkach tysięcy małych plików zaczyna „mielić”, a Ty tracisz czas, patrząc w migający kursor bez żadnej informacji o postępie.
Jeśli masz w maszynie nowoczesne dyski SSD lub NVMe, kopiowanie danych starymi metodami to marnowanie ich potencjału. Czas na narzędzie, które wyciśnie z Twojego sprzętu siódme poty: rclone.
Ten wpis pokazuje jak w sposob sprytny z 2 godzin kopiowania w mc lub innym wizualnym narzedziu w Linux zrobic 20 minut tylko przy pomocy rclone i terminala Linux (nie potrzebujesz GUI i trybu graficznego) !!!
Dlaczego rclone, a nie po prostu cp lub rsync?
Rclone kojarzy się głównie z chmurą (Google Drive, S3), ale to absolutny potwór, jeśli chodzi o operacje lokalne. W przeciwieństwie do cp, rclone:
- Działa wielowątkowo – kopiuje wiele plików naraz.
- Dzieli duże pliki – potrafi przesyłać jeden ogromny plik kilkoma strumieniami jednocześnie.
- Ma wbudowany „Progress Bar” – dokładnie widzisz prędkość (MB/s) i czas do końca.
- Weryfikuje dane – masz pewność, że suma kontrolna pliku po kopii zgadza się z oryginałem.
Konfiguracja na „Maksymalnym Speedzie”
Jeśli Twoje źródło i cel to dyski SSD, zapomnij o domyślnych ustawieniach. Musimy otworzyć „przepustnicę”. Oto komenda, która zdejmuje kagańce z Twojego procesora i pamięci RAM:
$ rclone copy /sciezka/zrodlo /sciezka/cel \
-P \
--transfers 32 \
--checkers 64 \
--multi-thread-streams 8 \
--buffer-size 128M \
--checksum
Co tu się dzieje pod maską?
--transfers 32: Zamiast kopiować pliki jeden po drugim, rclone pcha 32 pliki jednocześnie. Przy SSD to czysty zysk, bo dysk nie musi czekać na zakończenie operacji I/O jednego pliku, by zacząć kolejny.--checkers 64: Rclone błyskawicznie skanuje strukturę katalogów, sprawdzając, co trzeba skopiować, a co już jest na miejscu.--multi-thread-streams 8: To „killer feature” dla dużych plików (np. obrazów ISO czy baz danych). Jeden plik jest cięty na 8 kawałków i przesyłany równolegle.--buffer-size 128M: Wykorzystujemy pamięć RAM jako bufor, co drastycznie przyspiesza operacje przy kopiowaniu tysięcy malutkich plików (np. folderównode_modules).--checksum: Bezpieczeństwo przede wszystkim. Po zakończeniu rclone porówna sumy kontrolne, by wykluczyć błędy zapisu.
Wskazówka: Jeśli kopiujesz ogromną liczbę bardzo małych plików (np. kody źródłowe, tysiące zdjęć), procesor może stać się wąskim gardłem przy obliczaniu sum kontrolnych. Wtedy warto dodać --ignore-checksum, aby opierać się tylko na rozmiarze i dacie modyfikacji.
W trakcie kopiowania możesz ujrzeć notyfikację tego typu „NOTICE:” wskazującą, że jeśli zależy Tobie na skopiowaniu dowiązań symbolicznych musisz dodać parametr -L do rclone.
Kiedy warto zwolnić?
Pamiętaj, że powyższe ustawienia są agresywne. Jeśli podczas kopiowania planujesz pracować na komputerze, --transfers 32 może spowodować, że system będzie mniej responsywny. Wtedy zmniejsz tę wartość do 8 lub 16.
Podsumowanie
Jeśli Twoim priorytetem jest czas, rclone na Linuksie nie ma sobie równych. Wykorzystując wielowątkowość i bufory w RAM-ie, zmieniasz żmudne czekanie w błyskawiczny proces. Twoje dyski SSD w końcu dostaną zadanie, przy którym będą mogły pokazać pełnię mocy.