Ubuntu 14.04 : Sync data with rsync command line Pada artikel sebelumnya, telah dijelaskan pengertian dan kelebihan rsync dan disini akan dijelaskan mengenai option yang biasa digunakan dalam rsync : Default command line for rsync: # rsync options source destination Beberapa rsync command yang sering digunakan Rsync files dan folder local Perintah berikut ini akan melakukan sinkronisasi file pada mesin lokal dari satu lokasi ke lokasi lain. Di sini, di contoh ini, nama file data.tar perlu disalin atau disinkronisasikan ke /home/backup / folder. ribhy@systemblack:~/test$ rsync -avh data/data.tgz home/backup sending incremental file list data.tgzsent 41.31M bytes received 31 bytes 27.54M bytes/sec total size is 41.30M speedup is 1.00 Dalam contoh di atas, Anda dapat melihat bahwa jika tujuan tidak sudah ada rsync akan membuat direktori secara otomatis untuk tujuan. Rsync files dan folder ke server Perintah ini akan melakukan sinkronisasi direktori dari mesin lokal ke mesin remote. Sebagai contoh: Ada folder di komputer Anda “data” lokal yang berisi beberapa paket tgz dan Anda ingin bahwa konten direktori lokal mengirim ke server jauh, Anda dapat menggunakan perintah berikut. ribhy@systemblack:~/test$rsync -avh data/data.tgz [email protected]:/home [email protected]'s password: sending incremental file list data.tgz sent 41.31M bytes received 31 bytes 1.35M bytes/sec total size is 41.30M speedup is 1.00 ribhy@systemblack:~/test$ Rsync files dan folder via ssh Untuk mengunakan protocol lain contoh mengunakan ssh dan rsync mengunakan option “-e”. Berikut contoh dalam pengunaan rsync -e: ribhy@systemblack:~/test$ rsync -avhe ssh data/data.tgz [email protected]:/home [email protected]'s password: sending incremental file list data.tgzsent 41.31M bytes received 31 bytes 1.35M bytes/sec total size is 41.30M speedup is 1.00 ribhy@systemblack:~/test$ Rsync dengan mengunakan progress pengiriman Sering kita tidak mengetahui secara detail dan jelas proses pengiriman files / folder dalam rsync. Untuk mengaktifkan proses tersebut hanya memerlukan option –progress, contoh adalah:ribhy@systemblack:~/test$ pengunaannya rsync -avhe ssh data/data.tgz [email protected]:/home [email protected]'s password: sending incremental file list data.tgz sent 41.31M bytes received 31 bytes 1.35M bytes/sec total size is 41.30M speedup is 1.00 ribhy@systemblack:~/test$ Rsync dengan include dan excludeKedua opsi ini memungkinkan kita untuk include dan exclude file dengan menentukan parameter dengan opsi ini membantu kita untuk menentukan file-file atau direktori yang ingin Anda sertakan dalam sinkronisasi dan mengecualikan file dan folder dengan Anda tidak ingin ditransfer. Di sini, di contoh ini, perintah rsync akan mencakup file-file dan direktori hanya yang dimulai dengan ‘d’ dan belum termasuk semua berkas dan direktori.ribhy@systemblack:~/test$ rsync -avhe ssh -include 'c*' --exclude '*' data/ [email protected]:/tmp [email protected]'s password: sending incremental file list cc.tgzsent 41.31M bytes received 31 bytes 1.56M bytes/sec total size is 41.30M speedup is 1.00 ribhy@systemblack:~/test$ Rsync menyamakan ( delete dari source ) yang terdelete Jika sebuah file atau direktori tidak ada pada sumbernya, tapi sudah ada di tempat tujuan, Anda mungkin ingin menghapus file / direktori yang ada di target sementara anda tetap ingin mengunakan rsync. Kita dapat menggunakan option ‘-delete’ untuk menghapus file yang tidak ada di direktori source. Sumber dan target berada dalam direktory sync. ribhy@systemblack:~/test$ rsync -avhe ssh --delete data/ [email protected]:/tmp [email protected]'s password: sending incremental file list ./ deleting aa.tgz sent 68 bytes received 15 bytes 33.20 bytes/sec total size is 41.30M speedup is 497640.45 ribhy@systemblack:~/test$ Rsync dengan maksimal transfer Anda dapat menentukan ukuran Max file yang akan ditransfer atau sync. Anda dapat melakukannya dengan “max-size” pilihan. Di sini, di contoh ini, ukuran file Max adalah 200k, sehingga perintah ini akan mentransfer hanya file yang sama atau lebih kecil dari 200k. ribhy@systemblack:~/test$ rsync -avh --max-size='200k' data/ [email protected]:/tmp [email protected]'s password: sending incremental file list ./ aa.tgz bb.tgz sent 187 bytes received 53 bytes 96.00 bytes/sec total size is 47.35M speedup is 197284.39 ribhy@systemblack:~/test$ Rsync mendelete source setelah transfer Sekarang, misalkan Anda memiliki web server utama dan server backup data, Anda membuat backup harian dan disinkronisasikan dengan server cadangan Anda, sekarang Anda tidak ingin menyimpan bahwa salinan lokal dari cadangan di server web Anda. Jadi, akan Anda menunggu untuk transfer untuk menyelesaikan dan kemudian menghapus mereka file cadangan lokal secara manual? Oh tentu regular tidak. Penghapusan otomatis ini dapat dilakukan menggunakan option ‘-file-remove-source’. dengan ribhy@systemblack:~/test$ ls data/ bb.tgz cc.tgz dd.tgz zz.tgz ribhy@systemblack:~/test$ rsync --remove-source-files zvh data/zz.tgz [email protected]:/tmp [email protected]'s password: zz.tgz sent 63 bytes received 31 bytes 37.60 bytes/sec total size is 0 speedup is 0.00 ribhy@systemblack:~/test$ ls data bb.tgz cc.tgz dd.tgz ribhy@systemblack:~/test$ Rsync dengan menset bandwidth transfer Anda dapat mengatur batas bandwidth saat melakukan transfer data dari satu komputer ke komputer lain dengan bantuan ‘-bwlimit’ option. option ini membantu kita untuk membatasi I / O bandwidth. [ribhy@systemblack]# rsync --bwlimit=100 -avzhe ssh /var/lib/rpm/ [email protected]:/root/tmprpm/ [email protected]'s password: sending incremental file list sent 324 bytes received 12 bytes 61.09 bytes/sec total size is 38.08M speedup is 113347.05