GNU/Linux >> Belajar Linux >  >> Linux

Menggunakan rsync untuk Menyinkronkan File

Menggunakan rsync untuk menyinkronkan file

Tujuan dari artikel ini adalah untuk memberikan pemahaman tentang penggunaan rsync alat.

Rsync adalah singkatan dari "sinkronisasi jarak jauh" dan ini adalah alat yang efisien untuk menyalin dan menyinkronkan file atau direktori secara lokal atau jarak jauh. Efisiensi dicapai dengan hanya memindahkan bagian-bagian file yang telah diubah, alih-alih menyalin semuanya lagi.

Penggunaan

Sintaks

rsync sintaksnya sangat sederhana:

rsync [OPTIONS] SOURCE DESTINATION

Opsi

Berikut ini adalah beberapa opsi yang paling berguna untuk ditambahkan ke rsync perintah:

  • -v atau --verbose :bendera verbose akan menampilkan informasi tentang kemajuan tugas.
  • -a atau --archive :sama dengan -rlptgoD. Bendera arsip menyetel opsi paling umum alih-alih menyetelnya satu per satu.

Berikut ini adalah opsi yang disetel dengan -a yang juga bisa diatur satu per satu:

  • -r atau --recursive :berulang ke dalam direktori. Harus digunakan saat Anda perlu menyalin semua konten di dalam direktori.
  • -l atau --links :menyalin symlink sebagai symlink, tidak menyalin file yang ditunjuk untuk menghindari loopback ke direktori lain.
  • -p atau --perms :mempertahankan izin file.
  • -t atau --times :mempertahankan stempel waktu modifikasi asli.
  • -g atau --group :mempertahankan kepemilikan grup file.
  • -o atau --owner :menjaga pemilik file.
  • -D :menyimpan file perangkat dan file khusus. Anda dapat menggunakan opsi --devices dan --specials untuk mencapai ini.

Beberapa opsi lain yang dapat digunakan adalah:

  • -progress :menampilkan status kemajuan per file.
  • --max-size=SIZE :menghindari mentransfer file yang lebih besar dari ukuran yang ditentukan.
  • --min-size=SIZE :menghindari mentransfer file yang lebih kecil dari ukuran yang ditentukan.
Jalur sumber dan tujuan

Penting untuk mempertimbangkan bagaimana jalur sumber dan tujuan ditentukan karena garis miring dapat mengubah perilaku.

Misalnya, untuk menyalin semua yang ada di dalam direktori yang disebut /home ke yang lain yang disebut /new/destination/ rsync yang benar sintaksnya adalah:

rsync -a /home/ /new/destination

Untuk menyalin direktori sehingga folder baru bernama home juga dibuat di direktori tujuan sintaksnya adalah:

rsync -a /home /new/destination

Perhatikan bahwa satu garis miring setelah /home akan mengubah hasil akhirnya.

Menggunakan rsync dengan host jarak jauh

Saat memiliki akses SSH ke host jarak jauh, Anda dapat menggunakan rsync dengan sintaks yang sangat mirip. Untuk menyalin konten dari /home direktori ke /home/new direktori di host yang disebut REMOTE_HOST dorongan operasi diperlukan. Sintaksnya adalah:

rsync -a /home USER@REMOTE_HOST:/home/new

Dimungkinkan untuk mengambil file dari host jarak jauh ke mesin lokal Anda menggunakan rsync dengan tarik operasi. Sintaksnya mirip dengan yang disebutkan di atas tetapi sekarang host jarak jauh adalah sumbernya:

rsync -a USER@REMOTE_HOST:/home/new /home

Kesimpulan

Menggunakan rsync alat adalah cara yang andal dan efisien untuk menyinkronkan file antara direktori atau host. Perintah salin tradisional tidak akan mempertahankan semua properti file dan akan memakan waktu lebih lama karena menyalin semuanya.

Dengan opsi yang disebutkan dalam artikel ini, dimungkinkan untuk menentukan properti yang juga harus disalin dan rsync algoritme akan mengurangi waktu tugas dengan hanya menyalin perbedaan antara sumber dan tujuan.

  • Menyalin file dengan SCP dan Rsync
  • Cadangkan file Anda dengan rsync

Linux
  1. Cara Mengirim dan Mengunduh File Menggunakan Rsync

  2. rsync hanya menyalin jenis file tertentu menggunakan opsi sertakan

  3. Linux setara dengan robocopy?

  1. Cadangkan file Anda dengan rsync

  2. rsync N file terbaru dalam direktori

  3. rsync menggunakan regex untuk menyertakan hanya beberapa file

  1. 6 Contoh rsync untuk Mengecualikan Banyak File dan Direktori menggunakan pengecualian-dari

  2. Cara menyalin direktori secara rekursif menggunakan rsync sambil mengecualikan file tertentu

  3. cp -r tanpa file tersembunyi