Perintah rsync melalui SSH adalah salah satu metode Linux paling praktis untuk memindahkan file besar dengan cepat, aman, dan tahan gangguan antara dua server. Terutama saat memindahkan file situs web yang berukuran ratusan GB, arsip cadangan, folder media, atau data aplikasi, rsync memberikan keunggulan kecepatan yang signifikan dibandingkan metode penyalinan klasik karena hanya mentransfer blok yang berubah. Prinsip dasar penggunaannya adalah: file di server sumber disinkronkan ke server tujuan secara terenkripsi melalui terowongan SSH; jika koneksi terputus, proses dapat dilanjutkan dari tempat yang terakhir.
Pindah server, upgrade hosting, perubahan pusat data, atau operasi pencadangan juga memerlukan keutuhan data selain kecepatan. Mengunduh dan mengunggah arsip besar dalam satu bagian dapat menghabiskan waktu dan menyebabkan Anda harus memulai dari awal jika terjadi kesalahan koneksi. Di sinilah rsync berperan dengan menjaga cap waktu file, izin, informasi kepemilikan, dan struktur folder. Oleh karena itu, sistem administrator Linux, tim DevOps, dan ahli hosting web sering memilihnya dalam operasi sehari-hari.
Dalam panduan ini, kita akan membahas proses memindahkan file besar antara dua server Linux menggunakan rsync melalui SSH, langkah demi langkah dengan contoh perintah yang nyata. Kami juga akan berbagi parameter peningkatan kinerja, kontrol keamanan, skenario kesalahan, metode uji transfer, dan poin-poin yang perlu diperhatikan sebelum beralih ke lingkungan produksi. Jika Anda merencanakan migrasi ke VPS atau lingkungan hosting baru, pastikan Anda memiliki cukup ruang disk, akses SSH, dan izin pengguna yang benar di server sumber dan tujuan Anda sebelum menerapkan panduan ini. Anda dapat melihat halaman Solusi Server VPS Hostragons dan Paket Hosting Linux untuk pilihan infrastruktur yang relevan.
Apa itu rsync dan Mengapa Dipilih untuk Memindahkan File Besar?
rsync adalah alat baris perintah yang kuat yang digunakan untuk menyinkronkan file dan direktori baik di sistem lokal maupun antara server jarak jauh. Fitur terpentingnya adalah algoritma transfer delta. Algoritma ini mentransfer hanya bagian yang berubah daripada mengirim seluruh file setiap kali. Misalnya, jika ada perubahan sebesar 2 GB dalam file cadangan berukuran 80 GB, dalam kondisi yang tepat, hanya blok yang berubah yang dapat ditransfer alih-alih memindahkan seluruh file.
SSH membuat transfer menjadi terenkripsi. Dengan demikian, perintah rsync tidak mengirimkan konten file sebagai teks biasa saat mengirim data melalui jaringan. Fitur ini penting terutama untuk data pelanggan, catatan pesanan e-commerce, arsip media, cadangan database, dan file aplikasi khusus. Dalam dunia hosting, keamanan data tidak hanya terbatas pada sertifikat SSL; saluran transfer antar server juga harus aman. Saat menggunakan sertifikat SSL untuk lalu lintas situs web, enkripsi juga harus diterapkan dengan SSH untuk transfer file antar server.
rsync lebih fleksibel dibandingkan dengan metode FTP atau pengunduhan-pengunggahan manual. Ia dapat mempertahankan izin, mentransfer tautan simbolik, menghapus file yang dihapus di tujuan, membatasi bandwidth, dan menguji apa yang akan dilakukan sebelum transfer. Tingkat kontrol ini memberikan keuntungan signifikan dalam proses berisiko seperti memindahkan file besar.
Kapan Anda Harus Menggunakan Perintah rsync Melalui SSH?
Perintah rsync melalui SSH sangat ideal untuk memindahkan file yang besar, dalam jumlah banyak, atau yang sering berubah. Untuk folder visual sederhana, SFTP manual mungkin sudah cukup; namun, ketika berhadapan dengan ribuan file, izin yang berbeda, dan arsip besar, rsync menjadi opsi yang jauh lebih dapat diandalkan.
- Jika Anda memindahkan situs web dari server lama ke server VPS baru.
- Jika Anda mentransfer direktori yang berisi ribuan file media seperti folder uploads WordPress.
- Jika Anda menyalin cadangan harian, mingguan, atau bulanan ke server yang berbeda.
- Jika Anda melakukan perubahan pusat data atau penyedia hosting.
- Jika Anda menyinkronkan file aplikasi antara lingkungan produksi dan cadangan.
- Jika Anda merencanakan transfer jangka panjang yang berisiko terputus.
Sebagai contoh, mengunduh folder media berukuran 250 GB ke komputer desktop Anda dan kemudian mengunggahnya ke server baru berarti Anda melakukan dua transfer terpisah. Ini tidak hanya memperpanjang total waktu tetapi juga dapat memperlambat koneksi internet rumah atau kantor Anda. Dengan rsync, Anda dapat melakukan transfer langsung dari server sumber ke server tujuan, menghilangkan langkah tengah tersebut.
Persyaratan Sebelum Memulai
Mengetahui perintah rsync saja tidak cukup untuk operasi yang berhasil. Memeriksa kondisi server sumber dan tujuan dapat mengurangi risiko kehilangan data atau transfer yang terputus. Kontrol berikut harus dilakukan di lingkungan produksi.
1. Verifikasi Akses SSH
Koneksi SSH dari server sumber ke server tujuan harus dapat dilakukan. Koneksi standar diuji dengan cara berikut: ssh pengguna@ip-server-tujuan. Jika SSH berjalan di port yang berbeda, koneksi dicoba dengan logika berikut: ssh -p 2222 pengguna@ip-server-tujuan. Jika pengujian ini gagal, rsync juga tidak akan berfungsi. Firewall, Fail2ban, port SSH, izin pengguna, dan verifikasi kata sandi atau kunci harus diperiksa.
2. Periksa Apakah Paket rsync Terinstal
rsync sudah terinstal di sebagian besar distribusi Linux; namun, perlu untuk memeriksanya. Di sistem berbasis Debian dan Ubuntu, perintah rsync --version dapat digunakan. Jika belum terinstal, dapat diinstal dengan apt install rsync. Di turunan AlmaLinux, Rocky Linux, atau CentOS, perintah dnf install rsync atau yum install rsync dapat digunakan. Jika Anda menggunakan VPS berbasis Linux di Hostragons, instalasi biasanya hanya memerlukan beberapa detik.
3. Hitung Ruang Disk
Jika tidak ada cukup ruang kosong di server tujuan, transfer akan terhenti. Untuk melihat ukuran direktori sumber, dapat digunakan logika du -sh /sumber/direktori. Di tujuan, periksa status disk dengan perintah df -h. Secara praktis, tidak hanya ruang yang diperlukan sebesar ukuran file, tetapi juga harus ada cadangan untuk file sementara dan log. Misalnya, jika Anda memindahkan 500 GB data, lebih baik merencanakan setidaknya 550-600 GB ruang yang tersedia di tujuan.
4. Rencanakan Layanan Kritis dan File yang Berubah
File dapat berubah selama transfer di situs web yang aktif. Terutama, unggahan pengguna, folder cache, dan file log diperbarui secara terus-menerus. Dalam pemindahan besar, data utama dipindahkan terlebih dahulu, kemudian server dimasukkan ke dalam mode pemeliharaan dan rsync terakhir dijalankan. Dengan cara ini, waktu pemadaman dapat dipangkas menjadi beberapa menit. Anda dapat menyelesaikan rencana operasi Anda dengan konten dukungan seperti Panduan pemindahan hosting WordPress.
Perintah rsync Dasar: Memindahkan File Antara Dua Server
Struktur dasar yang paling sering digunakan adalah: rsync -avz /sumber/direktori/ pengguna@ip-tujuan:/tujuan/direktori/. Di sini, -a adalah mode arsip yang berusaha menjaga informasi seperti izin, cap waktu, dan tautan simbolik. -v memberikan output yang rinci. -z menerapkan kompresi selama transfer. Garis miring di akhir direktori adalah detail penting. Jika Anda menulis /sumber/direktori/, isi direktori akan disalin ke tujuan; jika Anda menulis /sumber/direktori, direktori itu sendiri akan dibuat di bawah tujuan.
Mari kita pikirkan skenario contoh: Anda ingin memindahkan file web berukuran 180 GB di folder /var/www/situs/public_html/ dari server lama ke direktori /var/www/situs/public_html/ di server baru. Perintah berfungsi dengan logika berikut: rsync -avz /var/www/situs/public_html/ root@203.0.113.20:/var/www/situs/public_html/. Proses ini mentransfer file melalui SSH dari server sumber ke server tujuan.
Jika Anda tidak ingin menggunakan root, lebih aman untuk membuat pengguna khusus di server tujuan yang memiliki izin menulis ke direktori terkait. Misalnya, Anda dapat menggunakan pengguna bernama deploy dan menyesuaikan kepemilikan folder yang diperlukan. Meskipun memproses langsung dengan root di lingkungan produksi praktis, disarankan untuk menggunakan pengguna dengan izin terbatas demi keamanan.
Parameter rsync yang Direkomendasikan untuk Keamanan dan Ketahanan
Dalam transfer file besar, hanya menggunakan perintah dasar tidak selalu benar. Untuk pemutusan koneksi, file parsial, penghapusan yang salah, atau jaringan yang lambat, perlu menggunakan parameter tambahan. Perintah berikut adalah titik awal yang solid untuk banyak skenario transfer nyata:
rsync -aHAXv --numeric-ids --partial --progress --append-verify -e ssh /sumber/direktori/ pengguna@ip-tujuan:/tujuan/direktori/
Dalam perintah ini, -a menjaga mode arsip, -H menjaga informasi tautan keras, -A membantu menjaga izin ACL, dan -X membantu menjaga nilai atribut yang diperluas. --numeric-ids menggunakan ID nilai alih-alih nama pengguna dan grup; ini bisa berguna ketika nama pengguna berbeda di server yang berbeda. --partial meninggalkan file yang tidak selesai tanpa dihapus. --progress menunjukkan status transfer. --append-verify membantu memvalidasi bagian yang ditambahkan saat melanjutkan dari tempat yang ditinggalkan, terutama untuk file besar.
Setiap parameter mungkin tidak diperlukan di setiap sistem. Misalnya, dalam pemindahan situs web sederhana, penggunaan -aHAX mungkin sudah cukup, sementara di aplikasi yang menggunakan izin file khusus, menjaga informasi ACL dan atribut yang diperluas menjadi sangat penting. Oleh karena itu, melakukan uji transfer terlebih dahulu sangatlah penting.
Bagaimana Jika Menggunakan Port SSH yang Berbeda?
Untuk keamanan, port SSH mungkin berfungsi di port yang berbeda dari 22. Dalam hal ini, parameter SSH ditentukan di dalam rsync. Contoh: rsync -avz -e ssh -p 2222 /sumber/direktori/ pengguna@ip-tujuan:/tujuan/direktori/. Namun, nilai parameter -e harus digunakan bersama dalam baris perintah. Logika penggunaan yang benar adalah: rsync -avz -e 'ssh -p 2222' /sumber/direktori/ pengguna@ip-tujuan:/tujuan/direktori/.
Karena penggunaan tanda kutip tunggal dapat berperilaku berbeda di JSON dan beberapa panel, pastikan tanda kutip benar saat mengetik langsung di terminal. Jika Anda terhubung menggunakan kunci SSH, parameter -i juga dapat ditambahkan: rsync -avz -e 'ssh -p 2222 -i /root/.ssh/id_rsa' /sumber/direktori/ pengguna@ip-tujuan:/tujuan/direktori/. Metode ini sering digunakan dalam pekerjaan cadangan berbasis otomatisasi dan cron tab.
Uji Sebelum Transfer: Penggunaan --dry-run
Salah satu langkah paling profesional sebelum memindahkan data besar adalah menggunakan --dry-run. Parameter ini tidak benar-benar menyalin file; hanya menunjukkan file mana yang akan ditransfer. Dengan cara ini, direktori yang salah, jalur tujuan yang salah, atau penghapusan yang tidak terduga dapat terdeteksi sebelumnya.
Contoh perintah uji: rsync -avz --dry-run /var/www/situs/ pengguna@ip-tujuan:/var/www/situs/. Anda akan melihat file yang akan dipindahkan, direktori yang akan dibuat, dan ringkasan proses. Jika Anda akan menggunakan parameter --delete, dry-run menjadi lebih kritis. Karena --delete dapat menghapus file yang tidak ada di sumber dari tujuan. Jika digunakan dengan benar, akan membuat tujuan menjadi cermin identik; jika digunakan di direktori yang salah, dapat menyebabkan kehilangan data serius.
Urutan aplikasi profesional umumnya adalah sebagai berikut: pertama lakukan pengujian SSH, kemudian periksa ruang disk, lalu jalankan rsync --dry-run, lakukan uji nyata dengan direktori kecil, dan setelah itu mulai transfer utama. Pendekatan ini mungkin memerlukan beberapa menit tambahan tetapi dapat mencegah transfer yang salah yang bisa memakan waktu berjam-jam.
Penyetelan Kompresi, Bandwidth, dan Enkripsi untuk Kinerja
Kinerja rsync tidak hanya bergantung pada ukuran file. Kekuatan CPU server, jenis disk, latensi jaringan, bandwidth, dan jumlah file juga penting. Banyak file kecil dapat ditransfer lebih lambat daripada satu file besar; karena setiap file memerlukan proses metadata. Di lingkungan VPS dengan disk NVMe, kinerja pemindaian dan penulisan file dapat jauh lebih baik. Oleh karena itu, jika Anda merencanakan pemindahan intensif, akan bijak untuk mempertimbangkan opsi server VPS NVMe.
Parameter kompresi -z memberikan manfaat untuk file teks, log, dan beberapa jenis cadangan. Namun, pada file yang sudah terkompresi seperti zip, tar.gz, jpg, mp4, atau gzip, penggunaan CPU mungkin tidak memberikan keuntungan yang signifikan. Jika Anda memindahkan file media besar antara dua server kuat dengan koneksi 1 Gbps, Anda dapat memperoleh kinerja yang lebih baik tanpa menggunakan -z. Sebaliknya, dalam bandwidth rendah dan file berbasis teks, -z dapat memberikan penghematan yang signifikan.
Untuk membatasi bandwidth, --bwlimit dapat digunakan. Misalnya, --bwlimit=50000 menetapkan batas sekitar 50 MB/s. Ini penting untuk tidak membebani lalu lintas jaringan situs web yang aktif. Melakukan transfer pada jam sibuk di server produksi dapat mempengaruhi pengalaman pengunjung. Merencanakan pemindahan di malam hari, membatasi bandwidth, dan memantau nilai load average selama proses adalah praktik yang baik.
Perbandingan rsync, scp, SFTP, dan FTP

Ada beberapa metode untuk mentransfer file; namun, setiap metode memiliki kelebihan dan kekurangan yang berbeda. Tabel berikut merangkum kapan masing-masing alat lebih cocok untuk skenario pemindahan file besar dan server.
| Metode | Keamanan | Melanjutkan dari Tempat Terakhir | Kinerja File Besar | Penggunaan yang Paling Sesuai |
|---|---|---|---|---|
| rsync + SSH | Tinggi | Kuat | Sangat Baik | Pindah server, pencadangan, sinkronisasi |
| scp | Tinggi | Terbatas | Rata-rata | Menyalin sejumlah kecil file dengan cepat |
| SFTP | Tinggi | Bergantung pada klien | Rata-rata | Manajemen file manual |
| FTP | Rendah | Bergantung pada klien | Bervariasi | Sistem lama jika keamanan tidak kritis |
Seperti yang terlihat dalam tabel, rsync menonjol terutama dalam sinkronisasi yang berulang dan pemindahan data besar. scp sederhana dan praktis tetapi tidak sekuat rsync dalam mendeteksi file yang berubah. FTP, jika digunakan tanpa enkripsi, tidak memadai untuk standar keamanan modern. Akses FTP dalam panel hosting dapat praktis; namun, untuk pemindahan kritis antar server, metode berbasis SSH harus dipilih.
Contoh Alur Kerja untuk Memindahkan Situs Web yang Aktif
Ketika memindahkan situs web dari server lama ke server baru, tujuan tidak hanya untuk menyalin file. DNS, database, versi PHP, izin file, dan konfigurasi email juga harus diperiksa. Berikut adalah contoh alur kerja dengan pemindahan file besar untuk meminimalkan pemadaman.
- Siapkan server web, PHP, database, dan modul yang diperlukan di server baru.
- Turunkan nilai TTL DNS untuk nama domain ke nilai rendah seperti 300 detik sebelum transfer. Anda dapat memeriksa halaman Pemeriksaan Domain dan Pengelolaan Domain untuk manajemen nama domain.
- Mulai transfer rsync pertama saat situs masih aktif. Tahap ini memindahkan sebagian besar data besar.
- Ambil cadangan database dan transfer ke server baru.
- Masukkan situs ke dalam mode pemeliharaan untuk waktu yang singkat.
- Jalankan perintah rsync kedua untuk menyinkronkan file terakhir yang berubah.
- Perbarui database atau gunakan strategi inkremental.
- Periksa izin file, pembukaan situs, dan log di server baru.
- Pasang atau perbarui sertifikat SSL. Hal ini dapat dilakukan dengan konten instalasi sertifikat SSL.
- Arahkan catatan DNS ke alamat IP baru.
Dalam metode ini, transfer file utama yang paling memakan waktu dilakukan saat situs masih berjalan. Pemadaman hanya terjadi selama sinkronisasi terakhir dan transisi DNS. Pendekatan ini dapat mengurangi pemadaman selama berjam-jam pada situs WordPress dengan arsip media besar menjadi hanya beberapa menit.
Memeriksa Keutuhan Data
Setelah transfer selesai, hanya menyelesaikan perintah tidak cukup. Jumlah file, ukuran, dan file kritis harus diperiksa. Untuk pemeriksaan sederhana, ukuran direktori dapat dibandingkan dengan perintah du -sh di sumber dan tujuan. Namun, karena perbedaan blok sistem file, nilai mungkin tidak terlihat persis sama. Untuk pemeriksaan yang lebih detail, rsync dapat dijalankan kembali dengan parameter yang sama. Jika tidak ada file baru yang akan ditransfer, output akan minimal.
Untuk verifikasi checksum, dapat digunakan rsync -avc --dry-run /sumber/direktori/ pengguna@ip-tujuan:/tujuan/direktori/. Di sini, parameter -c membandingkan file tidak hanya berdasarkan cap waktu dan ukuran tetapi juga berdasarkan checksum. Karena dapat menyebabkan beban CPU dan disk yang signifikan pada data besar, harus digunakan dengan hati-hati. Validasi tambahan ini memberikan kepercayaan untuk arsip kritis, file dump database, atau dokumen pelanggan.
Jika Anda telah memindahkan situs web, lakukan juga pemeriksaan pada tingkat aplikasi. Halaman utama, panel admin, unggahan gambar, halaman pembayaran, formulir kontak, dan log kesalahan harus ditinjau. Pada situs e-commerce, hanya memindahkan file tidak cukup; integrasi pembayaran dan tugas cron juga harus diuji di server baru.
Kesalahan Umum dan Solusinya
Kesalahan Permission Denied
Kesalahan ini biasanya terjadi karena izin pengguna SSH, izin menulis di direktori tujuan, atau verifikasi kunci. Pertama, coba sambungkan menggunakan SSH dengan pengguna yang sama. Jika koneksi berhasil, lakukan uji pembuatan file di direktori tujuan. Jika perlu, ubah kepemilikan folder tujuan menggunakan chown ke pengguna terkait atau rencanakan strategi berbasis sudo.
Kesalahan No Space Left on Device
Transfer akan terhenti jika tidak ada cukup ruang di disk tujuan. Periksa partisi disk dengan df -h. Kadang-kadang, disk utama tidak penuh tetapi /tmp atau titik mount tujuan penuh. Pada pemindahan besar, file log, cadangan lama, dan folder cache dapat dibersihkan. Solusi jangka panjang mungkin memerlukan peningkatan disk atau migrasi ke rencana VPS yang lebih besar.
Kesalahan Connection Reset atau Broken Pipe
Dalam transfer yang berlangsung lama, gangguan jaringan dapat terjadi. Jika Anda menggunakan --partial dan --append-verify, Anda dapat menjalankan kembali perintah untuk melanjutkan dari tempat yang tertinggal. Selain itu, pengaturan keepalive SSH dapat membantu. Di sisi klien, pengaturan ServerAliveInterval 60 dapat mengurangi kemungkinan koneksi terputus saat tidak aktif.
Transfer Sangat Lambat
Keterlambatan dapat disebabkan oleh jumlah file, batas I/O disk, beban kompresi, atau kapasitas jaringan. Jika ada banyak file kecil, membuat arsip tar terlebih dahulu mungkin lebih cepat dalam beberapa kasus; tetapi dalam hal ini, keuntungan perubahan berbasis file dari rsync berkurang. Uji dengan menghapus parameter -z pada file besar yang sudah terkompresi. Juga, gunakan alat seperti iotop, htop, dan iftop untuk menentukan apakah hambatan berasal dari CPU, disk, atau jaringan.
Praktik Terbaik untuk Keamanan
Keamanan tidak boleh diabaikan saat mentransfer file antar server. Khususnya akses root, kunci SSH, dan file cadangan harus dianggap sensitif. Pertama, disarankan untuk menggunakan kunci SSH daripada masuk dengan kata sandi. Izin file kunci harus dijaga ketat, kunci pribadi tidak boleh dibagikan, dan jika memungkinkan, harus dilindungi dengan passphrase.
Membuat pengguna sementara untuk transfer dan memberikan akses hanya ke direktori yang diperlukan adalah metode yang baik. Setelah proses selesai, izin pengguna ini dapat dicabut atau akun dinonaktifkan. Membatasi akses SSH hanya untuk alamat IP tertentu juga mengurangi permukaan serangan. Aturan firewall, Fail2ban, dan versi OpenSSH terbaru harus menjadi bagian dari kontrol dasar.
Jika file dump database, dokumen pelanggan, atau arsip yang mengandung data pribadi dipindahkan, file sementara yang tidak perlu harus dibersihkan setelah transfer. Selain itu, meninggalkan file cadangan seperti .sql, .zip, atau .tar di direktori root web menciptakan risiko keamanan yang serius. File-file ini sebaiknya disimpan di direktori yang tidak dapat diakses oleh web atau dihapus setelah proses selesai.
Pemanfaatan rsync untuk Cadangan Otomatis
rsync tidak hanya dapat digunakan untuk pemindahan satu kali, tetapi juga untuk pencadangan rutin. Misalnya, tugas cron dapat ditetapkan untuk mengirimkan folder tertentu ke server cadangan setiap malam. Dalam skenario ini, koneksi aman tanpa kata sandi dibuat dengan kunci SSH, rsync hanya mentransfer file yang berubah, dan batas bandwidth dapat diterapkan.
Logika contoh: rsync -a --delete --bwlimit=30000 /var/www/situs/ cadangan@ip-cadangan:/cadangan/situs/. Perintah ini dapat menyinkronkan direktori tujuan dengan sumber. Namun, karena parameter --delete, harus digunakan dengan hati-hati. Jika file di sumber dihapus secara tidak sengaja, file tersebut juga akan dihapus di tujuan. Oleh karena itu, dalam strategi pencadangan kritis, solusi berbasis snapshot, folder harian, atau dukungan versioning harus dipilih.
Dalam operasi hosting, aturan pencadangan 3-2-1 adalah acuan yang baik: minimal 3 salinan data, di 2 lingkungan berbeda, dan 1 salinan di lokasi yang berbeda harus disimpan. rsync memudahkan bagian dari salinan antar server dalam strategi ini. Untuk infrastruktur yang lebih komprehensif, Anda dapat memperkuat rencana Anda dengan konten Solusi Pencadangan dan layanan hosting korporat.
Daftar Periksa Terakhir
Sebelum memulai proses pemindahan file besar, menerapkan daftar pendek berikut dapat mengurangi risiko kesalahan. Daftar ini khususnya harus menjadi prosedur standar di lingkungan produksi.
- Apakah rsync terinstal di server sumber dan tujuan?
- Apakah koneksi SSH diuji dengan pengguna dan port yang benar?
- Apakah ada cukup ruang disk di server tujuan?
- Apakah proses awal diperiksa menggunakan --dry-run?
- Apakah mode pemeliharaan dan rencana sinkronisasi terakhir direncanakan untuk situs aktif?
- Jika --delete akan digunakan, apakah jalur tujuan telah diverifikasi dengan pasti?
- Apakah ukuran file, izin, dan pengujian aplikasi dilakukan setelah transfer?
- Apakah file cadangan sementara dan file dump dibersihkan dengan aman?
Kontrol ini mungkin terlihat sederhana, tetapi dalam praktiknya, masalah yang paling sering terjadi biasanya disebabkan oleh direktori tujuan yang salah, izin yang hilang, ruang disk yang tidak memadai, dan transisi DNS yang tidak terencana. Proses rsync yang terencana dapat mempersingkat waktu pemindahan dan meningkatkan kemungkinan pemulihan.
Pertanyaan yang Sering Diajukan
Jika koneksi terputus saat menggunakan perintah rsync melalui SSH, apakah transfer akan dimulai dari awal?
Tidak, jika parameter yang benar digunakan, transfer tidak akan dimulai dari awal. Pilihan --partial dan --append-verify membantu menjaga file besar yang tertunda dan memungkinkan perintah untuk melanjutkan dari tempat terakhir. Namun, untuk pemindahan yang kritis, baiknya periksa ruang disk tujuan dan status file parsial sebelum menjalankan kembali perintah.
Apakah rsync dapat digunakan untuk memindahkan database secara langsung?
rsync hanya mentransfer file; menyalin file database yang sedang berjalan secara langsung tidak sehat. Untuk MySQL atau MariaDB, alat mysqldump atau alat cadangan fisik harus digunakan, dan file cadangan yang dihasilkan harus ditransfer ke server tujuan menggunakan rsync. Dalam sistem yang aktif, untuk menjaga konsistensi data, mode pemeliharaan atau strategi replikasi harus direncanakan.
Apakah akses root diperlukan di kedua server untuk menggunakan rsync?
Akses root tidak diperlukan. Pengguna yang memiliki izin menulis di direktori tujuan sudah cukup. Namun, jika kepemilikan file, direktori sistem, ACL, atau izin khusus perlu dijaga, izin yang lebih tinggi mungkin diperlukan. Secara keamanan, lebih baik melakukan proses dengan pengguna yang memiliki izin terbatas sebisa mungkin.
Apakah parameter --delete aman?
--delete sangat berguna untuk menyinkronkan direktori tujuan dengan sumber secara identik jika digunakan dengan benar; namun, jika digunakan di direktori tujuan yang salah, dapat menyebabkan kehilangan file. Oleh karena itu, perintah yang mengandung --delete harus selalu diuji terlebih dahulu dengan --dry-run, dan jalur sumber dan tujuan harus diverifikasi dengan cermat.
Antara rsync dan scp, mana yang lebih baik untuk transfer file besar?
Bergantung pada kebutuhan, scp mungkin cukup untuk penyalinan kecil sekali saja; namun, untuk file besar, banyak file, dan sinkronisasi berulang, rsync umumnya lebih baik. Karena ia dapat mendeteksi data yang berubah, melanjutkan transfer yang tertunda, membatasi bandwidth, dan menawarkan mode uji.
Ringkasan dan Langkah Selanjutnya
Memindahkan file besar antara dua server menggunakan perintah rsync melalui SSH adalah metode yang cepat, aman, dan dapat dikelola. Dengan parameter yang tepat, hal ini dapat tahan terhadap putusnya koneksi, menghemat waktu dengan hanya mentransfer file yang berubah, dan mengurangi pemadaman selama proses pemindahan situs yang aktif. Untuk hasil terbaik, lakukan pemeriksaan SSH dan disk terlebih dahulu, uji dengan --dry-run, lalu rencanakan transfer utama dengan cermat.
Jika Anda merencanakan migrasi ke server baru, penyimpanan berkapasitas tinggi, atau infrastruktur hosting yang lebih berkinerja tinggi, Anda dapat memeriksa solusi dari Hostragons; dengan pilihan VPS, hosting, domain, dan SSL sesuai kebutuhan Anda, Anda dapat membuat proses pemindahan lebih aman. Mulailah dengan uji kecil untuk transisi tanpa masalah, ukur hasilnya, dan rencanakan sinkronisasi terakhir dengan baik.