搭hadoop全分布式时需要先ssh免密登陆的。
ssh免密登录
想实现在一台机子上免密登录当前机子(想干什么操作需要输入密码时,就可以不用输密码而继续执行了),或者登录其他机子的时候,就要用到密钥登录。
例如:想在cent01这台机子登录另一台cent02
密钥和公钥存放的位置在隐藏目录-------------- ~/.ssh 下
1,先ssh cent02 -------------------------- 这里需要输入密码才能登陆,确认身份,表示是谁来过,则cent02会有他的id记录
2.在cnet01上生产自己的密钥对------------ ssh-keygen -t rsa ------------- 这一步会在~/.ssh目录(须指定这个目录下,要不然生成的文件是在当前目录下的.ssh/ 里)下生成两个文件 id-rsa和id-rsa.pub
id-rsa 里就是cent当前用户的密码,只不过是加密的密钥形式,看不出是多少,
3.将cent01的公钥拷贝到cent02 --------------------- (cent01下执行) ssh-copy-id cent02 ----------------这部会在cent02下~/.ssh目录下生成 autherized-keys ,里面放的是拷贝过去的cent01当前用户的密钥。
4.再 ssh cent02 -------------- ok,不需要密码,直接登陆上了。
如果想在当前机子实现当前用户的免密登录,只需要在当前机子执行 以上两个命令即可。
如:免密登陆关闭hdfs