最近在学习hadoop,在使用启动和中止hadoop命令的时候,总是提示输入密码,以下:ssh
这很烦人。心想能不能去掉这个提示,因而在百度上搜索了一番,按照网上提供方法进行了一番操做。oop
首先,生成密钥,输入命令:ssh-keygen -t rsa,接着在后续的几个操做中,连续回车,结果,出现错误:Permission denied。学习
这里,我有点疑惑,ls查看root路径下,却没发现存在.ssh目录。最后利用ls -la3d
命令,果真看到了.ssh。blog
接着,输入命令:chmod 700 .ssh,修改权限,又是不顺,出现下面的错误:hadoop
百度一搜,尝试先输入命令:sudo chattr -i .ssh ,再执行sudo chmod 700 .sshio
没再报错。百度
从新执行一遍命令:ssh-keygen -t rsa,此次顺利经过。搜索
再ls查看.ssh路径,发现多了2个目录:rsa
继续操做,输入命令:cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
又是发生错误:
跟以前遇到的问题差很少,因而执行sudo chattr -i authorized_keys,
再执行chmod 600 authorized_keys,OK!
最后一步,输入cat /root/.ssh/authorized_keys,返回结果:
至此,美滋滋地再操做hadoop命令,结果仍是须要输入密码:
迎头就是一棒。
再通过一番摸索,最终在执行chmod 700 ~/.ssh和chmod 600 ~/.ssh/authorized_keys命令后,再也不提示我输入密码。
Great!终于解决了问题!