Saya memiliki satu server ubuntu yang lebih lama, dan satu server debian yang lebih baru dan saya memigrasikan data dari yang lama ke yang baru. Saya ingin menggunakan rsync untuk mentransfer data agar migrasi akhir lebih mudah dan lebih cepat daripada proses tar / scp / untar yang setara.
Sebagai contoh, saya ingin menyinkronkan folder beranda satu per satu ke server baru. Ini memerlukan akses root di kedua ujungnya karena tidak semua file di sisi sumber dapat dibaca dunia dan tujuannya harus ditulis dengan izin yang benar ke / home. Saya tidak tahu bagaimana cara memberikan akses root rsync di kedua sisi.
Saya telah melihat beberapa pertanyaan terkait, tetapi tidak ada yang cocok dengan apa yang saya coba lakukan.
Saya telah mengatur sudo dan bekerja di kedua server.
Jika data Anda tidak terlalu sensitif, Anda bisa menggunakan
tar
dansocat
. Dalam pengalaman saya, ini seringkali lebih cepat daripadarsync
over ssh.Anda membutuhkan
socat
ataunetcat
di kedua sisi.Pada host target, buka direktori tempat Anda ingin meletakkan data Anda, setelah itu jalankan:
socat TCP-LISTEN:4444 - | tar xzf -
Jika host target mendengarkan, mulailah dengan sumber seperti:
tar czf - /home/fred /home/ | socat - TCP:ip-of-remote-server:4444
Untuk pengaturan ini, Anda memerlukan koneksi yang andal antara 2 server.
sumber
Ok, saya telah mengumpulkan semua petunjuk untuk mendapatkan sesuatu yang bekerja untuk saya.
Mari kita memanggil server "src" & "dst".
Siapkan pasangan kunci untuk root pada server tujuan, dan salin kunci publik ke server sumber:
Tambahkan kunci publik ke kunci resmi root di server sumber
Kembali ke server tujuan, tarik data dengan rsync:
sumber