一:put: `input': No such file or directory
错误来源:
bin/hdfs dfs -put etc/hadoop input
解决方案:
bin/hadoop fs -mkdir /user/root
bin/hadoop fs -mkdir /user/root/input
原因分析:
1可能是本地没有这个文件 但是一般不是这个错误 就是说 etc/hadoop没有这个文件
可以查下
cd /etc
ls
查看一下
2文件存储系统中没有这个文件
bin/hadoop fs -mkdir /user/root bin/hadoop fs -mkdir /user/root/input
二:Input path does not exist: hdfs://localhost:9000/user/root/input
错误原因同上
文件存储系统中没有这个文件
[root@localhost hadoop-2.7.3]# bin/hadoop fs -mkdir /user/root [root@localhost hadoop-2.7.3]# bin/hadoop fs -mkdir /user/root/input
创建这个文件
三:log4j:WARN No appenders could be found for logger (org.apache.hadoop.conf.Configuration.deprecation).
原因:没有log45
解决方案
在file project other file log4j.properties
就是在src下创建一个log4j.properties的文件
文件中写入的内容
log4j.rootLogger=INFO, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n log4j.appender.logfile=org.apache.log4j.FileAppender log4j.appender.logfile.File=target/spring.log log4j.appender.logfile.layout=org.apache.log4j.PatternLayout log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
四:ERROR [main] util.Shell (Shell.java:getWinUtilsPath(336)) - Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.原因 winows电脑通过虚拟机lunix进行hadoop时出现问题
解决方案
下载这个链接的文件
像配置java环境变量一样配置(不用管版本)
五:Error: JAVA_HOME is not set and could not be found
原因:配置环境变量
解决方案:
修改/etc/hadoop/hadoop-env.sh中设JAVA_HOME。 应当使用绝对路径。 export JAVA_HOME=$JAVA_HOME //错误,不能这么改 export JAVA_HOME=/usr/java/jdk1.6.0_45 //正确,应该这么改
六:org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security .AccessControlException: Permission denied: user=Administrator, access=WRITE, inode="hadoop": hadoop:supergroup:rwxr-xr-x
原因:访问权限问题
解决方案"
1、在hdfs的配置文件中,将dfs.permissions修改为false(可能有效)
2、执行这样的操作 hadoop fs -chmod 777 /user/hadoop(亲测有效)