Cara Menggunakan Rsync Linux Command untuk Sinkronisasi File

Apa Itu Rsync?
Seperti yang telah disebutkan di atas, Rsync adalah fitur pada sistem operasi berbasis Linux (seperti Ubuntu, Fedora, dan Debian) yang berfungsi untuk menyinkronkan file serta folder.

Rsync memungkinkan Anda untuk menyalin file dari satu komputer lokal ke remote server dan sebaliknya melalui koneksi SSH (Secure Shell).

Selain itu, Anda juga dapat memanfaatkannya untuk meng-copy file ke flashdisk atau external hard drive.

Namun, Anda perlu mengingat bahwa Rsync memakan bandwidth. Karena, setiap file yang disalin akan melalui proses kompresi dan dekompresi.

Nah, agar bisa menggunakan Rsync, Anda tentu harus tahu syntax dasarnya. Simak penjelasannya di bawah ini.

Syntax Dasar Rsync
Berikut ini adalah syntax dasar Rsync:

rsync [optional modifiers] [source] [destination]
Pada syntax tersebut, ada tiga komponen yang dapat Anda tentukan:

  • Optional modifiers — aksi yang ingin Anda lakukan terhadap file atau folder. Ini dilakukan menggunakan beberapa opsi yang tersedia di Rsync. Kami akan membahasnya satu per satu nanti.
  • Source — direktori sumber file atau folder.
  • Destination — direktori yang ingin dituju.

Namun, syntax dasar Rsync sedikit berbeda jika Anda menggunakan remote shell. Di bawah ini adalah syntax ketika Anda mengakses remote shell (PULL):

rsync [optional modifiers] [[email protected]]host:source [destination]
Sedangkan di bawah ini adalah syntax ketika Anda mengakses remote shell (PULL):

rsync [optional modifiers] source [[email protected]]host:[destination]
Sebelum menggunakannya, sebaiknya Anda memeriksa versi Rsync yang ada pada perangkat Anda terlebih dahulu. Ini dilakukan untuk memastikan bahwa Anda menggunakan versi terbarunya. Caranya akan dijelaskan di bagian berikut ini.

Cara Memeriksa Versi Rsync
Untuk memeriksa versi Rsync pada perangkat Anda, silakan log in ke server VPS yang Anda gunakan. Kemudian, gunakan command berikut:

rsync -version
Contoh output yang muncul:

rsync version 3.1.2 protocol version 31
Output tersebut memberitahukan bahwa versi Rsync yang digunakan adalah 3.1.2.

Cara Install Rsync
Rsync umumnya telah terpasang sebagai fitur bawaan. Akan tetapi, bisa saja perangkat Anda belum memilikinya.

Jika memang tidak ada di komputer Anda, install Rsync dengan menjalankan perintah di bawah ini:

apt-get install rsync
Perintah tersebut diperuntukkan perangkat Debian dan Ubuntu. Apabila komputer Anda menggunakan Fedora atau CentOS gunakan perintah berikut:

yum install rsync
Setelah instalasi, Anda juga dapat menjalankan perintah cek versi sebelumnya. Hal ini dilakukan untuk memastikan bahwa Rsync benar-benar sudah terpasang.

Cara Menggunakan Rsync
Operasi Rsync terdiri dari beberapa perintah. Masing-masing dilakukan dengan sebuah opsi, seperti:

  • -r — mensinkronkan file dan folder.
  • -a — mensinkronkan file dan folder dan menyimpan informasi-informasinya.
  • -delete — menghapus file dan folder di perangkat tujuan yang sudah tidak ada di perangkat asal.
  • -z — mengkompres file dan folder.

Agar tidak rumit, kami akan mencontohkannya dengan dua perangkat yang dinamai Original dan Duplicate.

Perangkat Original memiliki beberapa file di dalamnya, sedangkan Duplicate masih kosong.

Menyalin File
Jika ingin menyalin semua file ke perangkat Duplicate, Anda tinggal menjalankan perintah berikut:

rsync original/* duplicate/
Tanda asterisk (*) pada perintah itu digunakan untuk mengisyaratkan bahwa semua file dalam direktori di perangkat Original akan di-copy.

Namun, perlu diingat bahwa perintah di atas tidak akan menyinkronkan subdirektori atau folder yang ada dalam perangkat Original ke perangkat Duplicate.

Di samping itu, perintah tadi hanya berlaku sekali. Jika ada file baru di perangkat Original, Anda perlu menjalankannya lagi dan hanya file tersebut yang akan disalin di perangkat Duplicate.

Oleh karena itu, Rsync command ini sangat bermanfaat jika perangkat atau server Linux Anda memiliki bandwidth yang sangat terbatas.

Menyalin Subdirektori (Folder)
Berhubung perintah tadi hanya akan meng-copy semua file di direktori perangkat Original, Anda tidak dapat sekaligus menyinkronkan subdirektori atau folder. Untuk mengatasi kelemahan tersebut, Anda dapat menggunakan perintah ini:

rsync -r original/ duplicate/
Bedanya, di perintah tersebut tidak ada tanda asterisk, tetapi ada opsi -r. Opsi tersebut memerintahkan perangkat untuk meng-copy subdirektori atau folder dari satu perangkat ke yang lain.

File dan Folder dari Perangkat Tujuan
Kedua perintah di atas berguna untuk meng-copy file atau folder dari perangkat asal ke perangkat tujuan.

Namun, Anda juga dapat melakukan sebaliknya dengan perintah berikut:

rsync -r original duplicate/
Intinya, Anda tinggal menghilangkan tanda / setelah nama perangkat asalnya.

Menggunakan Rsync dalam Mode Archive
Perlu diketahui bahwa file dan folder yang disinkronisasi dengan ketiga perintah di atas tidak disertai dengan permission dan informasi lainnya, seperti waktu dan tanggal pembuatan file.

Jika Anda ingin agar file dan folder yang disalin memiliki informasi yang sama dengan aslinya, Anda perlu menggunakan mode archive. Mode ini diwakili oleh opsi -a. Contohnya seperti demikian:

rsync -av original/ duplicate/
Pada perintah di atas, opsi -a juga dapat disertai opsi -v atau verbose yang berfungsi untuk menunjukkan proses sinkronisasi. Tentunya ini sangat membantu jika file yang disalin berjumlah banyak dan Anda ingin mengetahui kemajuannya.

Menghapus File
Ketika Anda ingin mensinkronkan dua perangkat atau lebih, mungkin ada file atau folder dalam perangkat asal yang sudah dihapus karena tidak dibutuhkan lagi. Namun, salinan file atau folder tersebut masih terdapat di perangkat lainnya.

Tentunya Anda ingin bisa menghapusnya, bukan? Untungnya, Rsync memiliki opsi -delete yang memudahkan Anda untuk melakukannya.

Penggunaan opsi tersebut seperti pada perintah di bawah ini:

rsync -av –delete original/ duplicate/
Dengan tambahan opsi -delete, perintah itu memungkinkan Anda untuk mensinkronkan file sembari menghapus file atau folder yang sudah tidak ada di perangkat asal.

Mengkompres File
Rsync juga memiliki kemampuan untuk mengkompres file atau folder dalam proses sinkronisasi. Fitur ini diwakili dengan opsi -z. Dengan menggunakannya, proses sinkronisasi dapat dipercepat dengan ukuran file yang lebih kecil.

Contoh perintahnya seperti berikut:

rsync -za original/ duplicate/
Pada perintah tersebut, file atau folder yang disalin ke perangkat tujuan akan di-archive dan dikompres.