Thursday 25 April 2013

Perintah rsync pada linux

Rsync adalah tool untuk transfer dan sinkronisasi file atau tree (struktur direktori dan file) secara satu arah, baik transfer lokal (di sistem yang sama) maupun remote (jaringan/internet). Fungsi rsync mirip/identik dengan tool-tool ini: cp, mv, scp, FTP client. Rsync biasanya digabungkan dengan SSH sebagai metode transpor remotenya, walaupun dapat juga disetup untuk menjadi daemon sehingga tidak membutuhkan SSH. Dalam kasus-kasus tertentu rsync juga dapat digunakan menggantikan HTTP client (seperti wget)


sintaks dasarny

[code language="bash"] rsync  -av PATHSUMBER/ PATHTUJUAN/ [/code]

Menghapus berkas di /tujuan/ yang tidak ada di /sumber/ gunakan:

[code language="bash"] rsync -av --delete /PATHSUMBER/ /PATHTUJUAN/ [/code]

Jika penghapusan hanya boleh setelah penyalinan sukses:

[code language="bash"] rsync -av --delete --delete-after /PATHSUMBER/ /PATHTUJUAN/ [/code]



jika ada file yang tidak ingin di copy
[code language="bash"] rsync -av --exclude 'namafile.txt' /PATHSUMBER/ /PATHTUJUAN/ [/code]

Untuk transfer lokal ke lokal

[code language="bash"] rsync -av -P PATHSUMBER PATHTUJUAN [/code]

Untuk transfer lokal ke remote melalui ssh

[code language="bash"] rsync -e ssh -av -P -z PATHSUMBER USER@HOST:PATHTUJUAN [/code]

Untuk transfer remote ke lokal melalui ssh, cukup kebalikan perintah sebelumnya:

[code language="bash"] rsync -e ssh -av -P -z USER@HOST:PATHSUMBER PATHTUJUAN [/code]

opsi lainnya

a: (archive) adalah untuk mensinkronkan segala sesuatu, termasuk file/direktori secara rekursif dan metadata (seperti tanggal, kepemilikan, permission) dan file-file spesial seperti link simbolik
v: (verbose) memperlihatkan ke layar nama-nama file yang sedang ditransfer
z : (zip) membuat rsync mengkompresi data yang ditransfer
P:  selain memperlihatkan ke layar nama-nama file yang sedang ditransfer  juga menampilkan progres/persentasi saat sebuah file sedang ditransfer.
--version : melihat versi rsync

Jika kita menggunakan rsync dalam skrip noninteraktif, bisa jadi output yang dihasilkan terlalu banyak. Maka dalam kasus tersebut kita dapat menghilangkan opsi -v dan -P.

Akhiran garis miring
Keberadaan garis miring di akhir path sumber berarti menghindari pembentukan level direktori tambahan
misalnya
rsync  -av /home/user/tempatnya/ /home/userhasil/backup/
maka file hasil akan tercopy di /home/userhasil/backup/

tapi jika garis miring tidak ditambah diakhir skrip sumber akibatnya terjadi pembuatan direktory
misalnya
rsync  -av /home/user/tempatnya /home/userhasil/backup/
maka akan terbentuk file hasil akan tercopy di /home/userhasil/backup/tempatnya
(terbentuk direktori bernama tempatnya yang berisi file file hasil sinkronisasi)

referensi :
http://librarylinux.wordpress.com/2010/06/16/rsync-tools-backup-data-skala-besar/
http://blog.baihaqi.web.id/?p=464
http://ss64.com/bash/rsync.html

semoga berguna :)

No comments:

blog ini ditujukan pada smua orang yang mempunyai penghargaan tertinggi terhadap sesuatu yang mereka cinta dan sayangi