hadoop部署需要ssh免密碼登錄.
在官方網站上就兩句話:
1.$ ssh-keygen -t rsa -P ''
2.$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
但是在我的機器上出現了很多的問題,導致一直ssh還是需要密碼,在這裏一一寫下:
1.authorized_keys的權限必須是600的.而生成默認的不是
所以使用一下命令:
$ chmod 600 authorized_keys
順帶,還有.ssh這個文件夾的目錄的權限聽說也得是700,但是我看了下,我的默認就是700.
2.弄完了後測試ssh localhost
還是要密碼,以前也沒注意是什麼原因,直接百度"ssh配置後還需要密碼",出來一大堆,試了全不行.
幾天後發現不能亂來,於是去百度"Agent admitted failure to sign using the key"
這個是的答案似乎有些接近了:
網上的情況都是跟我這個類似的,應該說就是這個問題..解決方法是使用ssh-add 命令
但是使用ssh-add的時候又遇到了問題:
於是去查找這句話的解決方法:
執行ssh-agent bash即可
然後再執行
ssh-add id_rsa
這個時候再ssh localhost 成功.
3.總結:
1.$ ssh-keygen -t rsa -P ''
2.$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
3.$chmod 600 ~/.ssh/authorized_keys
4.ssh localhost 成功則完成,如果顯示跟我一樣的錯誤>>5
5.ssh-add ~/.ssh/id_rsa 成功則再嘗試ssh localhost ,跟我一樣的錯誤原因>>6
6.ssh-agent bash 然後繼續>>5