Proses sinkronisasi file antara satu perangkat penyimpanan dan node dalam jaringan bisa menjadi proses yang memakan waktu, terutama saat harus mentransfer file dan folder antar komputer yang berbeda.

Untuk mempermudah pekerjaan tersebut, Linux menyediakan Rsync. 

Dikenal pula sebagai remote sync, Rsync adalah aplikasi command-line biaya yang memungkinkan penggunanya memindahkan file dan folder dari dan ke destinasi remote maupun lokal. 

Rsync merupakan utilitas yang baik untuk mirroring, backup, dan migrasi data ke server lain. Aplikasi ini cepat dan efisien karena memungkinkan penyesuaian ketika mentransfer data. 

Ingin tahu lebih lanjut soal Rsync? Baca selengkapnya dalam artikel ini!

Apa Itu RSYNC?

Rsync adalah utilitas baris perintah (command line utility) yang digunakan untuk memindahkan dan menyesuaikan file dan direktori antara dua lokasi yang berbeda. 

Selain itu, rsync dapat digunakan untuk mentransfer dan menyelaraskan file antara perangkat komputer, penyimpanan drive, server jarak jauh, dan jaringan komputer. 

Tidak seperti metode penyalinan file tradisional yang menyalin seluruh file, Rsync terkenal karena kemampuannya yang efisien dalam menyinkronkan hanya bagian-bagian dari file yang telah berubah.

Dengan pendekatan seperti itu, Rsync mampu mengurangi jumlah data yang harus ditransfer dan waktu yang dibutuhkan untuk sinkronisasi. Kemampuan transfer selektif ini juga membuat rsync andal dalam melakukan backup, mirroring, dan sinkronisasi file jarak jauh.

Baca Juga: Mengapa Kita Perlu Menggunakan Cloud Backup Service?  

Selain itu, jika koneksi pengguna terputus saat proses pemindahan file sedang berlangsung, Rsync mampu melanjutkan kembali proses tersebut setelah koneksi kembali stabil.

Awalnya dikembangkan untuk sistem operasi (OS) Unix, rsync populer digunakan pengguna Linux. Bersifat open-source, rsync bisa didapatkan secara gratis di bawah GNU General Public License. 

Jadi, tidak heran kalau Rsync merupakan pilihan populer bagi pengguna yang membutuhkan solusi efisien untuk sinkronisasi dan transfer file serta direktori.

Baca Juga: Game(Over)lay: Kerentanan pada OS Ubuntu dan Cara Mitigasinya

Keunggulan Menggunakan RSYNC

Berikut beberapa fitur serta keunggulan Rsync:

1. Data Transfer yang Efisien

Rsync menggunakan algoritma delta transfer yang cerdas, memungkinkan pengguna untuk update salinan data secara efisien.

Alih-alih mentransfer seluruh file, Rsync hanya mengirim sebagian file yang telah diubah. Pendekatan transfer data seperti ini lebih efisien, khususnya untuk file atau direktori besar, karena jumlah data yang ditransfer akan berkurang. 

Dengan begitu, dapat menghemat waktu, mengurangi penggunaan bandwidth, dan mempercepat proses sinkronisasi. 

2. Optimasi Jaringan 

Rsync adalah alat yang tepat untuk sinkronisasi file antara sistem-sistem, baik melalui jaringan lokal maupun internet. Hal ini karena Rsync dirancang untuk bekerja dengan efisien melalui koneksi jaringan. 

Rsync mampu menyesuaikan cara transfer berdasarkan kondisi jaringan dan kemampuan bandwidth berbeda-beda. 

3. Penggunaan Bandwidth dapat Diatur

Rsync memungkinkan pengguna mengontrol penggunaan bandwidth dari proses transfer dengan opsi seperti –bwlimit

Opsi tersebut berfungsi membatasi jumlah bandwidth yang dikonsumsi Rsync. Dengan begitu, proses transfer dengan Rsync tidak memonopoli sumber daya jaringan dan memungkinkan aktivitas jaringan lain untuk bisa tetap berjalan lancar.

4. Proses Transfer yang Aman

RSync mendukung mekanisme enkripsi dan autentikasi yang menjamin keamanan pengiriman data melalui jaringan, seperti SSH. Hal ini memastikan data yang ditransfer dengan protokol Rsync terlindungi dari gangguan atau cobaan peretasan.

5. Konfigurasi yang Fleksibel

RSYNC memiliki berbagai parameter yang memungkinkan pengguna untuk menyesuaikan perilaku sinkronisasi sesuai dengan kebutuhan spesifik mereka. 

Pengguna dapat mengecualikan file atau direktori tertentu dari sinkronisasi, mempertahankan izin dan kepemilikan file, dan mengontrol berbagai aspek proses sinkronisasi.

6. Otomatisasi dan Penjadwalan

Rsync mudah diotomatisasikan dan dijadwalkan untuk melakukan backup dan sinkronisasi rutin, menjamin konsistensi dan integritas data.

7. Support Lintas Platform

Meskipun RSYNC terutama digunakan di lingkungan mirip Unix seperti Linux dan macOS, RSYNC juga dapat digunakan di Windows melalui implementasi pihak ketiga. 

Dukungan lintas platform ini menjadikan RSYNC alat serbaguna untuk menyinkronkan file antar sistem yang menjalankan sistem operasi berbeda.

Apa Itu Network File System (NFS) dan Peran Pentingnya dalam Cloud Computing

Command Rsync di Linux

Sebelum kamu memulai dengan Rsync, ketahui beberapa command dasar Rsync di sistem operasi Linux:

  • -a, –archive: menyalin file secara rekursif dan mempertahankan atribut file ketika di-copy.
  • -q, –quiet: membuat rsync beroperasi dengan tenang, menyembunyikan sebagian besar pemberitahuan yang bukan error message.
  • -v, –verbose: menampilkan detail output saat proses rsync berlangsung.
  • -h, –human-readable: membuat output mudah dibaca dengan menampilkan format display ukuran file yang mudah dimengerti.
  • -z, –compress: mengaktifkan compress file selama proses transfer, dapat digunakan untuk menghemat bandwidth.
  • -r, –recursive: melakukan sinkronisasi file dan folder tidak hanya di direktori utama, tetapi juga di semua subdirektori di dalamnya.
  • -u, –update: melewati atau skip file yang lebih baru di sisi penerima, memastikan bahwa hanya file yang lebih baru di sisi pengirim yang akan disalin ke sisi penerima.
  • –delete: menghapus file-file yang tidak diperlukan dari direktori tujuan.
  • –progress: menunjukkan progress transfer ketika command dijalankan.

Contoh Penggunaan Command RSYNC

Mengirim File dari Remote ke Lokal

Berikut format yang bisa digunakan:

rsync [option] user@host:[file/directory origin] [destination]

Contoh penggunaan command: 

rsync -avh username@remoteHosting:/usr/home/user/public_html/domain.com /home/user/documents

Mengirim File dari Lokal ke Remote

Berikut format yang bisa digunakan:

rsync [option] [origin] user@host:[file/directory destination]

Contoh penggunaan command: 

rsync -avhz /home/user/documents username@remoteHosting:/usr/home/public_html/domain.com

Menghapus File di Tujuan yang Tidak Sesuai dengan Asalnya

Untuk menghapus file di direktori tujuan yang tidak sesuai dengan file yang di-copy dari asalnya, kamu bisa menggunakan opsi –delete.

rsync -avhz --delete /home/user/documentsusername@remoteHosting:/usr/home/public_html/domain.com

Dengan command ini, file yang tidak sesuai dengan direktori asal akan dihapus.

Tips Sinkronisasi dan Transfer Data Jarak Jauh dengan RSYNC

Berikut beberapa tips untuk melancarkan sinkronisasi dan transfer data dengan Rsync.

1. Pahami dasar-dasar Rsync: Pastikan kamu mengerti sintaks dan opsi dasar command Rsync, seperti rsync -a, -h, -v, -e, dan lainnya.

2. Gunakan SSH:  Manfaatkan opsi command -e untuk membuat command SSH spesifik dan menjaga keamanan data selama proses transfer.

3. Sinkronisasi File yang Perlu: Gunakan opsi –delete untuk menghapus file yang tidak diperlukan di tujuan dan gunakan –exclude untuk menspesifikan file dan direktori yang bisa dilewati dalam proses sinkronisasi.

4. Implementasi Error Handling: Konfigurasikan Rsync untuk menangani kesalahan dengan opsi –ignore-errors, –max-delete, atau –partial untuk melanjutkan transfer yang terputus dan meminimalisir risiko kehilangan data. 

5. Lakukan Monitoring dan Logging: Aktifkan logging dengan opsi –log-file dan pantau proses rsync untuk menjamin sinkronisasi data berjalan lancar. 

6. Lakukan Test dalam Mode Dry Run: Sebelum melakukan proses transfer dan sinkronisasi, review proses transfer dengan command –dry-run. Command ini akan mensimulasikan prosesnya tanpa benar-benar mengubah apapun.

Dengan mengikuti tips tersebut, kamu bisa menggunakan command Rsync di Linux dengan efektif. Tak sampai di situ, proses transfer jarak jauh dapat berjalan seraya membuat performa lebih optimal, menjaga integritas data, dan menyederhanakan pengelolaan data. 

Baca Juga: Apa Itu Network File System (NFS) dan Peran Pentingnya dalam Cloud Computing

About The Author

Write A Comment