Cara Menggunakan Perintah Rsync Untuk Sinkronisasi File Pada Server Linux

Melakukan sinkronisasi file merupakan salah satu aktifitas yang sering dilakukan oleh seorang sistem administrasi Linux server dan alat paling tangguh serta sering digunakan untuk melakukan hal tersebut adalah satu baru perintah Rsync.

Dengan menggunakan perintah rsync, Anda dapat menyalin dan menyinkronkan data Anda secara remotely dan secara lokal di seluruh direktori, disk, dan jaringan, melakukan pencadangan data yang efisien, dan melakukan mirroring antara dua mesin Linux.

Baik Anda mengelola server linux berbasih Ubuntu, RHEL, atau distribusi Linux lainnya, baris perintah rsync dapat anda gunakan, dan dalam artikel ini kita akan mempelajari cara menyalin (copy), menyinkronkan, melakukan backup, dan mentransfer file secara lokal dan remotely menggunakan beberapa perintah rsync yang berguna dengan contoh praktis.

Keuntungan Menggunakan Perintah Rsync

Adapun keuntungan dalam menggunakan perintah Rsync adalah :

  • Transfer File yang Efisien – rsync menggunakan algoritma transfer delta, yang berarti hanya mentransfer perbedaan antara file sumber dan tujuan, yang secara signifikan mengurangi jumlah data yang ditransfer, sehingga efisien untuk sinkronisasi file atau direktori besar.
  • Sinkronisasi File Remotely – rsync mendukung transfer file lokal dan jarak jauh melalui SSH, yang memungkinkan sinkronisasi antara sistem lokal dan jarak jauh atau mirroring direktori di beberapa mesin.
  • Incremental Backup – rsync sangat cocok untuk inkremental backup , karena membuat dan memperbarui cadangan secara efisien dengan hanya mentransfer file baru atau yang dimodifikasi.
  • Mempertahankan Permission File – rsync dapat mempertahankan berbagai atribut file, seperti izin, kepemilikan, stempel waktu, dan tautan simbolik, yang memastikan bahwa file yang disalin mempertahankan karakteristik aslinya di tujuan.
  • Bandwidth Control – rsync memungkinkan Anda untuk membatasi penggunaan bandwidth selama transfer file, karena menggunakan metode kompresi dan dekompresi saat mengirim dan menerima data di kedua ujungnya.
  • Lebih cepat – rsync bisa lebih cepat daripada scp (Secure Copy) untuk mentransfer file, terutama saat menyinkronkan direktori besar atau saat menangani file yang sudah sebagian ditransfer atau sudah ada di tujuan.

Syntax Perintah Rsync

Untuk mejalankan perintah rsync anda dapat menggunakan baris perintah berikut :

rsync [option] Lokasi Tujuan

Berikut penjelasan tentang berbagai komponen dan option yang digunakan dengan perintah rsync:

  • -v – Output verbose, menampilkan informasi detail tentang transfer.
  • -r – menyalin data secara rekursif (tetapi tidak mempertahankan timestaps dan izin saat mentransfer data).
  • -a – mode arsip, yang memungkinkan penyalinan file secara rekursif dan juga mempertahankan symbolic link, izin file, kepemilikan pengguna & grup, dan timestamps.
  • -z – Kompres file selama transfer untuk mengurangi penggunaan jaringan.
  • -h – mudah dibaca, menampilkan angka dalam format yang mudah dibaca.
  • -P – Menampilkan progress selama transfer.
  • SUMBER – Menentukan file atau direktori sumber yang akan ditransfer, yang dapat berupa lokasi lokal atau server yang berbeda.
  • TUJUAN – Menentukan jalur tujuan tempat file atau direktori akan disalin. Mirip dengan sumber, ini dapat berupa jalur lokal atau server yang berbeda.

Instalasi Rsync Pada Server Linux

Agar anda dapat menggunakan perintah Rsync, maka anda terlebih dahulu melakukan instalasi rsync tools pada server linux yang anda gunakan.

$ sudo apt install rsync         [Pada Debian, Ubuntu and Mint]
$ sudo yum install rsync         [Pada RHEL/CentOS/Fedora and Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/rsync  [Pada Gentoo Linux]
$ sudo apk add rsync             [Pada Alpine Linux]
$ sudo pacman -S rsync           [Pada  Arch Linux]
$ sudo zypper install rsync      [Pada OpenSUSE]

1. Melakukan Copy/Sync File

Untuk menyalin atau menyinkronkan file secara lokal, Anda dapat menggunakan perintah berikut yang akan menyinkronkan satu file pada mesin lokal dari satu lokasi ke lokasi lain.

Dalam contoh ini, file bernama snapback.gz perlu disalin atau disinkronkan ke folder /home/backups/

rsync -zvh /path/to/sumberfile /path/to/direktoritujuan
rsync -zvh snapback.gz /home/backup
perintah rsync menyalin file

Pada perintah diatas, dikarenakan file snapback.gz berada pada direktori root, dan perintah dijalankan pada direktori root, maka kita tidak perlu memasukkan perintah lokasi dari sumber file (/path/to/sumberfile).

Dan dari perintah diatas dapat terlihat, jika direktori tujuan yakni folder backup pada direktori home tidak ada sebelumnya, dan perintah rsync akan membuatnya secara otomatis. Dengan kata lain, anda tidak perlu membuat folder tujuan terlebih dahulu sebelum menyalin file dan anda cukup butuh mengingat tujuan folder yang anda buat saat menjalankan perintah rsync tersebut.

2. Copy/Sync Directory Secara Lokal

Tidak berbeda dengan perintah diatas, namun jika ingin melakukan penyalinan atau sinkronisasi folder/direktori agar menambahkan attribut -a, hal ini untuk mempertahankan ownership, permission file dan juga symbolic link yang mungkin sudah ada.

rsync -azvh /path/to/sumberfile /path/to/direktoritujuan
rsync -azvh snap /home/snapbackup/
perintah rsync folder secara lokal

Saat anda memeriksa folder /home/snapbackup maka anda akan mendapatkan hasil seperti berikut :

root@saludos:~# ll /home/snapbackup/
total 12
drwxrwxr-x 3 root root 4096 Apr 22 18:47 ./
drwx—–x 6 root root 4096 Apr 22 18:47 ../
drwx—— 3 root root 4096 Feb 10 01:22 snap/
root@saludos:~#

Kesimpulan

Untuk sementara kami merangkumkan kedua perintah rsync diatas sebagai permulaan untuk memahami opsi dan fungsi dari perintah tersebut. Dalam eksplorasi lebih lanjut mengenai berbagai opsi dan fungsi dari perintah rsync, akan kami kupas tuntas pada artikel kami lainnya.

Leave a Comment