安装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/
安装hadoop时只有切换为root用户才能启动node
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
关注 引自免费应用
皆我百晓生
小程序,希望对题主有所帮助,如有帮助,还请采纳。
这个问题是因为在安装Hadoop时,使用的是非root用户进行安装并启动节点。当使用非root用户执行start-dfs.sh脚本时,由于权限的问题无法更改logs文件夹的所有者。这导致了无法启动namenode和datanode。
为了解决这个问题,可以尝试以下两个方法:
使用root用户重新设置logs文件夹的所有者:
sudo chown -R <非root用户名>:<非root用户组名> /usr/local/hadoop/logs
然后再使用非root用户执行start-dfs.sh脚本。
使用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脚本启动节点。
- 删除之前非root用户安装的Hadoop文件夹:
这两种方法都可行,选择适合你的情况的方法来解决问题。
解决 无用评论 打赏 举报
悬赏问题
- ¥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时报错了如何解决?