
Ini dapat digunakan pada sistem Windows tetapi hanya tersedia melalui berbagai port (seperti Cygwin), sehingga dalam hal ini kita akan berbicara tentang pengaturannya di Linux. Pertama, kita perlu menginstal / memperbarui klien rsync. Pada distribusi Red Hat, perintahnya adalah "yum install rsync" dan pada Debian adalah "sudo apt-get install rsync."


Menggunakan rsync untuk pencadangan lokal
Pada bagian pertama dari tutorial ini, kami akan membuat cadangan file dari Directory1 ke Directory2. Kedua direktori ini berada di hard drive yang sama, tetapi ini akan bekerja persis sama jika direktori ada pada dua drive yang berbeda. Ada beberapa cara berbeda yang bisa kita dekati ini, tergantung pada jenis backup yang ingin Anda konfigurasikan. Untuk sebagian besar tujuan, baris kode berikut ini akan mencukupi:
$ rsync -av --delete /Directory1/ /Directory2/
Kode di atas akan menyinkronkan isi Directory1 ke Directory2, dan tidak meninggalkan perbedaan di antara keduanya. Jika rsync menemukan bahwa Directory2 memiliki file yang Directory1 tidak, itu akan menghapusnya. Jika rsync menemukan file yang telah diubah, dibuat, atau dihapus di Directory1, itu akan mencerminkan perubahan yang sama ke Directory2.
Ada banyak switch yang berbeda yang dapat Anda gunakan untuk rsync untuk mempersonalisasikannya ke kebutuhan spesifik Anda. Berikut adalah apa yang dimaksud oleh kode rsync untuk dilakukan dengan backup:
1. -a = rekursif (rekursif ke dalam direktori), tautan (salin symlink sebagai symlink), perms (pertahankan izin), waktu (pertahankan waktu modifikasi), kelompok (pertahankan grup), pemilik (pertahankan pemilik), pertahankan file perangkat, dan simpan file khusus. 2. -v = verbose. Alasan saya pikir verbose penting adalah agar Anda dapat melihat dengan tepat apa rsync yang dicadangkan. Pikirkan tentang ini: Bagaimana jika hard drive Anda menjadi buruk, dan mulai menghapus file tanpa sepengetahuan Anda, maka Anda menjalankan skrip rsync Anda dan mendorong perubahan tersebut ke cadangan Anda, dengan demikian menghapus semua contoh file yang tidak Anda inginkan menyingkirkan? 3. –delete = Ini memberitahu rsync untuk menghapus file apa saja yang ada di Directory2 yang tidak ada di Directory1. Jika Anda memilih untuk menggunakan opsi ini, saya sarankan juga menggunakan opsi verbose, untuk alasan yang disebutkan di atas.
Dengan menggunakan skrip di atas, inilah keluaran yang dihasilkan dengan menggunakan rsync untuk mencadangkan Directory1 ke Directory2. Perhatikan bahwa tanpa tombol verbose, Anda tidak akan menerima informasi mendetail seperti itu.

Kita akan membahas beberapa tombol yang berguna pada akhir tutorial ini, tetapi ingatlah bahwa untuk melihat daftar lengkap Anda dapat mengetikkan “man rsync” dan melihat daftar lengkap switch yang akan digunakan.
Itu tentang menutupinya sejauh backup lokal yang bersangkutan. Seperti yang Anda ketahui, rsync sangat mudah digunakan. Ia menjadi sedikit lebih kompleks ketika menggunakannya untuk menyinkronkan data dengan host eksternal melalui Internet, tetapi kami akan menunjukkan kepada Anda cara yang sederhana, cepat, dan aman untuk melakukannya.
Menggunakan rsync untuk cadangan eksternal
rsync dapat dikonfigurasi dengan beberapa cara berbeda untuk backup eksternal, tetapi kita akan membahas metode paling praktis (juga paling mudah dan paling aman) dari tunneling rsync melalui SSH. Sebagian besar server dan bahkan banyak klien sudah memiliki SSH, dan itu dapat digunakan untuk cadangan rsync Anda. Kami akan menunjukkan kepada Anda proses untuk mendapatkan satu mesin Linux untuk cadangan ke yang lain di jaringan lokal. Prosesnya akan sama persis jika satu host keluar di internet di suatu tempat, cukup perhatikan bahwa port 22 (atau port apa pun yang Anda konfigurasikan SSH), perlu diteruskan pada peralatan jaringan apa pun di sisi server.
Di server (komputer yang akan menerima backup), pastikan SSH dan rsync diinstal.
# yum -y install ssh rsync
# sudo apt-get install ssh rsync
Selain menginstal SSH dan rsync pada server, semua yang benar-benar perlu dilakukan adalah mengatur repositori di server di mana Anda ingin file di-backup, dan memastikan bahwa SSH terkunci. Pastikan pengguna yang Anda rencanakan untuk menggunakan memiliki kata sandi yang rumit, dan mungkin juga merupakan ide yang baik untuk mengganti port yang SSH dengarkan (defaultnya adalah 22).
Kami akan menjalankan perintah yang sama yang kami lakukan untuk menggunakan rsync pada komputer lokal, tetapi menyertakan tambahan yang diperlukan untuk tunneling rsync melalui SSH ke server di jaringan lokal saya. Untuk pengguna "geek" yang menghubungkan ke "192.168.235.137" dan menggunakan switch yang sama seperti di atas (-av –delete), kita akan menjalankan yang berikut:
$ rsync -av –delete -e ssh /Directory1/ [email protected]:/Directory2/
Jika Anda memiliki SSH mendengarkan pada beberapa port selain 22, Anda harus menentukan nomor port, seperti dalam contoh ini di mana saya menggunakan port 12345:
$ rsync -av –delete -e 'ssh -p 12345' /Directory1/ [email protected]:/Directory2/

Mengotomatiskan rsync backup
Cron dapat digunakan di Linux untuk mengotomatisasi eksekusi perintah, seperti rsync. Dengan menggunakan Cron, kita dapat memiliki sistem Linux kita menjalankan pencadangan setiap malam, atau seberapa sering Anda ingin mereka menjalankannya.
Untuk mengedit file tabel cron untuk pengguna yang Anda masuki, jalankan:
$ crontab -e
Anda harus mengenal vi untuk mengedit file ini. Ketik "I" untuk menyisipkan, dan kemudian mulai mengedit file tabel cron.
Cron menggunakan sintaks berikut: menit dari jam, jam hari, hari bulan, bulan dalam setahun, hari dalam seminggu, perintah.
Ini bisa sedikit membingungkan pada awalnya, jadi izinkan saya memberi Anda sebuah contoh. Perintah berikut ini akan menjalankan perintah rsync setiap malam jam 10 malam:
0 22 * * * rsync -av --delete /Directory1/ /Directory2/
"0" pertama menentukan menit dari jam, dan "22" menetapkan jam 10 malam. Karena kita ingin perintah ini dijalankan setiap hari, kita akan meninggalkan sisa kolom dengan tanda bintang dan kemudian menempel perintah rsync.
Setelah Anda selesai mengkonfigurasi Cron, tekan escape, dan kemudian ketik ": wq" (tanpa tanda kutip) dan tekan enter. Ini akan menyimpan perubahan Anda di vi.
Cron bisa mendapatkan lebih banyak dari ini, tetapi untuk melanjutkan tentang itu akan berada di luar lingkup tutorial ini. Kebanyakan orang hanya menginginkan cadangan mingguan atau harian sederhana, dan apa yang telah kami tunjukkan dapat Anda lakukan dengan mudah. Untuk info lebih lanjut tentang Cron, silakan lihat halaman manual.
Fitur bermanfaat lainnya
Hal lain yang bermanfaat yang dapat Anda lakukan adalah meletakkan backup Anda ke dalam file zip. Anda perlu menentukan di mana Anda ingin file zip ditempatkan, dan kemudian rsync direktori itu ke direktori backup Anda. Sebagai contoh:
$ zip /ZippedFiles/archive.zip /Directory1/ && rsync -av --delete /ZippedFiles/ /Directory2/

Ada beberapa cara berbeda yang dapat Anda lakukan untuk mengenkripsi cadangan rsync Anda. Metode termudah adalah menginstal enkripsi pada hard drive itu sendiri (yang membuat file Anda di-backup). Cara lain adalah dengan mengenkripsi file Anda sebelum mengirimnya ke server jauh (atau hard drive lain, apa pun yang Anda back up). Kami akan membahas metode ini di artikel selanjutnya.
Apa pun opsi dan fitur yang Anda pilih, rsync terbukti menjadi salah satu alat cadangan paling efisien dan serbaguna hingga saat ini, dan bahkan skrip rsync sederhana dapat menyelamatkan Anda dari kehilangan data.