BUG
切记:文件传输时需关闭防火墙!!!
1.
org.apache.hadoop.security.AccessControlException: Permission denied: user=love.hadoop-01, access=WRITE, inode="/":root:supergroup:drwxr-xr-x
意思是:提示你的
user=love.hadoop-01
用户权限不够!无法对
root
用户执行相关操作
解决:
命令:
vi ./hadoop-2.7.5/etc/hadoop/hdfs-site.xml
编写:
<!-- 配置文件权限:如果是 true,则打开前文所述的权限系统。如果是 false,权限检查 就是关闭的 -->
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
2 .
org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /file1.txt could only be replicated to 0 nodes instead of minReplication (=1). There are 2 datanode(s) running and 2 node(s) are excluded in this operation
表示第一个NameNode 启动成功 =1, 有2个datanode(s)运行和2个节点(s) 为=0
解决:
检查时:文件可以正常传输,只能上传到NameNode服务主节点上,DataNode节点处于为启动状态!
单节点启动:(
需要在DataNode节点上的Hadoop-2.7.5目录下启动
)
命令:
sbin/dadoop-daemon.sh start datanode
/* 单节点关闭:把start 改成 stop 即可*/
3.
File /file3.txt could only be replicated to 0 nodes instead of minReplication (=1). There are 0 datanode(s) running and no node(s) are excluded in this operation
大意为:
NameNode 启动成功,DataNode节点没有启动
解决步骤:
1.在Hadoop2.7.5目录下启动
命令:
start-dfs.sh --启动dfs节点
jps --查看节点是否启动
stop-dfs.sh --关闭节点
2.NameNode节点启动而DataNode节点没有启动!就要检查 NameNode主节点和DataNode节点的
clusterID (集群ID)是否相同;
命令:
vi ./tmp/dfs/name/current/VERSION
-- 使用vi命令,既能查看又能修改
NameNode节点 与
DataNode 节点 的
clusterID
(集群ID)进行对比,不同则修改为相同的,保存关闭(命 令:
:wq
),重启即可
原因:因为对NameNode 节点进行格式化造成的,切记不要亦有bug就对NameNode进行格式化!