【问题标题】:Something goes wrong with the SSH while setting up hadoop设置 hadoop 时 SSH 出现问题
【发布时间】:2013-03-17 11:21:35
【问题描述】:

我是 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 本地主机
有效。 于是我把路径改成了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:权限被拒绝,请重试。
那么,有什么问题呢?

【问题讨论】:

    标签: configuration hadoop ssh


    【解决方案1】:

    你为什么使用sudo 这显然是一个权限问题。

    尝试在不使用 sudo 的情况下运行它

    bin/start-all.sh
    

    【讨论】:

      【解决方案2】:

      您仅为当前帐户设置了无密码 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 脚本会在每个节点中代表您执行此操作。

      【讨论】:

        【解决方案3】:

        您需要将 Hadoop 文件夹的权限更改为由 hadoop00 用户拥有:

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

        然后你可以cd 进入sbin 文件夹并在没有sudo 的情况下运行东西。如果您使用 sudo,则您以 root 的身份运行脚本,它具有不同的环境变量等,这就是您有不同行为的原因。

        【讨论】:

          猜你喜欢
          • 2012-06-07
          • 1970-01-01
          • 1970-01-01
          • 2013-05-28
          • 2021-10-16
          • 1970-01-01
          • 2014-11-30
          • 1970-01-01
          • 2018-03-16
          相关资源
          最近更新 更多