在 ubuntu 12.04lts 上安装 hadoop 时出现 start-all.sh 错误
Posted
技术标签:
【中文标题】在 ubuntu 12.04lts 上安装 hadoop 时出现 start-all.sh 错误【英文标题】:start-all.sh error while installing hadoop on ubuntu 12.04lts 【发布时间】:2013-02-28 13:52:03 【问题描述】:hadoop-1.1.1 安装我一直在参考this link。
我的所有文件和权限都已根据此链接设置。 但我收到此错误。请帮助。
hduser@ubuntu:/usr/local/hadoop$ bin/start-all.sh mkdir: 无法创建 目录
/usr/local/hadoop/libexec/../logs': Permission denied chown: cannot access
/usr/local/hadoop/libexec/../logs':没有这样的文件 或目录开始namenode,登录到 /usr/local/hadoop/libexec/../logs/hadoop-hduser-namenode-ubuntu.out /usr/local/hadoop/bin/hadoop-daemon.sh:第 136 行: /usr/local/hadoop/libexec/../logs/hadoop-hduser-namenode-ubuntu.out: 没有这样的文件或目录头:无法打开/usr/local/hadoop/libexec/../logs/hadoop-hduser-namenode-ubuntu.out' for reading: No such file or directory localhost: mkdir: cannot create directory
/usr/local/hadoop/libexec/../logs':权限被拒绝 本地主机:chown:无法访问/usr/local/hadoop/libexec/../logs': No such file or directory localhost: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-hduser-datanode-ubuntu.out localhost: /usr/local/hadoop/bin/hadoop-daemon.sh: line 136: /usr/local/hadoop/libexec/../logs/hadoop-hduser-datanode-ubuntu.out: No such file or directory localhost: head: cannot open
/usr/local/hadoop/libexec/../logs/hadoop-hduser-datanode-ubuntu.out' 阅读:没有这样的文件或目录本地主机:mkdir:无法创建 目录/usr/local/hadoop/libexec/../logs': Permission denied localhost: chown: cannot access
/usr/local/hadoop/libexec/../logs': 没有这样的文件或目录 localhost:正在启动 secondarynamenode, 登录到 /usr/local/hadoop/libexec/../logs/hadoop-hduser-secondarynamenode-ubuntu.out 本地主机:/usr/local/hadoop/bin/hadoop-daemon.sh:第 136 行: /usr/local/hadoop/libexec/../logs/hadoop-hduser-secondarynamenode-ubuntu.out: 没有这样的文件或目录 localhost:head: 无法打开/usr/local/hadoop/libexec/../logs/hadoop-hduser-secondarynamenode-ubuntu.out' for reading: No such file or directory mkdir: cannot create directory
/usr/local/hadoop/libexec/../logs':权限被拒绝 chown:不能 访问/usr/local/hadoop/libexec/../logs': No such file or directory starting jobtracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-hduser-jobtracker-ubuntu.out /usr/local/hadoop/bin/hadoop-daemon.sh: line 136: /usr/local/hadoop/libexec/../logs/hadoop-hduser-jobtracker-ubuntu.out: No such file or directory head: cannot open
/usr/local/hadoop/libexec/../logs/hadoop-hduser-jobtracker-ubuntu.out' 阅读:没有这样的文件或目录本地主机:mkdir:无法创建 目录/usr/local/hadoop/libexec/../logs': Permission denied localhost: chown: cannot access
/usr/local/hadoop/libexec/../logs': 没有这样的文件或目录 localhost:启动 tasktracker,登录到 /usr/local/hadoop/libexec/../logs/hadoop-hduser-tasktracker-ubuntu.out 本地主机:/usr/local/hadoop/bin/hadoop-daemon.sh:第 136 行: /usr/local/hadoop/libexec/../logs/hadoop-hduser-tasktracker-ubuntu.out: 没有这样的文件或目录 localhost:head: 无法打开 `/usr/local/hadoop/libexec/../logs/hadoop-hduser-tasktracker-ubuntu.out' 供阅读:没有这样的文件或目录
【问题讨论】:
你在执行“bin/start-all.sh”之前是否格式化了namenode。看起来您的名称节点格式不正确。 另外请检查/usr/local/hadoop/log/
的权限。可以hduser
访问这个目录吗?
***.com/questions/11672672/…
【参考方案1】:
由于错误表明您遇到了权限问题。 你需要给 hduser 适当的权限。试试:
sudo chown -R hduser /usr/local/hadoop/
【讨论】:
【参考方案2】:运行此命令更改hadoop目录的权限
sudo chmod 750 /app/hadoop
【讨论】:
【参考方案3】:以下是 2 条非常有用的建议:
检查一下HADOOP_HOME和JAVA_HOME是否设置好了 .bashrc 文件。有时,不设置这些环境变量 启动hadoop集群时也可能导致错误。
通过查看 /usr/local/hadoop/logs 目录中生成的日志文件来调试错误也很有用。
【讨论】:
以上是关于在 ubuntu 12.04lts 上安装 hadoop 时出现 start-all.sh 错误的主要内容,如果未能解决你的问题,请参考以下文章
在 ubuntu 12.04lts 上安装 hadoop 时出现 start-all.sh 错误
text 如何在Ubuntu LTS上安装最新的gcc(12.04,14.04,16.04)
求助,怎样在Ubuntu12.04LTS上搭建GTK开发环境
如何检查在 Ubuntu Linux 12.04 LTS 中启用/禁用了哪些 PHP 扩展?