Pertama - jumlah file dalam hal ini akan menjadi faktor utama. Ini ukuran rata-rata masing-masing 3MB. Mungkin ada hambatan io yang mempengaruhi kecepatan dalam kasus OP. Lebih lanjut di sini - itu bacaan yang cukup kering, tetapi gambar sampulnya sepadan.
Jadi, menggunakan rsync untuk menyalin ke direktori kosong? Berikut beberapa cara untuk mempercepatnya:
- Tidak -z - pasti tidak menggunakan -z seperti pada OP.
- --tidak ada kompres dapat mempercepat Anda. Ini bisa memiliki dampak terbesar ... pengujian saya adalah 13.000 file, ukuran total 200MB, dan menggunakan rsync 3.1.3. Saya disinkronkan ke partisi berbeda pada drive SSD internal yang sama. Dengan --no-kompres, saya mendapatkan 18 MBps, dan tanpa itu saya mendapatkan 15 MBps. Omong-omong, mendapat 16 MBps. Itu ukuran file rata-rata yang jauh lebih kecil. Juga - Saya tidak dapat menemukan dokumentasi untuk --tidak ada kompres. Saya mempelajarinya dari posting ini di stackexchange.com.
- -W untuk menyalin file secara keseluruhan - selalu gunakan ini jika Anda tidak ingin membandingkan perbedaan; tidak masalah bahwa titik rsync adalah untuk membandingkan perbedaan dan hanya memperbarui perubahan.
- -S untuk menangani file jarang dengan baik - tidak ada salahnya jika Anda tidak memiliki file jarang.
- --exclude-from atau sesuatu yang mirip dengan mengecualikan file yang mungkin tidak Anda perlukan akan mengurangi waktu, tetapi itu tidak akan meningkatkan kecepatan transfer Anda.
- Itu mungkin jika Anda mengirim output ke file seperti ini
rsync -a /source /destination >/somewhere/rsync.out 2>/somewhere/rsync.err
- yang pertama> pada dasarnya mencetak file dengan semua hal yang biasanya Anda lihat, dan 2> mengacu pada pesan kesalahan.
- Terakhir, menjalankan banyak rsync untuk berbagai bagian transfer Anda bisa sangat membantu.
Perintah saya adalah:
rsync -avAXEWSlHh /source /destination --no-compress --info=progress2 --dry-run
Jika semua terlihat baik, saya akan menghapus "--dry-run" dan biarkan saja. A, X, dan E mencakup atribut yang diperluas dan izin yang tidak tercakup oleh -a, l adalah untuk tautan lunak, H adalah untuk tautan keras, dan h adalah untuk dibaca manusia.
Memperbarui direktori yang sudah disinkronkan pada drive USB, atau drive yang sama, atau melalui jaringan, semua akan memerlukan perintah rsync yang berbeda untuk memaksimalkan kecepatan transfer.
Bonus - inilah halaman manual rsync , dan jika Anda ingin menguji kecepatan hard drive Anda, Bonnie ++ adalah pilihan yang baik, dan untuk kecepatan jaringan Anda, coba iperf .
* Posting sudah hampir sepuluh tahun, tetapi mesin pencari pasti menyukainya, dan saya terus melihatnya. Ini pertanyaan yang bagus, dan saya tidak berpikir jawaban teratas untuk "bagaimana mempercepat rsync" seharusnya "menggunakan cp sebagai gantinya."