client_111111 2023-09-24 21:42 采纳率: 0%
浏览 20

安装hadoop时只有切换为root用户才能启动node

安装Hadoop时,进行到“执行/usr/local/hadoop目录下的sbin/start-dfs.sh文件”时,怎么也无法启动namenode 与datanode(输入jps查看进程时只输出一个jps,且重启也没有反应),查看提示信息,1、chown: 正在更改"/usr/local/hadoop/logs" 的所有者: 不允许的操作;2、无法打开"/usr/local/hadoop/logs/hadoop-hadoop-datanode-master.out" 读取数据: 没有那个文件或目录),我打开日志目录查看日志,发现里面的日志文件名都是hadoop-root-namenode(略)等而不是hadoop-hadoop-namenode(略) ,然后切换成root用户,就能启动namenode和datanode 了
参考教程 https://dblab.xmu.edu.cn/blog/190/

  • 写回答

1条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-09-24 23:33
    关注

    引自免费应用 皆我百晓生 小程序,希望对题主有所帮助,如有帮助,还请采纳。


    这个问题是因为在安装Hadoop时,使用的是非root用户进行安装并启动节点。当使用非root用户执行start-dfs.sh脚本时,由于权限的问题无法更改logs文件夹的所有者。这导致了无法启动namenode和datanode。

    为了解决这个问题,可以尝试以下两个方法:

    1. 使用root用户重新设置logs文件夹的所有者:

      sudo chown -R <非root用户名>:<非root用户组名> /usr/local/hadoop/logs
      

      然后再使用非root用户执行start-dfs.sh脚本。

    2. 使用root用户重新安装Hadoop并启动节点:

      • 删除之前非root用户安装的Hadoop文件夹:
        sudo rm -rf /usr/local/hadoop
        
      • 使用root用户重新安装Hadoop:
        sudo tar -zxvf hadoop-x.x.x.tar.gz -C /usr/local
        sudo chown -R <非root用户名>:<非root用户组名> /usr/local/hadoop
        
      • 切换回非root用户,执行start-dfs.sh脚本启动节点。

    这两种方法都可行,选择适合你的情况的方法来解决问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 9月24日

悬赏问题

  • ¥66 关于川崎机器人调速问题
  • ¥15 winFrom界面无法打开
  • ¥15 crossover21 ARM64版本安装软件问题
  • ¥15 mymetaobjecthandler没有进入
  • ¥15 mmo能不能做客户端怪物
  • ¥15 osm下载到arcgis出错
  • ¥15 Dell g15 每次打开eiq portal后3分钟内自动退出
  • ¥200 使用python编写程序,采用socket方式获取网页实时刷新的数据,能定时print()出来就行。
  • ¥15 matlab如何根据图片中的公式绘制e和v的曲线图
  • ¥15 我想用Python(Django)+Vue搭建一个用户登录界面,但是在运行npm run serve时报错了如何解决?