Rsync Commad di Linux dengan 12 contoh praktis
- 3783
- 510
- Hector Kuhic
RSYNC (Remote Sync) adalah alat baris perintah untuk menyinkronkan file antara dua sistem berbasis UNIX. RSYNC juga dapat digunakan pada sistem yang sama untuk menyinkronkan file antara dua direktori. RSYNC menggunakan algoritma Delta-Transfer untuk hanya mengirim perbedaan antara file sumber dan file yang ada ke tujuan. RSYNC menggunakan lebih sedikit data di jaringan untuk menghemat bandwidth.
RSYNC biasanya digunakan untuk mendukung sejumlah besar data atau mentransfer data antara dua komputer. RSYNC mendukung sinkronisasi file lokal-ke-lokal, lokal-ke-redik. Namun, sinkronisasi file jarak jauh-ke-remote tidak didukung.
Dalam posting ini, kita akan melihat beberapa kegunaan umum untuk alat baris perintah RSYNC.
Sintaksis
rsync [opsi…] sumber… [tujuan]
- Di Sini SUMBER dapat menjadi direktori lokal seperti "/opt/cadangan" atau lokasi jarak jauh seperti "[email dilindungi]:/opt/remotedir/"
- Juga TUJUAN dapat disebut sebagai direktori lokal atau direktori sistem jarak jauh
- Sumber dan tujuan dapat merujuk ke direktori lokal.
- Hanya satu sumber atau tujuan yang bisa menjadi remote. Anda tidak dapat menggunakan keduanya sebagai lokasi terpencil.
Opsi perintah rsync
RSYNC menawarkan sejumlah besar opsi berguna yang mengontrol setiap aspek perilakunya dan membuatnya lebih fleksibel untuk menyinkronkan file. Di bawah ini adalah daftar beberapa opsi perintah rsync yang sering digunakan:
-V, -VV -VVV, --Verbose
- Opsi ini digunakan untuk log verbose pada output standar. Rsync default berjalan diam -diam. Semakin tinggi jumlah "V" meningkatkan level logging.-A, --Tarchive
- Adalah opsi yang paling umum digunakan dengan perintah rsync. Mode arsip setara dengan opsi-rlptgod
. Pada dasarnya, ini mencakup semua opsi yang diperlukan seperti, secara rekursif, melestarikan izin file, tautan simbolik, kepemilikan file, dan cap waktu.-Z, - -Compress
- Gunakan opsi ini untuk mentransfer data dalam format terkompresi. Mana yang berguna untuk menyimpan bandwidth.-H,-yang dapat dibaca manusia
- Gunakan opsi ini untuk mencetak semua output dalam format yang dapat dibaca manusia.--menghapus
- Gunakan opsi ini hanya jika Anda perlu menghapus file di tujuan, yang tidak ada di sumber.--mengecualikan = pola
- Kecualikan file dari RSYNC yang cocok dengan pola yang diberikan.rsync -exclude '*.jpg 'src/ dest/
--termasuk = pola
- Sertakan file dalam RSYNC yang cocok dengan pola yang diberikan.rsync -termasuk '*.jpg ' -termasuk'*.txt ' -exclude'*'src/ dest/
Contoh RSYNC
Berikut adalah 12 contoh praktis dari perintah rsync dalam sistem unix/linux.
- Salin/Sinkronisasi File dan Direktori Lokal-ke-Lokal
Rsync memungkinkan sinkronisasi file antar direktori pada sistem lokal. Misalnya, saya memiliki beberapa file cadangan di mesin lokal saya di bawah /mnt/cadangan direktori. Saya ingin menyalin/menyinkronkan semua file ke drive USB yang dipasang /mnt/disk1. Gunakan perintah berikut untuk menyinkronkan semua file dan direktori dari /opt/cadangan to /mnt /disk1.
Salin/Sinkronisasi File dan Direktori antara Dua Direktori Lokalrsync -avhz/opt/backup/mnt/disk1/
Mengirim Daftar File tambahan Cadangan/ Cadangan/ Tecadmin.22mar2022.SQL Backup/Tecadmin.22mar2022.ter.GZ Backup/Tecadmin.23mar2022.SQL Backup/Tecadmin.23mar2022.ter.GZ dikirim 1.09g byte menerima 96 byte 23.39m byte/detik ukuran total adalah 1.Speedup 47g adalah 1.35 - Salin/Sinkronisasi File dan Direktori Lokal-ke-Pidana
Menggunakan RSYNC, kami dapat dengan cepat menyalin/menyinkronkan file dari sistem lokal ke jarak jauh. Misalnya, saya perlu mentransfer situs web ke server baru. Ini membutuhkan konten situs web untuk menjadi salinan sistem jarak jauh. Gunakan perintah di bawah ini untuk menyalin semua file dari lokal /var/www/html Direktori ke Remote (192.168.1.100) Direktori Sistem/Var/WWW/HTML.
rsync -avhz/var/www/html [email dilindungi]:/var/www/html/
Perintah di atas bermanfaat untuk administrator sistem, yang menyalin file antara dua sistem secara teratur.
- Salin/Sinkronisasi File dan Direktori Remote-to-Local
Perintah rsync juga memungkinkan sumber sebagai direktori jarak jauh, tetapi kemudian tujuan harus lokal. Gunakan direktori sumber dari host jarak jauh dan tujuan harus menjadi direktori lokal. Misalnya, saya perlu menyalin semua file cadangan yang disimpan di bawah /cadangan Direktori di Remote ke Direktori Lokal /Opt /Backups.
rsync -avhz [email dilindungi]:/cadangan/opt/cadangan
- Menggunakan rsync melalui ssh
RSYNC terhubung ke sistem jarak jauh menggunakan daemon rsync langsung melalui TCP. Kami dapat menginstruksikan RSYNC untuk menggunakan Secure Shell (SSH) untuk menghubungkan sistem jarak jauh daripada membuat koneksi TCP.
Menggunakan
-e
opsi untuk menentukan shell jarak jauh. Perintah di bawah ini akan menggunakan SSH sebagai shell jarak jauh:rsync -avhz -e ssh/src [email dilindungi]:/dest/
Jika server SSH di tujuan berjalan pada port non-standar, gunakan tutorial ini untuk menghubungkan RSYNC melalui port non-standar.
- Abaikan file dan direktori sudah ada di tujuan
Gunakan perintah rsync dengan
--Abaikan yang ada
opsi untuk mengabaikan semua file, itu sudah ada di tujuan. Misalnya, Anda ingin menjadwalkan skrip cadangan untuk menyalin semua file ke disk cadangan setiap hari. Dalam hal ini, Anda tidak ingin menyalin semua file lagi dan lagi. Opsi ini akan menyalin file -file tersebut, yang tidak tersedia di tujuan.rsync -avhz --ignore -existing /opt /backups /mnt /disk1
- Perbarui file hanya jika sumbernya lebih baru
Menggunakan
--memperbarui
Opsi untuk memperbarui file pada remote hanya jika ada versi yang lebih baru adalah lokal. RSYNC akan membuat file di tujuan jika tidak ada. Juga, file pembaruan di tujuan stempel waktu lokal lebih baru dari file sistem jarak jauh.rsync -update -avhz/opt/backup/mnt/disk1/
- Hapus file dari sumber setelah sinkronisasi
Menggunakan
--Lepaskan file sumber
opsi untuk menghapus file dari sumber setelah transfer yang berhasil ke tujuan. Misalnya, Anda perlu menjadwalkan cadangan file log ke sistem jarak jauh. Juga, ingin remote mencatat file dari sistem lokal setelah berhasil disalin ke remote. Ini akan membantu mengklaim ruang disk.rsync--remove-source-files -avhz/var/log [email dilindungi]:/cadangan/log/
- Kecualikan file atau direktori tertentu dengan RSYNC
Anda dapat menentukan file atau pola dengan
--mengecualikan = pola
opsi untuk mengecualikan dari RSYNC.rsync -avh -exclude '*.zip ' -exclude'*.log ' /src [email dilindungi]: /dest
- Sertakan file spesifik dengan rsync
RSYNC default mencakup semua file di bawah pohon direktori sumber. Sekarang, Anda hanya perlu memasukkan file spesifik untuk disinkronkan ke tujuan.
Di sini Anda dapat menentukan
--termasuk = pola
untuk memasukkan file tertentu dan mengecualikan semua file dengan*
.rsync -avhz -meng.jpg ' -termasuk'*.txt ' -exclude'*' /src [email dilindungi]: /dest
- Menampilkan kemajuan dengan rsync
Menggunakan
--kemajuan
Opsi untuk menampilkan kemajuan selama transfer file antara sumber dan tujuan dengan perintah rsync.rsync -avh --progress /src [email dilindungi]: /dest
- Izin file chnage dengan rsync
Anda dapat menginstruksikan RSYNC untuk mengubah pemilik file dan pemilik grup di tujuan. Gunakan opsi
--chown = pengguna: grup
dengan rsync untuk mengubah izin file.rsync -avh --chown = user: grup /src [email dilindungi]: /dest
Demikian pula, Anda dapat menggunakan -chmod = chmod Opsi untuk mengubah izin file atau direktori di tujuan.
rsync -avh --chmod = 755 /src [email dilindungi]: /dest
- Runnc run kering saja
Menggunakan
--Dry-run
Opsi untuk mengeksekusi run kering saja. Ini akan menunjukkan kepada Anda hasil yang sama sebagai perintah asli tetapi tidak ada yang akan memperbarui di tujuan. Pada dasarnya, kita dapat menggunakan ini untuk memeriksa, apa yang akan diperbarui RSYNC sebelum benar -benar menjalankannya.rsync -avh --dry -run /src [email dilindungi]: /dest
Kesimpulan
Rsync adalah utilitas yang bagus untuk mentransfer data dalam jumlah besar antara dua mesin. Anda juga dapat menggunakan RSYNC untuk mendukung seluruh sistem di lokasi cadangan jarak jauh di artikel ini. Anda telah mempelajari beberapa contoh perintah rsync praktis dalam artikel ini yang bagus untuk tugas sehari -hari.
- « Cara Menginstal Android Studio di Ubuntu & Linuxmint melalui PPA
- Cara mengkonfigurasi penjara chroot di vsftpd »