在配置好了hadoop基础开发环境过后尝试执行sudo sbin/start-dfs.sh出现了下列问题,
Starting namenodes on [localhost]
localhost: root@localhost: Permission denied (publickey,password).
网上查了一下说是配置ssh免登录的问题解决了就行了。但我其实是配置好了本地免登录在进行的这一步,当我执行ssh localhost时可以免密码登录,但是当我执行ssh root@localhost时不能免密码登录并且输入正确密码就会报错:
ermission denied (publickey,password),
这是因为在/etc/ssh/sshd_config中有一个属性为PermitRootLogin ,他的默认值不允许进行密码登录,我们需要将其改为yes
sudo vim /etc/ssh/sshd_config
1
//在里面添加,可以直接添加,也可以找到对应属性取消注释然后修改值
PermitRootLogin:yes
1
然后使用重启ssh服务器
sudo service ssh restart
1
这样之后我们就可以使用ssh root@localhost输入密码然后登录,下一步是需要将root@localhost实现免密码登录
ssh-keygen -t rsa
ssh-copy-id -i .~/ssh/id_rsa.pub root@localhost
1
2
这样我们就实现了root@localhost的免密码登录,一般用户可能做到这里再执行sudo sbin/start-dfs.sh就没有问题了
但是有部分人可能还是会出现上诉问题,这里我这边的解决办法是使用
进入了root用户,然后再root用户里面再使用
ssh localhost
1
发现在这里使用ssh root@localhost又不是免密码登录了,再进行上诉操作,然后exit退出退出两次回到一开始的用户现在就能正常使用sudo sbin/start-dfs.sh命令了
上诉操作中不管有哪里不能用ssh免密码登录,就将他设置好免密码登录就可以了
因为已经解决了问题所以就不重装一次系统给你们放图片了
有问题欢迎私聊一起探讨
Starting namenodes on [localhost]
localhost: root@localhost: Permission denied (publickey,password).
————————————————
版权声明:本文为CSDN博主「阿嚏piu」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_44166946/article/details/109808363