Bagaimana Anda menggunakan file identitas dengan rsync?
Ini adalah sintaks yang menurut saya harus saya gunakan dengan rsync untuk menggunakan file identitas untuk terhubung:
rsync -avz -e 'ssh -p1234 -i ~ / .ssh / 1234-identitas' \ "/ local / dir /" [email protected]: "/ remote / dir /"
Tapi itu memberi saya kesalahan:
Peringatan: File identitas ~ / .ssh / 1234-identitas tidak dapat diakses: File atau direktori tersebut tidak ada.
File ini baik-baik saja, izin ditetapkan dengan benar, berfungsi saat melakukan ssh - tidak dengan rsync - setidaknya dalam sintaks saya. Apa yang saya lakukan salah? Apakah itu mencoba mencari file identitas di mesin jarak jauh? Jika demikian, bagaimana cara menentukan bahwa saya ingin menggunakan file identitas di komputer lokal saya ?
User ubuntu
saat mengkonfigurasi untuk instance Ubuntu EC2 :) Terima kasih!fish
) maka lakukaneval (ssh-agent -c)
Gunakan salah satunya
$HOME
atau jalur lengkap ke kunci:
Diuji dengan rsync 3.0.9 di Ubuntu
sumber
$HOME
tidak akan berfungsi di dalam tanda kutip sederhana (tanpa perluasan variabel), jadi Anda harus menggunakan tanda kutip ganda atau jalur absolut."$HOME"
atau$HOME
tanpa perbedaan (juga"${HOME}"
memungkinkan, jika Anda ingin membuatnya rumit)Anda harus menentukan jalur absolut ke file kunci identitas Anda. Ini mungkin semacam quirck di rsync. (Lagipula tidak bisa sempurna)
Saya mengalami masalah ini beberapa hari yang lalu :-)
sumber
Ini berhasil untuk saya
sumber
/home/user/.ssh/1234-identity
. Kemudian berhasil. Mungkin karena cangkangnya berbeda, seperti yang dikemukakan dalam jawaban Darhuuk.Apakah Anda menjalankan perintah di bash atau sh? Ini mungkin membuat perbedaan. Coba ganti
~
dengan$HOME
. Coba kutip ganda string untuk-e
opsi tersebut.sumber
gunakan file kunci dengan rsync:
sumber