我是 hadoop 的新手。我在计算机上安装了 Ubuntu 12.10,我想在单个节点上以伪分布式模式安装 Hadoop。我搜索并获得了很多教程,但我遇到了 SSH 问题。我按照教程说的做了。
我确定问题出在 SSH 上。我得到了 openssh-server,并且这样做了:
hadoop00@WebsoftStation:~$ssh-keygen -t dsa -P ""-f ~/.ssh/id_dsa
hadoop00@WebsoftStation:~/.ssh$cat ~/.ssh/id_dsa.pub >> authorized_keys
然后我可以像这样成功地通过 ssh 我的本地主机:
hadoop00@WebsoftStation:~$ssh localhost
有效。
所以我改变了 hadoop 的路径然后:
hadoop00@WebsoftStation:/usr/local/hadoop$ sudo bin/start-all.sh
[sudo] hadoop00 的密码:
启动namenode,记录到/usr/local/hadoop/libexec/../logs/hadoop-root-namenode-WebsoftStation.out
root@localhost 的密码:
root@localhost 的密码:localhost: 权限被拒绝,请重试。
那么,问题是什么?
最佳答案
您只为当前帐户设置了无密码 ssh。因为,当您可以毫无问题地使用 ssh localhost 时,接下来需要做的就是为您的脚本授予执行权限。 执行以下命令:
chmod +x bin/*.sh ---> assigns execution permission to all the scripts
./start.all ----> executes the script
注意:Hadoop 也可以在没有使用 hadoop-daemon.sh 脚本设置无密码 ssh 的情况下运行。无密码 ssh 的唯一优势是,./start.all 脚本会在每个节点中代表您不厌其烦地执行此操作。
关于configuration - 设置 hadoop 时 SSH 出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15657821/