Saya selalu digunakan untuk menggunakan perintah berikut ketika menyalin dari server:
rsync --progress -avze ssh user@host:/path/to/files ./here
. Namun, seorang teman pikiran menunjukkan kepada saya bahwa saya bisa melakukannya rsync --progress -avz user@host:/path/to/files ./here
. Jadi pertanyaannya adalah, jika Anda tidak perlu -e ssh
mengapa ada?
22
-i
opsi untuk ssh atau rsync dalam contoh Anda? Dan jika itu untuk ssh, apakah itu bekerja tanpa tanda kutip tunggal di sekitar perintah?Anda tidak perlu -e ssh untuk menggunakan ssh. Bahkan, jika Anda menentukan target sebagai pengguna @ host: / path / ke / file, Anda menggunakan ssh secara default. Itu dibiarkan dalam a) untuk alasan kompatibilitas dan b) kasus pinggiran di mana Anda mungkin memiliki kombinasi host rsyncd dan ssh.
sumber
Itu tergantung pada apa yang ditentukan untuk
--with-rsh
opsi konfigurasi pada waktu kompilasi. Default sekarang ssh jika opsi ini tidak ditentukan. Sudah rsh pada suatu waktu di masa lalu, namun bahkan jika itu rsh, Mungkin tidak diperlukan karena ssh mungkin merupakan implementasi rsh default pada banyak kotak. Pada semua komputer saya, misalnyareadlink -f $(which rsh)
menunjukkan bahwa rsh sebenarnya hanyalah sebuah symlink yang menunjuk ke / usr / sbin / sshsumber