在设置hadoop时ssh出错

9rbhqvlz  于 2021-06-03  发布在  Hadoop
关注(0)|答案(3)|浏览(368)

我是hadoop的新手。我在我的电脑上安装了Ubuntu12.10,我想在一个节点上以伪分布式模式安装hadoop。我搜索了很多教程,但是我在ssh上遇到了问题。我按照教程说的做了。我确信问题出在ssh上。我得到了openssh服务器,并且做了以下工作:
hadoop00@websoftstation用法:~$ssh keygen-t dsa-p”“-f~/.ssh/id\u dsahadoop00@websoftstation:~/.ssh$cat~/.ssh/id_dsa.pub>>授权的\u密钥
然后我可以成功地用ssh连接本地主机,如下所示:
hadoop00@websoftstation:~$ssh本地主机
成功了。所以我改变了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:权限被拒绝,请重试。
那么,有什么问题吗?

thigvfpy

thigvfpy1#

您需要将hadoop文件夹的权限更改为 hadoop00 用户:

cd /usr/local/
sudo chown -R hadoop00:hadoop00 /usr/local/hadoop

那你就可以了 cd 进入 sbin 文件夹和运行没有 sudo . 如果你使用 sudo 你是在用 root 它有不同的环境变量,这就是为什么你有不同的行为。

jm2pwxwz

jm2pwxwz2#

你为什么用这个 sudo 这显然是一个许可问题。
试着在没有 sudo ```
bin/start-all.sh

wfauudbj

wfauudbj3#

您只为当前帐户设置了无密码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脚本将在每个节点中代表您费劲地执行该操作。

相关问题