解决hadoop@ubuntu:~$老以ubuntu作…

  许多人抱怨ubuntu系统,大概就是一些讨厌的预设配置,比如说hostname。最近做hadoop虚拟机集群,配完ssh密钥以后,发现互相登录——诶?怎么大家都叫做xxx@ubuntu?卧槽……这怎么整……Orz
  这样不行啊。记得老早刚学习hadoop的时候就被这个ubuntu的hostname困扰不已,之前配成功了估计还是靠着运气。而这运气也并不是完全行得通,会出现启动hadoop要把/etc/hosts中的ubuntu留着,而启动oozie要把/etc/hosts里面的ubuntu注释掉。我就说怎么可能有这么愚蠢的逻辑。
  果然原因是/etc/hostname里面设置了ubuntu的结果。果断改成相应的命名,如bigmaster、big1、big2等等。然后在/etc/hosts里面设置相应的ip地址。

/etc/hostname文件:
bigmaster

/etc/hosts文件:
127.0.0.1             localhost
192.168.136.134 bigmaster

这样重启linux以后,登录进去就不会出现
hadoop@ubuntu:~$
这样的命令行了,而是会出现这样的:
hadoop@bigmaster:~$

  同时注意,执行ssh-keygen命令的时候,生成的公钥后面也会带有ubuntu的hostname。为了避免后期出现毛病,最好重新生成一遍ssh,或者重新配置一遍。直接改那个public key不是特别好。

【按照 《虚拟机Hadoop实战(二)详细步骤》方法配置3台机子相互免密登录失败】
这回生成的rsa密钥文件如下:
~/.ssh/id_rsa       (hadoop@bigmaster)
~/.ssh/id_rsa1     (hadoop@big1)
~/.ssh/id_rsa2      (hadoop@big2)
结果只有第一台机子bigmaster能免密登录到其它所有的机子,big1和big2均不行。
最后发现原因是ssh密钥文件命名是固定的,不能随意更改的。
遂将其全部改成不带数字结尾的id_rsa
同理id_rsa1.pub等也改成id_rsa.pub的形式
authorized_keys文件原封不动即可

【解决】测试后发觉各台机子免密登录都成功了






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值