我在ubuntu 14.04上为hadoop安装采取了所有必要的步骤。 但是当我尝试在“hadoop namenode”-format'之后运行“start-all.sh”时,它显示错误(主要是):
Starting namenodes on [localhost]
pdsh@k-Inspiron-5537: localhost: rcmd: socket: Permission denied
Starting datanodes
pdsh@k-Inspiron-5537: localhost: rcmd: socket: Permission denied
Starting secondary namenodes [k-Inspiron-5537]
pdsh@k-Inspiron-5537: k-Inspiron-5537: rcmd: socket: Permission denied
Starting nodemanagers
pdsh@k-Inspiron-5537: localhost: rcmd: socket: Permission denied
如何给予pdsh包权限? 请有人帮帮我吗?
答案 0 :(得分:0)
尝试给出start-all.sh的完整路径。
尝试运行:
<div class="nav">
<ul>
<li><a href="space-page-home.html">Home</a></li>
<li><a href="">About</a></li>
<li><a href="space-page-blog.html" id="btn">Blog</a></li>
<li><a href="space-page-pics.html">Space Pics</a></li>
</ul>
</div>
由于start-all.sh和stop-all.sh位于sbin目录中,而hadoop二进制文件位于bin目录中。
还更新了.bashrc:
hduser@ubuntu:~$ /usr/local/hadoop/sbin/start-all.sh
以便您可以直接访问start-all.sh
答案 1 :(得分:0)
安装时可能错过的是“无密码ssh”或未正确配置。
您需要做的是:
1)使用“ sudo apt-get install ssh ”安装 ssh 。
2)使用 ssh-keygen -t rsa -P'' - f~ / .ssh / id_rsa 生成SSH密钥。
3)现在使用公共rsa密钥将密码减去ssh使用 cat~ / .ssh / id_rsa.pub&gt;&gt;〜/ .ssh / authorized_keys 文件 authorized_keys 强>
4)然后使用 chmod 0600~ / .ssh / authorized_keys
授予此新文件的权限5)现在尝试使用 ssh localhost 进行ssh。它会询问“你确定要继续连接(是/否)?”然后键入yes。
在第一步之后,您将消息显示为永久添加'localhost'(ECDSA)到已知主机列表,然后您已成功配置PasswordLess ssh。
现在尝试格式化namenode,然后运行命令 start-all.sh 。请关注this了解更多信息。
<强>编辑:强>
在pdsh错误下面尝试以下命令:“rcmd:socket:Permission denied”
echo "ssh" > /etc/pdsh/rcmd_default
答案 2 :(得分:0)
我也遇到了同样的事情,我这样做了我发现我的pdsh默认rcmd是rsh,而不是ssh,rsh和ssh远程登录验证不一样,安装hadoop时我配置了ssh localhost无密码登录,但是rsh是不可能的。
这样,尝试:
1.检查你的pdsh默认rcmd rsh
pdsh -q -w localhost 看看你的pdsh默认rcmd是什么。
2.将pdsh的默认rcmd修改为ssh
导出PDSH_RCMD_TYPE = ssh 你可以添加到〜/ .bashrc和source~ / .bashrc
3.sbin / start-dfs.sh