Baik sebagai admin maupun pengguna biasa, kamu hampir pasti perlu membuat backup file secara rutin atau menyinkronkannya di beberapa sistem. Jika setiap kali harus menimpa semua file, proses ini akan memakan waktu dan melelahkan. Di sinilah tool Rsync Linux ke remote server hadir sebagai solusi. Panduan ini akan memperkenalkanmu dengan perintah-perintah Rsync yang paling berguna, sehingga kamu bisa memanfaatkan fitur transfer yang cepat dan aman.
Apa Itu Rsync?
Sinkronisasi Jarak Jauh (Rsync) adalah perintah Linux/Unix yang sudah dikenal luas dan dapat digunakan untuk menyalin serta menyinkronkan file dan direktori, baik melalui akses remote maupun secara lokal. Dengan perintah Rsync, kamu bisa menjalankan berbagai tugas pengelolaan data seperti sinkronisasi, penyalinan, dan pembuatan backup. Selain itu, kamu juga bisa mencerminkan (mirror) sistem Linux ke sistem lain.
Ide utama di balik penggunaan Rsync ke remote server adalah memanfaatkan transfer file yang cepat. Untuk memindahkan data antara dua sumber, Rsync hanya memproses perbedaan di antara keduanya. Dengan kata lain, perintah Rsync membantu kamu menghindari pemborosan waktu akibat transfer data yang tidak perlu, karena hanya memproses selisih antara dua sistem Linux.
Mengapa Menggunakan Rsync?
Seperti yang mungkin sudah kamu ketahui, ada berbagai tool backup yang bisa digunakan. Pertanyaannya, apa yang membuat Rsync berbeda dibandingkan tool atau perintah lainnya?
Misalnya, kamu bisa menggunakan Protokol Transfer Berkas (FTP) untuk membuat salinan lokal dari websitemu, atau Protokol Penyalinan Aman (SCP) untuk tugas yang sama. Namun, keduanya memiliki kekurangan. FTP tidak menyertakan enkripsi data - sesuatu yang jelas tidak kita inginkan. Sementara SCP memang tidak punya masalah transfer tanpa enkripsi seperti FTP, namun prosesnya tetap lebih lambat karena harus membuat tunnel tersendiri.
Sebagai solusi alternatif, kita bisa menggunakan Rsync ke remote server dengan enkripsi berbasis key (biasa disebut Rsync SSH atau Rsync over SSH). Cara ini mencegah pengiriman data duplikat dan memanfaatkan key SSH. Perlu dicatat juga bahwa Rsync menggunakan kompresi dan dekompresi saat mengirim dan menerima data, sehingga penggunaan bandwidth menjadi lebih efisien.
Cara Menginstal Rsync
Kemungkinan besar Rsync sudah terpasang di sistemmu. Namun, mari kita bahas lebih detail. Sebelum memulai, perhatikan bahwa SSH harus sudah terpasang di sistem sumber maupun tujuan, karena kita akan menggunakan Rsync over SSH.
Langkah 1: Memeriksa Versi SSH
Anda bisa memeriksa versi SSH dengan perintah berikut:
ssh -V
Untuk melakukan Rsync ke server remote, Anda memerlukan server lokal sebagai sumber dan server remote sebagai tujuan. Pastikan juga server lokal memiliki hak administratif (sudo).
Langkah 2: Menginstal Rsync Linux
Perintah berikut digunakan untuk menginstal Rsync di Ubuntu, Linux Mint, dan Debian:
sudo apt install rsync -y
Jika Anda menggunakan distribusi Linux lain seperti Fedora, CentOS, AlmaLinux, dan Red Hat, jalankan perintah berikut untuk menginstal layanan Rsync ke server remote di sistem Anda:
sudo dnf install rsync
Catatan: apt adalah tool manajemen paket yang digunakan pada distribusi berbasis Debian.
Langkah 3: Menjalankan Rsync
Sekarang Anda perlu menjalankan dan mengaktifkan Rsync agar bisa digunakan, dengan perintah berikut:
sudo systemctl start rsync
sudo systemctl enable rsync
Langkah 4: Memverifikasi Instalasi Rsync
Jalankan perintah berikut untuk memastikan Rsync telah terinstal dengan benar dan melihat versi yang digunakan di sistem Linux Anda:
rsync --version
Pada bagian berikutnya, kita akan membahas cara memanfaatkan tool ini untuk membuat backup menggunakan autentikasi berbasis key.
Cara Membuat Backup Menggunakan Rsync melalui SSH?
Membuat backup inkremental adalah salah satu kegunaan Rsync melalui SSH. Perhatikan perintah berikut untuk memahami cara kerjanya:
rsync -av -e ssh /sourceDir/ user@remote:/path/to/destinationDir
Menjalankan perintah di atas akan membantu Anda menyinkronkan sourceDir dan destinationDir. Perintah ini mencakup opsi lain yang perlu Anda ketahui, seperti -a (archive) dan -v (verbose)Catatan bahwa -e ssh opsi ini mengharuskan koneksi Rsync berjalan melalui protokol SSH.
Jika Anda ingin Koneksi SSH diterima melalui port selain port default (port 22), Anda perlu mencantumkan nomor port setelah -e ssh. Perhatikan perintah berikut untuk memahami cara kerjanya.
rsync -av -e ssh 1998 sourceDir/ user@remote:/path/to/destinationDir
Pada perintah di atas, kita menggunakan 1998 sebagai port SSH, bukan port 22.
Rsync ke server remote melalui SSH memiliki opsi lain yang cukup berguna. Misalnya, menggunakan opsi –partial opsi ini memungkinkan Anda melanjutkan transfer parsial yang terhenti akibat gangguan seperti interupsi Rsync. Anda juga bisa memantau progres transfer file saat ini melalui opsi –progress Selain itu, utilitas Rsync ke server remote di Linux memungkinkan Anda menggunakan kedua fitur ini secara bersamaan. Caranya, gunakan flag -p pada baris perintah.
rsync -avP -e ssh /sourceDir/ user@remote:/path/to/destinationDir
Rsync ke server remote dengan perintah key memungkinkan Anda mengompresi data sebelum mentransfernya ke tujuan. Meskipun proses kompresi ini akan menggunakan CPU Anda, fitur ini tetap berguna karena mempercepat transfer file dan mengurangi penggunaan bandwidth.
Kamu bisa menggunakan perintah Rsync untuk menyalin file dan direktori, baik secara lokal maupun ke remote. Keunggulan utama Rsync adalah penggunaannya pada algoritma delta transfer, yang mencegah penyalinan data duplikat dari sumber ke tujuan. Seperti yang disebutkan sebelumnya, fitur Rsync untuk utilitas remote server ini berguna jika kamu ingin menangani backup harian dan sinkronisasi sistem. Dengan itu, mari kita gunakan perintah Rsync untuk kasus penggunaan lokal.
Cara Menggunakan Rsync untuk Sinkronisasi Lokal
Sebelum masuk ke sinkronisasi lokal dan cara menggunakan perintah Rsync untuk itu, kamu perlu mengetahui struktur umum Rsync lokal, yang ditampilkan di bawah ini:
rsync [options] [Source] [Destination]
Menyalin File Secara Lokal
Misalkan kita ingin menyinkronkan atau menyalin sebuah file dari direktori desktop (bernama Cloudzy) ke /home/Public folder; berikut perintah yang perlu kamu masukkan:
rsync -zvh /desktop/Cloudzy/myfile.pdf /home/Public
Perintah Rsync di atas mencakup tiga opsi yaitu -zvh; dengan menggunakan -z, file kamu akan dikompresi selama proses transfer. v opsi berfungsi untuk menampilkan output verbose, dan h pilihan membantu kita membaca output dengan cara yang mudah dipahami, alias menampilkan output yang ramah pengguna.
Menyalin Direktori Secara Lokal
Jika kita ingin menyalin direktori desktop (bernama Cloudzy) ke /home/Public folder; kamu perlu mengetikkan perintah berikut:
rsync -zavh /desktop/Cloudzy/myfile.pdf /home/Public
Yang -a opsi dalam perintah ini mengarsipkan direktori dan file selama proses sinkronisasi.
Kamu bisa dengan cepat memeriksa daftar direktori pada folder tujuan untuk memverifikasi apakah direktori telah berhasil disalin atau belum. Gunakan perintah berikut untuk melakukannya:
ls -ld /home/Public
Menyinkronkan File dan Direktori Secara Rekursif dan Lokal (Rsync Rekursif)
Bagaimana jika ada beberapa direktori dan file di dalam /desktop/Cloudzy, dan kamu ingin menyalinnya secara rekursif menggunakan perintah Rsync Linux?
Dalam kasus ini, gunakan opsi -r untuk menyinkronkan file dan direktori lokal secara rekursif. Kamu juga bisa menggunakan opsi arsip (-a) karena memiliki kegunaan lain seperti penyalinan rekursif. Perhatikan perintah berikut untuk memahami perintah rekursif Rsync.
rsync -zrvh /desktop/Cloudzy /home/Public
Or
rsync -zrvh /desktop/Cloudzy /home/Public
Menyalin Direktori dan File dari Sistem Lokal ke Remote
Selain karakteristik Rsync Linux ke remote server yang telah dibahas pada bagian sebelumnya, perintah populer ini juga memungkinkan sinkronisasi file dan direktori dari mesin lokal ke sistem remote.
Misalkan kita ingin menyalin sebuah folder (/desktop/Cloudzy/carpetabaru) dari mesin lokal ke sistem remote (dengan 192.168.1.79) di bawah /mycpt; berikut contoh cara melakukannya:
rsync -zarvh /desktop/Cloudzy/newfolder [email protected]:/mycpt
Cara Menyalin Direktori Tanpa File-nya Menggunakan Rsync
Dalam beberapa kasus, kita mungkin ingin menggunakan kemampuan Linux Rsync ke server remote untuk menyalin direktori tanpa menyertakan file di dalamnya. Sinkronisasi ini bisa dilakukan dari mesin remote ke sistem lokal, maupun sebaliknya.
Dalam artikel ini, kita menggunakan sistem remote di 192.168.1.79. Misalkan file tersebut berada di dalam folder /mycpt folder dan ingin menyalin direktori /desktop/Cloudzy dari sistem lokal tanpa menyertakan file-nya. Masukkan perintah berikut untuk melakukannya:
rsync -av -f"+ */" -f"- *" /desktop/Cloudzy [email protected]:/mycpt/
Perintah Rsync Lainnya yang Berguna
Berikut ini beberapa perintah Linux Rsync tambahan yang mungkin berguna bagi Anda.
Menentukan Ukuran Maksimum Transfer File di Rsync
Anda dapat menentukan batas ukuran file untuk transfer menggunakan perintah Rsync. Ini berguna saat Anda menjalankan Rsync secara rutin ke server remote dan mesin lokal, di mana bandwidth dan waktu adalah faktor penting. Perhatikan perintah berikut untuk memahami cara mengatur batas ukuran pada transfer file Rsync:
rsync -avzhe ssh --max-size='100k' /desktop/Cloudzy [email protected]:/home/Public
Menentukan Ukuran Minimum Transfer File di Rsync
Sama seperti mengatur ukuran maksimum, Anda juga dapat menentukan ukuran minimum file yang ingin ditransfer menggunakan Rsync ke server remote. Pada perintah berikut, kita akan mengatur ukuran minimum file menjadi 10k:
rsync -avzhe ssh --min-size='10k' /desktop/Cloudzy [email protected]:/home/Public
Menghapus File dari Sumber Setelah Sinkronisasi Selesai
Setelah selesai menggunakan perintah Rsync, Anda mungkin tidak lagi memerlukan file tersebut di sistem sumber. Dalam kasus ini, gunakan perintah Linux Rsync berikut untuk menghapus file dari sumber:
rsync --remove-source-files -zvh /desktop/Cloudzy [email protected]:/home/Public
Sinkronisasi Percobaan
Jika Anda baru mengenal utilitas Linux Rsync dan belum familiar dengan opsinya, dry run adalah cara yang tepat untuk memulai. Saat Anda menggunakan dry run dengan Rsync, perintah tidak akan mengubah file apa pun, tetapi akan menampilkan output perintah tersebut. Setelah yakin dengan hasilnya, Anda dapat menghapus opsi --dry-run dan menjalankan perintah tersebut di terminal. Lihat perintah berikut untuk memahami lebih lanjut tentang fungsi dry run.
rsync --dry-run --remove-source-files -zvh /desktop/Cloudzy [email protected]:/home/Public
Rangkuman: Menggunakan Perintah Linux Rsync
Artikel ini menjelaskan cara menggunakan kemampuan Linux Rsync ke server remote (dan Rsync ke server lokal) untuk berbagai kebutuhan, termasuk pencerminan sistem, membuat backup file, serta menyalin file dan direktori secara lokal maupun remote dengan pendekatan yang efisien. Perintah Linux yang sudah teruji ini memungkinkan Anda melakukan transfer file dengan cepat sekaligus memanfaatkan SSH dan kompresi data.
Dapatkan Linux VPS paket ekonomi atau premium untuk kebutuhan hosting website atau remote desktop, dengan harga paling terjangkau. VPS berjalan di atas Linux KVM untuk efisiensi lebih tinggi, didukung hardware bertenaga dengan penyimpanan NVMe SSD untuk kecepatan optimal.
Baca SelengkapnyaAnda bisa memaksimalkan sistem operasi ini dengan mendapatkan Linux VPS solusi dari Cloudzy, yang memungkinkan Anda menikmati paket hosting berbasis KVM. Kami menawarkan layanan VPS berkinerja tinggi dengan uptime 99,95%, stabilitas terjamin, latensi minimal, pusat data di seluruh dunia (12 lokasi), penyimpanan SSD super cepat, dan dukungan teknis 24/7. Anda bisa mulai menggunakan Linux VPS mulai dari $4,95 dan meningkatkannya kapan pun Anda butuh solusi yang lebih canggih.
Pertanyaan yang Sering Diajukan
Port TCP mana yang digunakan Rsync?
SSH secara default menggunakan port 22. Oleh karena itu, saat menggunakan rsync melalui SSH, koneksi akan berjalan di port tersebut. Sementara itu, jika menggunakan Rsync daemon, port yang digunakan adalah 873.
Apa itu Rsync?
Rsync adalah utilitas Linux untuk menyinkronkan file dan direktori, baik secara lokal maupun jarak jauh. Dengan perintah Rsync, Anda dapat melakukan berbagai tugas pengelolaan data, seperti sinkronisasi, penyalinan, dan pembuatan backup.