Translate








Senin, 10 Februari 2014

Sinkronisasi File dan Folder dengan rsync di Linux CentOS 6

Rsync merupakan aplikasi yang berfungsi untuk sinkronisasi file atau folder guna berbagai kebutuhan seperti backup file. Rsync bisa berjalan secara lokal dalam mesin yang sama, ataupun dalam server yang berbeda lokasi. Rsync menggunakan protokol remote-update sehingga proses transfer terasa lebih cepat karena yang ditransfer hanyalah file yang mengalami perubahan saja, artinya tidak semua file dicopy kembali. Disini saya akan mencoba membangun Sistem Backup sederhana dengan rsync.


Gambar : Backup File dengan rsync dari server Lokal ke server Remote

Rsync pada single server

Install paket rsync dengan perintah yum untuk memudahkan instalasi.
[root@SRIWIJAYA ~]# yum install rsync


Selanjutnya kita buat direktori untuk menyimpan file backup. Misalnya kita akan menyimpan file backup di direktori /home/backup
[root@SRIWIJAYA ~]# mkdir /home/backup


Sebagai contoh, kita asumsikan dalam server kita memiliki folder dilokasi /home/filedata yang berisi berbagai macam konfigurasi, dan akan kita backup ke direktori /home/backup.
Contoh isi Direktori sumber yang akan dibackup :

[root@SRIWIJAYA ~]# ls filedata/
configacl.txt  configrouter.txt  configssh.txt


Perintah untuk melakukan backup dengan rsync, dan menempatkannya di lokasi /home/backup

[root@SRIWIJAYA ~]# rsync -avz /root/filedata/ /home/backup/

sending incremental file list
./
configacl.txt
configrouter.txt
configssh.txt

sent 275 bytes  received 72 bytes  694.00 bytes/sec
total size is 63  speedup is 0.18


Sekarang, kita periksa pada direktori /home/backup

[root@SRIWIJAYA ~]# ls /home/backup/
configacl.txt  configrouter.txt  configssh.txt


Dari output diatas terlihat bahwa file dari direktori /root/filedata berhasil disalin ke /home/backup.

Rsync dari server local ke server remote

Apabila kita ingin menyimpan file backup di server lain (remote server), kita hanya perlu untuk melakukan sedikit perubahan pada perintah sebelumnya, dan pastikan kita mempunyai akses ke remote server tersebut. Dalam hal ini kita akan menggunakan akun user root. Dari gambar diatas, local server (SRIWIJAYA) memiliki IP 192.168.1.101 dan remote server (PAJAJARAN) memiliki IP 192.168.1.100. Kita akan membackup file dari server SRIWIJAYA, yakni semua file yang berada dalam direktori /root/filedata ke server PAJAJARAN yang akan kita tempatkan pada direktori /home/sriwijaya-backup.

Dari server local (SRIWIJAYA), ketikkan perintah:

[root@SRIWIJAYA ~]# rsync -avz /root/filedata/ root@192.168.1.100:/home/sriwijaya-backup
root@192.168.1.100's password: 
sending incremental file list
created directory /home/sriwijaya-backup
./
configacl.txt
configrouter.txt
configssh.txt

sent 275 bytes  received 72 bytes  40.82 bytes/sec
total size is 63  speedup is 0.18


Perintah diatas akan menyalin file dala direktori /home/filedata ke server PAJAJARAN (IP 192.168.1.100) ke folder /home/sriwijaya-backup. Sebagi catatan, folder “sriwijaya-backup” akan dibuat secara otomatis pada remote server.

Sekarang kita beralih ke server PAJAJARAN untuk melihat hasilnya:

[root@PAJAJARAN ~]# ls /home/sriwijaya-backup/
configacl.txt  configrouter.txt  configssh.txt


Rsync dari server Remote

Nampaknya proses backup/sinkronisasi file secara remote sudah berhasil. Selain cara diatas, kita bisa mengambil file backup dari Remote server (PAJAJARAN), dengan perintah:

[root@PAJAJARAN ~]# rsync -avz root@192.168.1.101:/root/filedata /home/sriwijaya-backup
root@192.168.1.101's password: 
receiving incremental file list
created directory /home/sriwijaya-backup
filedata/
filedata/configacl.txt
filedata/configrouter.txt
filedata/configssh.txt

sent 72 bytes  received 297 bytes  82.00 bytes/sec
total size is 63  speedup is 0.17


Rsync dengan SSH

Untuk lebih meningkatkan keamanan dalam sinkronisasi file, kita bisa menggunakan rsync dengan protocol ssh agar file yang kita transfer akan terenkripsi. Berikut contoh penggunaan perintah rsync dengan ssh:

[root@SRIWIJAYA ~]# rsync -avzhe ssh /root/filedata/ root@192.168.1.100:/home/sriwijaya-backup
root@192.168.1.100's password: 
sending incremental file list
created directory /home/sriwijaya-backup
./
configacl.txt
configrouter.txt
configssh.txt

sent 275 bytes  received 72 bytes  77.11 bytes/sec
total size is 63  speedup is 0.18


Pada perintah diatas, ada penambahan parameter, yakni –h (human readable) dan –e (untuk menentukan protocol). Penggunaan rsync ini cukup luas, dan dalam tutorial ini saya hanya menunjukkan cara penggunaan sederhana. Rsync sangat cocok untuk digunakan dengan crontab, dimana kita bisa membuat jadwal untuk melakukan backup file secara otomatis pada waktu yang kita tentukan. Untuk topik tersebut sudah saya buat di Tutorial lanjutan dari rsync dengan cron.

Like the Post? Do share with your Friends.

1 komentar:

IconIconIconFollow Me on Pinterest

Blogger news

Blogroll

What's Hot