Pertanyaan yang sangat pemula!
Saya sedang mengerjakan dua server yang berbeda, keduanya merupakan bagian dari cluster AWS Amazon yang sama. Mereka tidak dijalankan oleh saya.
Pada satu sesi ssh, terminal memungkinkan saya melengkapi otomatis. Di sesi lain, tidak - saya berharap begitu.
Mengapa ini - apakah ini opsi yang ditetapkan oleh administrator server?
Dan bisakah saya melakukan sesuatu tentang hal itu?
Terima kasih!
You may not change the shell for 'counterstrike'.
Ini adalah kombinasi dari shell yang digunakan dalam sesi ssh Anda dan juga konfigurasinya.
Meskipun shell Anda mendukung pelengkapan otomatis, shell mungkin tidak dikonfigurasikan untuknya. Jika Anda menggunakan bash shell, Anda dapat mengedit file .bashrc lokal Anda untuk yang berikut untuk menyediakan pelengkapan otomatis.
sumber
Disalin dari jawaban saya sendiri di unix.SE :
Tampaknya secara khusus di Ubuntu entri di
~/.ssh/known_hosts
hash , jadi penyelesaian SSH tidak dapat membacanya. Ini adalah fitur, bukan bug. Bahkan dengan menambahkanHashKnownHosts no
ke~/.ssh/config
dan/etc/ssh/ssh_config
saya tidak dapat mencegah hashing tuan rumah.Namun, host yang saya minati juga ditemukan
~/.ssh/config
. Berikut ini adalah skrip untuk Bash Completion yang membaca entri dari file itu:Masukkan script itu
/etc/bash_completion.d/ssh
dan kemudian sumber dengan perintah berikut:Saya menemukan panduan ini sangat berharga dan saya tidak akan dapat menulis tanpa ini. Terima kasih Steve Kemp untuk menulis panduan hebat itu!
sumber
IIRC itu juga bisa menjadi masalah yang ssh hash nama host di ~ / .ssh / known_hosts
kebanyakan instalasi saya tahu menggunakan ~ / .ssh / known_hosts sebagai sumber untuk daftar host yang tersedia untuk penyelesaian, tetapi beberapa sistem juga mulai mengatur "HashKnownHosts ya", yang melarang menggunakan known_hosts sebagai sumber ....
jika baris host yang dikenal mulai dengan sesuatu seperti
kemudian hashing diaktifkan.
sumber