Pada dunia administrasi server dan pengelolaan file, salah satu cara terbaik untuk melakukan sinkronisasi file antara dua sistem adalah menggunakan rsync. Dengan rsync, kamu bisa dengan mudah mentransfer data dari satu sistem ke sistem lain melalui jaringan, bahkan dengan menggunakan SSH untuk memastikan keamanan transfer data. Artikel ini akan membahas bagaimana cara menggunakan rsync untuk sinkronisasi folder spesifik melalui SSH.
Perintah Dasar Rsync melalui SSH
Kamu bisa menjalankan perintah rsync dengan format dasar sebagai berikut:
rsync -avz -e ssh /path/to/local/folder user@remote_host:/path/to/remote/folder
Penjelasan Perintah:
rsync: Utilitas baris perintah untuk mentransfer dan sinkronisasi file.-a: Mode arsip; kamu akan memastikan bahwa symlink, perangkat, atribut, izin, kepemilikan, dan sebagainya tetap terjaga.-v: Output verbose; memberikan informasi lebih detail tentang proses transfer.-z: Mengompresi data file selama transfer untuk menghemat bandwidth.-e ssh: Menentukan bahwasshdigunakan untuk transfer data./path/to/local/folder: Path ke folder lokal yang ingin disinkronkan.user@remote_host:/path/to/remote/folder: Pengguna SSH, nama host, dan path ke folder tujuan di mesin remote.
Catatan Penting:
Penggunaan Trailing Slash (Garis Miring Akhir) Penting:
- Dengan Trailing Slash (
/path/to/local/folder/): Akan mensinkronkan isi folder lokal ke folder remote. - Tanpa Trailing Slash (
/path/to/local/folder): Akan mensinkronkan folder lokal beserta isinya ke folder remote.
- Dengan Trailing Slash (
Sinkronisasi dari Remote ke Lokal:
Jika kamu ingin sinkronisasi dari server remote ke komputer lokal, kamu hanya perlu membalikkan sumber dan tujuan:
rsync -avz -e ssh user@remote_host:/path/to/remote/folder /path/to/local/folderMenggunakan Port SSH yang Berbeda:
Jika server SSH kamu menggunakan port selain port standar (22), kamu bisa menambahkan opsi port:
rsync -avz -e 'ssh -p 2222' /path/to/local/folder user@remote_host:/path/to/remote/folderMenggunakan SSH Key untuk Autentikasi:
Jika kamu sudah mengatur SSH key untuk autentikasi tanpa password,
rsyncakan menggunakan kunci tersebut secara otomatis saat mentransfer file.Mengecualikan File atau Direktori:
Jika kamu ingin mengecualikan file atau direktori tertentu dari sinkronisasi, kamu bisa menggunakan opsi
--exclude:rsync -avz --exclude 'node_modules' -e ssh /path/to/local/folder user@remote_host:/path/to/remote/folder
Contoh Penggunaan:
Misalkan kamu ingin mensinkronkan folder lokal /home/user/projects ke folder remote /var/backups/projects di server remote remote.example.com, kamu bisa menjalankan perintah berikut:
rsync -avz -e ssh /home/user/projects/ user@remote.example.com:/var/backups/projects/
Perintah ini akan:
- Menyalin seluruh isi folder
/home/user/projects/ke/var/backups/projects/di server remote. - Menjaga izin file, kepemilikan, dan timestamp.
- Mengompresi data selama transfer untuk mempercepat proses.
- Menggunakan SSH untuk memastikan transfer data yang aman.
Menggunakan Rsync dengan Aman
Jalankan Dry Run Terlebih Dahulu:
Sebelum melakukan sinkronisasi, sangat disarankan untuk menjalankan dry run terlebih dahulu agar kamu bisa melihat file apa saja yang akan ditransfer tanpa benar-benar memindahkannya. Gunakan opsi
--dry-runseperti ini:rsync -avz --dry-run -e ssh /path/to/local/folder user@remote_host:/path/to/remote/folderMengoptimalkan Kinerja:
Jika kamu memiliki banyak file besar untuk disinkronkan, pertimbangkan untuk menggunakan opsi
--progressagar kamu bisa melihat progres transfer, atau opsi--partialuntuk melanjutkan transfer yang terputus.
Kesimpulan
rsync adalah alat yang sangat kuat dan fleksibel untuk sinkronisasi file dan folder, terutama ketika digunakan bersama SSH untuk memastikan keamanan transfer data. Dengan beberapa opsi sederhana, kamu bisa dengan mudah mengelola dan memindahkan data antar server dengan aman. Semoga artikel ini membantu kamu memahami cara menggunakan rsync untuk sinkronisasi folder spesifik melalui SSH.

Komentar
Posting Komentar