Perintah rsync Linux mentransfer dan menyinkronkan file atau direktori secara efisien antara mesin lokal, host lain, shell jarak jauh, atau kombinasi dari semuanya. Siapapun yang bekerja dengan sistem berbasis Linux harus menggunakan perintah yang kuat ini untuk meningkatkan produktivitas mereka. Dengan bantuan artikel ini, Anda akan mempelajari semua yang Anda butuhkan untuk mulai menggunakannya.
Menyinkronkan folder atau menyalin file secara manual bisa sangat memakan waktu. Utilitas rsync dapat melakukan sebagian besar pekerjaan untuk Anda sambil menambahkan fitur hebat untuk menghemat waktu. Bahkan jika Anda kehilangan koneksi selama transfer, alat ini akan memulai persis dari titik terakhirnya, setelah koneksi dibuat kembali.
Sintaks Dasar
Sintaks dasar untuk rsync berfungsi sebagai berikut:
rsync [optional modifiers] [SRC] [DEST]
Ada beberapa cara berbeda untuk menggunakan Linux rsync. Dalam contoh ini, [pengubah opsional] menunjukkan tindakan yang akan diambil, [SRC] adalah direktori sumber, dan [DEST] adalah direktori atau mesin tujuan.
Sintaks Dasar untuk Remote Shell
Saat menggunakan shell jarak jauh, seperti SSH atau RSH, sintaks rsync akan sedikit berbeda.
Untuk mengakses shell jarak jauh (TARIK ) gunakan perintah rsync:
rsync [optional modifiers] [USER@]HOST:SRC [DEST]
Untuk mengakses shell jarak jauh (PUSH ) gunakan perintah rsync:
rsync [optional modifiers] SRC [USER@]HOST:[DEST]
Cara Memeriksa Versi Rsync
Sebelum kita memeriksa rsync, kita harus login ke VPS yang akan kita gunakan. Tutorial bermanfaat ini akan menunjukkan kepada Anda bagaimana melakukannya di mesin Windows menggunakan Putty SSH. Jika Anda menggunakan komputer MacOS atau Linux, gunakan terminal sebagai gantinya.
Rsync sudah diinstal sebelumnya dengan banyak distribusi Linux. Untuk memeriksa apakah rsync diinstal pada mesin Anda, jalankan perintah berikut:
rsync -version
Pada distribusi Ubuntu kami, perintah tersebut menghasilkan output berikut:
rsync version 3.1.3 protocol version 31
Itu berarti rsync versi 3.1.3 sudah ada di mesin kami. Sederhana, bukan?
Cara Memasang Rsync
Jika mesin Anda tidak memiliki pra-instal rsync, Anda dapat melakukannya secara manual hanya dalam satu menit. Di Debian distribusi berbasis seperti Ubuntu, Anda dapat melakukannya dengan menggunakan perintah berikut:
apt-get install rsync
Pada distribusi berbasis rpm seperti Fedora dan CentOS gunakan perintah berikut:
yum install rsync
Di MacOS gunakan perintah berikut:
brew install rsync
Itu dia! Linux rsync siap untuk menyinkronkan data, melakukan transfer file, dan menghapus file. Anda dapat memeriksa apakah instalasi berhasil menggunakan perintah yang disebutkan sebelumnya:
rsync -version
Cara Menggunakan Perintah Rsync
Untuk tutorial ini, kita akan membuat dua direktori di desktop Linux kita dengan nama asli dan duplikat . Direktori asli memiliki tiga file di dalamnya sementara duplikatnya kosong. Sekarang mari kita lihat bagaimana rsync akan menciptakan cara baru untuk meningkatkan produktivitas.
Untuk membuat dua direktori pengujian gunakan perintah berikut:
cd ~ mkdir original mkdir duplicate touch original/file{1..3}
Jika Anda ingin memeriksa ulang, gunakan ls perintah untuk membuat daftar semua file di dalam direktori:
ls original
Outputnya akan terlihat seperti ini:
file1 file2 file3
Jika Anda menggunakan ls perintah dengan duplikat direktori, pandangan harus kosong.
Sekarang direktori sudah diatur, mari kita coba beberapa perintah lagi.
Perintah berikut akan menyalin atau menyinkronkan semua file dalam asli direktori ke dalam duplikat direktori.
rsync original/* duplicate/
* menginstruksikan perintah rsync untuk menyinkronkan semua yang ada di direktori asli ke duplikat.
Jika kita menempatkan gambar atau file baru di folder asli dan menjalankan kembali perintah yang sama, hanya gambar baru yang akan disalin ke tujuan.
Fitur ini berguna saat Anda menyalin file melalui jaringan dengan bandwidth terbatas.
Perintah Paling Umum Rsync
Berikut adalah daftar perintah yang paling umum digunakan dengan rsync:
Ini mengaktifkan mode arsip.
-a, --archive
Ini memberi Anda output visual yang menunjukkan kemajuan proses.
-v, --verbose
Ini menghasilkan dalam format yang dapat dibaca manusia.
-h, --human-readable format
Ini mengompresi data file selama transfer.
-z, --compress
Ini untuk menyalin data secara rekursif
-r
Cara Menggunakan Perintah Rsync dengan Subdirektori
Ingatlah bahwa perintah di atas hanya akan menyalin file dari asli direktori utama folder, dan bukan subdirektori mana pun.
Jika Anda ingin menyalin subdirektori juga, Anda perlu menggunakan perintah ini:
rsync -r original/ duplicate/
-r (–rekursif ) opsi memberitahu rsync untuk menyalin semuanya, termasuk subdirektori dan file dari folder asli kami.
/ pengubah digunakan setelah asli menginstruksikan rsync untuk menyalin isi direktori asli ke folder duplikat.
Cara Menyinkronkan File
Jika Anda ingin menyinkronkan file, artinya menyalin file yang ada di folder tujuan, tetapi tidak asli ke folder aslinya, gunakan perintah berikut:
rsync -r original duplicate/
Dengan perintah ini, kita dapat yakin bahwa folder asli dan duplikat akan berisi semua file yang sama.
Cara Menggabungkan Perintah Rsync
Opsi berguna lainnya adalah -a (–arsip) karena dapat digabungkan dengan banyak perintah lainnya. Artinya, aplikasi ini tidak hanya menyalin file, tetapi juga menyalin izin, waktu modifikasi, dan tanggal lainnya.
Menambahkan -a opsi dengan -v akan terlihat seperti ini:
rsync -av --dry-run original/ duplicate/
Jangan khawatir, itu hanya terlihat rumit. Mari kita uraikan.
Perintah ini hanya akan menampilkan file yang akan disalin tanpa membuat perubahan yang sebenarnya. Dengan perintah ini, Anda bisa mendapatkan daftar file yang akan disalin.
Jika semua file yang ingin Anda salin, jalankan kembali perintah tanpa —dry-run .
—dry-run (atau -n ) membuat rsync melakukan uji coba yang tidak membuat perubahan apa pun.
Opsi Lain Untuk Perintah Rysnc
Saat menambahkan -a opsi ke -v opsi, membuat -av dalam perintah kami, meningkatkan verbositas. Berikut tampilannya:
rsync -av original/ duplicate/
Jika Anda ingin menyinkronkan dua folder dan menghapus item di folder duplikat, yang tidak ada di folder asli, tambahkan –hapus pilihan, seperti ini:
rsync -av --delete original/ duplicate/
Anda juga dapat mengecualikan file atau sub-direktori tertentu saat Anda menyinkronkan dua folder. Lakukan ini dengan menambahkan -exclude= . Jika Anda perlu menentukan lebih dari satu file, pisahkan dengan koma.
rsync -av --exclude=file1,file2 original/ duplicate/
Anda juga dapat menyertakan file atau sub-direktori tertentu saat Anda menyinkronkan. Lakukan ini dengan menambahkan -include= . Anda juga dapat menggunakan ini dengan opsi -exclude=. Contoh di bawah ini akan menyertakan file yang diawali dengan huruf L dan kecualikan semua file lainnya:
rsync -av --include=L* --exclude=* original/ duplicate/
Menggunakan Rsync, Anda juga dapat menentukan ukuran file yang dapat disinkronkan. Untuk melakukannya, gunakan –max-size pilihan:
rsync -av --max-size=10k original/ duplicate/
Menggunakan opsi -z (–kompres) akan mengkonsolidasikan file yang sedang ditransfer melalui jaringan. Sebagai bonus, mari kita lihat cara melakukan transfer dari server sumber ke server lain. Perintahnya akan terlihat seperti ini:
rsync -az ~/Desktop/Original [email protected]:~/tmp/
Seperti yang disebutkan sebelumnya -z kompres file, -a , atau hanya menambahkan a ke -z, akan memastikan semua izin juga disalin.
~/Desktop/Asli adalah sumbernya. Ini adalah direktori lokal – yang ada di mesin yang Anda masuki, dan terakhir, [email protected]:~/tmp/ menunjukkan tujuan. [email protected] adalah alamat server jarak jauh tujuan, sedangkan :~/tmp/ menunjuk ke folder tertentu di mesin itu.
Cara Menambahkan Bilah Kemajuan
Selain perintah di atas, Anda dapat menambahkan -P yang akan menggabungkan opsi –progress dan –sebagian . Ini akan memberi Anda bilah kemajuan untuk file yang sedang ditransfer dan juga memungkinkan Anda untuk melanjutkan transfer file yang terputus.
rsync -azP [SRC] [DEST]
Outputnya akan terlihat seperti ini:
sending incremental file list ./ file1 0 100% 0.00kB/s 0:00:00 (xfer#1, to-check=1/3) file2 0 100% 0.00kB/s 0:00:00 (xfer#2, to-check=2/3) file3 0 100% 0.00kB/s 0:00:00 (xfer#3, to-check=3/3)
Kemudian, jika kita menjalankan perintah lagi, kita akan melihat output yang lebih pendek. Ini karena tidak ada perubahan baru yang dilakukan. Outputnya akan terlihat seperti ini:
sending incremental file list send 26 bytes received 5 bytes 1200.00 bytes/sec total size is 0 speedup is 0.00
Jika Anda hanya ingin mentransfer file tertentu, Anda dapat menentukan dengan perintah berikut:
touch original/file{1..5} rsync -azP [SRC] [DEST]
Ini akan memberikan output yang mirip dengan perintah sebelumnya, tetapi hanya dengan file yang ditentukan di antara kurung kurawal.
Cara membuat Cadangan Rsync
Perintah penting lainnya adalah membuat cadangan Rsync. Lakukan ini dengan menggabungkan –cadangan dengan –dir perintah sehingga Anda dapat menentukan di mana file cadangan akan disimpan.
rsync -a --delete --backup --backup-dir=/path/to/backup /path/to/SRC [DEST]
Kesimpulan
Kami hanya membahas puncak gunung es ketika datang ke perintah Rsync. Linux Rsync adalah utilitas yang sangat kuat yang harus diketahui oleh setiap admin server atau pengembang Linux. Kami membahas semuanya untuk membantu Anda memulai, mulai dari instalasi hingga perintah dasar. Jika Anda ingin mengetahui fitur yang lebih canggih – periksa dokumentasi resmi.
Bersiaplah untuk meningkatkan produktivitas Anda. Semoga berhasil dengan proyek Anda.