Panduan Praktis Transfer Data Menggunakan Rsync

Panduan lengkap penggunaan Rsync untuk transfer dan sinkronisasi data secara efisien di Linux, termasuk perintah dasar, opsi umum, dan contoh praktik terbaik.

Waktu baca: 6 menit • Lihat progres baca di bar atas
Oleh Fadly Ilham Fatahilah
Dipublikasikan 04 Juni 2025

Halo, Kawan Belajar!

Di era digital ini, transfer data yang cepat, efisien, dan aman menjadi kebutuhan mutlak. Salah satu alat yang terbukti andal dan efisien untuk tugas ini adalah Rsync. Artikel ini memberikan panduan praktis penggunaan Rsync, mencakup perintah dasar dan contoh penggunaan untuk membantu kamu mengoptimalkan proses transfer data. Silakan simak panduan lengkapnya dibawah ini ya.

Apa Itu Rsync?

Remote synchronization, atau yang biasa dikenal dengan Rsync, adalah perangkat lunak berbasis baris perintah yang memungkinkan kamu untuk menyalin dan menyinkronkan file dan direktori secara efisien antara dua lokasi, baik lokal maupun remote. Kawan Belajar bisa mengenal Rsync lebih dalam pada artikel kami berikut: Mengenal Rsync: Pengertian, Kegunaan, dan Keunggulan

Persyaratan Awal Menggunakan Rsync

Sebelum menggunakan Rsync, berikut beberapa syarat yang perlu kamu penuhi terlebih dahulu:

  1. Memiliki hak akses koneksi SSH ke server

  2. Untuk melakukan remote transfer, pastikan Rsync sudah terinstal pada kedua server (Baca juga: Cara Melakukan Instalasi Rsync pada Linux dan Windows)

Perintah Dasar Rsync

Berikut ini adalah perintah dasar untuk menggunakan Rsync:

rsync [option] [source] [destination]

Pada perintah tersebut, ada tiga komponen yang dapat kamu tentukan:

  1. Option merupakan pilihan yang ingin kamu lakukan terhadap file atau direktori. Ini dilakukan menggunakan beberapa opsi yang tersedia di Rsync.

  2. Source merupakan sumber file atau atau sumber direktori yang ingin ditransfer.

  3. Destination merupakan direktori yang ingin dituju

Perintah Dasar Rsync untuk Remote Shell

Perintah Rsync akan berbeda jika kamu menggunakan remote shell, seperti SSH. Gunakan perintah Rsync di bawah ini untuk mengakses remote shell (PULL ):

rsync [option] [user@]host:source [destination]

Jalankan perintah Rsync ini untuk mengakses remote shell (PUSH ) :

rsync [option] [source] [user@]host:[destination]

Opsi yang Sering Digunakan

Rsync menyediakan banyak sekali pilihan, di antara banyaknya opsi tersebut, berikut beberapa opsi yang paling sering digunakan:

  1. -v atau --verbose

Memberikan visual output yang terjadi selama proses transfer.

  1. -a atau --archive

Mode arsip yang mencakup penyalinan rekursif dan mempertahankan atribut file seperti izin file, stempel waktu,dan tautan simbolik.

  1. -r atau --recursive

Menyalin direktori secara rekursif.

  1. --delete

Melakukan mirroring dengan menyesuaikan file dan direktori antara sumber dan tujuan.

  1. --exclude=POLA

Mengecualikan file atau direktori yang cocok dengan pola yang ditentukan.

  1. --include=POLA

Menyertakan file atau direktori yang cocok dengan pola yang ditentukan.

  1. -z atau --compress

Melakukan kompresi data file selama transfer untuk mengurangi penggunaan bandwidth.

  1. --dry-run

Melakukan uji coba tanpa melakukan perubahan nyata.

  1. -u atau --update

Melewati file di sisi tujuan yang lebih baru dari file sumber sehingga hanya file lama yang diperbarui.

  1. -h

Menampilkan output yang mudah dibaca manusia.

  1. -P atau --progress

Menampilkan kemajuan selama transfer.

Untuk daftar lengkap semua pilihan Rsync yang tersedia, kamu dapat menjalankan perintah berikut:

rsync --help

Mengecek Opsi Rsync

Gambar 2: Mengecek Opsi Rsync

Contoh Penggunaan Rsync

Berikut dibawah ini beberapa contoh penggunaan atau penerapan rsync.

Menyalin File dan Direktori Secara Lokal

Untuk menyalin file secara lokal, kamu dapat menggunakan perintah berikut yang akan menyalin satu file di mesin lokal dari satu lokasi ke lokasi lain dengan tetap mempertahankan atribut file tersebut.

rsync -azvh source/dir1/file1.txt destination/

Menyalin File Secara Lokal

Gambar 3: Menyalin File Secara Lokal

Pada contoh tersebut, Rsync akan terlebih dahulu membuat direktori destination apabila belum tersedia, sebelum kemudian menyalin file dengan nama file1.txt.

Adapun untuk menyalin direktori secara rekursif, kamu dapat menggunakan perintah berikut:

rsync -avzh source/dir1/subdir1 dst

Menyalin Direktori Secara Lokal

Gambar 4: Menyalin Direktori Secara Lokal

Menyalin File dan Direktori ke Remote Server

Untuk menyalin direktori dari server lokal ke remote server, kamu dapat menggunakan perintah berikut:

rsync -avzh source/dir1/file2.txt user@host:/root/destination/

Menyalin File Ke Remote Server

Gambar 5: Menyalin File Ke Remote Server

Dengan demikian file bernama file2.txt yang semula berada di server lokal saja, sekarang tersedia pada direktori /root/destination/ yang ada pada remote server tujuan.

Kemudian, apabila kamu ingin menyalin direktori secara remote server, kamu dapat menggunakan perintah berikut:

rsync -rvzh -e 'ssh -p 2201' dir1/source/ user@host:/root/destination/

Menyalin Direktori Ke Remote Server

Gambar 6: Menyalin Direktori Ke Remote Server

Menyalin File dari Remote Server ke Server Lokal dengan SSH

Berikut perintah yang dapat kamu gunakan untuk menyalin file dari remote server ke server lokal:

rsync -avzh -e 'ssh -p 2201' user@host:/root/destination/nyoba.txt dst/

Menyalin File dari Remote Server

Gambar 7: Menyalin File dari Remote Server

Menampilkan Progress Ketika Mentransfer Data

Untuk menunjukkan progres saat mentransfer data dari satu server ke server lain, kamu dapat menggunakan pilihan --progress atau -P, yang menampilkan file dan waktu yang tersisa untuk menyelesaikan transfer. Sebagai contoh berikut cara mentransfer file dengan nama transfer.txt dengan menampilkan progres.

rsync -avzh -e 'ssh -p 2201' --progress source/dir1/transfer.txt user@host:/root/dst/

Menampilkan Progres Ketika Mentransfer Data

Gambar 8: Menampilkan Progres Ketika Mentransfer Data

Melakukan Mirroring dengan Rsync

Jika file atau direktori tidak ada di sumbernya, namun sudah ada di tujuan, kamu mungkin ingin menghapus file atau direktori yang ada di target saat menyinkronkan. Kamu dapat menggunakan opsi --delete untuk menghapus file yang tidak ada di direktori sumber.

rsync -avzhP -e 'ssh -p 2201' --delete source/ user@host:/root/destination

Melakukan Mirroring dengan Rsync

Gambar 9: Melakukan Mirroring dengan Rsync

Pada Gambar 9 tersebut tampak bahwa file yang tidak terdapat pada direktori sumber akan dihapus dari direktori tujuan. Namun, file yang belum terdapat pada direktori tujuan, akan disalin dari direktori sumber.

Mengecualikan File dengan Ekstensi Tertentu

Kamu dapat memanfaatkan opsi --exclude untuk memfilter file dengan ekstensi tertentu supaya tidak disertakan dalam proses transfer. Contoh penggunaanya adalah sebagai berikut:

rsync -rvhP -e 'ssh -p 2201' --exclude='*.bin' /root/source/dir1/subdir1/ user@host:/root/dst/

Daftar File Pada Direktori Sumber

Gambar 10: Daftar File Pada Direktori Sumber

Mengecualikan File dengan Ekstensi Tertentu

Gambar 11: Mengecualikan File dengan Ekstensi Tertentu

Dalam contoh yang diberikan, Rsync akan mengecualikan file dengan ekstensi yang ditentukan (*.bin) selama transfer, namun akan tetap menyalin file lainnya.

Menghapus File Sumber Setelah Transfer

Misalkan kamu dihadapkan pada suatu kondisi dimana memiliki web server utama dan juga server cadangan, kamu membuat backup harian dan menyinkronkannya dengan server cadangan, namun kamu tidak ingin penyimpanan server web utama kamu penuh. Dengan demikian, kamu dapat menggunakan opsi --remove-source-files untuk menghapus file sumber setelah dilakukan transfer ke tujuan.

rsync -rvhP -e 'ssh -p 2201' --remove-source-files /root/backupwebsite/website_backup_11072024_01\:00.tar.gz user@host:/root/dst/

Menghapus File Sumber Setelah Ditransfer

Gambar 12: Menghapus File Sumber Setelah Ditransfer

Uji Coba Menyalin File Dengan Opsi --dry-run

Jika kamu ingin melakukan uji coba perintah Rsync, namun tidak benar benar melakukan transfer data dengan menggunakan Rsync. Maka gunakan opsi --dry-run, dengan begitu kamu hanya akan diberikan output yang akan terjadi ketika perintah dijalankan, tanpa benar-benar dilakukan oleh sistem.

Menguji Coba Salin File dengan Opsi Dry Run

Gambar 13: Menguji Coba Salin File dengan Opsi Dry Run

Penutup

Demikian panduan lengkap mengenai penggunaan Rsync untuk keperluan transfer dan sinkronisasi data, baik secara lokal maupun antar server. Dengan memahami perintah dasar, opsi-opsi penting, serta contoh penggunaannya, diharapkan kamu dapat memanfaatkan Rsync secara optimal dalam pengelolaan data dan sistem.

Semoga artikel ini bermanfaat dan membantu kamu dalam meningkatkan efisiensi serta keamanan dalam proses transfer data. Jangan ragu untuk mengeksplorasi lebih lanjut dan mencoba langsung di lingkungan server kamu. Selamat mencoba, Kawan Belajar!

Butuh bantuan lebih lanjut?

Jangan ragu untuk menghubungi tim support kami jika Anda memiliki pertanyaan atau masalah terkait layanan CloudKilat.