配置Hadoop启动时提示权限不够

(前些天根据“EasyHadoop集群部署和入门文档”配置Hadoop集群时出现了错误,本人使用的reshat4,hadoop-1.0.3)

提示是:

bash: /root/.bashrc: 权限不够

Warning: $HADOOP_HOME is deprecated.

bash: /root/.bashrc:权限不够                            这里将将对应目录/root文件权限更改为777即可

bash: /root/.bashrc: 权限不够

starting  namenode,logging to

/opt/modules/hadoop/hadoop-1.0.3/bin/../logs/hadoop-hadoop-namenode-master.out

这个问题我头疼了一个多星期,一直悬而未决,一直给予haddop-1.0.3目录777权限却还是有问题。偶尔看到某个网站试看视频中有个处理权限的镜头,今天照着命令敲了下。成功执行。因此要注意使用对应用户创建解压文件。并随时使用ll –a 查看文件权限。

[root@master hadoop-1.0.3]# chmod 777 logs/*

[root@master hadoop-1.0.3]# chmod 777 logs

[root@master hadoop-1.0.3]# chown root logs/*

[root@master hadoop-1.0.3]# chown root logs

[root@master hadoop-1.0.3]# bin/start-all.sh

弄了这之后发现依然namenode打不开,我就格式化了namenode:hadoopnamenode –format,发现里面原来有抛出例外:

ERRORnamenode.NameNode: Java.io.IOException: Cannot create directory

/var/hadoop/hadoop-hadoop/dfs/name/current at org.apache.hadoop.hdfs.server.common.Storage$

StorageDirectory.clearDirectory(Storage.java:297)

atorg.apache.hadoop.hdfs.server.namenode.FSImage.format(FSImage.java:1320)

at org.apache.hadoop.hdfs.server.namenode.FSImage.format(FSImage.java:1339)

at.org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:1164)

at.org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1271)

atorg.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1288)

根据列外是不能创建一个目录,有了上面的经验我就知道了是没有建目录的权限。所以我直接就在/var/下建了一个目录叫做hadoop/,并授予了权限。再格式化namenode,成功启动。但是转到子节点上输入jps查看,发现并没有完全启动。知道node也有同样问题。

而为了node不出现同样问题,我们最好是在虚拟机中配置好后将master复制过去。然后改ip,改主机名。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/173f1da3d96d3d9ccd407f13508f12a6.html