GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana Cara Rsync File Antara Dua Remote?

Saya ingin mentransfer file antara dua host jarak jauh menggunakan shell lokal, tetapi tampaknya rsync tidak mendukung sinkronisasi jika dua remote ditentukan sebagai berikut:

$ rsync -vuar host1:/var/www host2:/var/www
The source and destination cannot both be remote.

Apa solusi/perintah lain yang dapat saya gunakan untuk mencapai hasil yang serupa?

Jawaban yang Diterima:

Seperti yang Anda temukan, Anda tidak dapat menggunakan rsync dengan sumber jarak jauh dan tujuan jarak jauh. Dengan asumsi kedua server tidak dapat berbicara langsung satu sama lain, dimungkinkan untuk menggunakan ssh untuk melakukan tunnel melalui mesin lokal Anda.

Alih-alih

rsync -vuar host1:/var/www host2:/var/www

Anda dapat menggunakan ini

ssh -R localhost:50000:host2:22 host1 'rsync -e "ssh -p 50000" -vuar /var/www localhost:/var/www'

Jika Anda bertanya-tanya, -R opsi mengatur saluran terbalik dari port 50000 pada host1 yang memetakan (melalui mesin lokal Anda) ke port 22 pada host2. Tidak ada koneksi langsung dari host1 ke host2.


Linux
  1. CentOS / RHEL :Cara memutar file /var/log/wtmp dan /var/log/btmp menggunakan logrotate

  2. Cara menonaktifkan penghapusan otomatis file di direktori /tmp dan /var/tmp di CentOS / RHEL 5,6

  3. Bagaimana cara menghapus file yang dibuat antara dua kali?

  1. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  2. Bagaimana cara menginisialisasi ulang file /var/lib/mysql?

  3. Haruskah situs web berada di /var/ atau /usr/ sesuai dengan penggunaan yang disarankan?

  1. Bagaimana Cara Selektif Membungkam Rsync?

  2. Cara memindahkan /usr dan /var ke Partisi atau Disk Lain

  3. Cara mendapatkan perbedaan (hanya penambahan) antara dua file di linux