在本地运行mapreduce程序的时候,会默认用本地系统的用户去将作业写入hdfs文件系统(在服务器上)中, 由于此用户对hadoop目录并没有写入权限,所以导致异常的发生。
解决方案:
方案1:修改你要操作的目录权限
hdfs dfs -chmod -R 777 某目录
方案2:直接修改配置文件
直接在hdfs的配置文件中,将dfs.permissions修改为False
这类问题一般是权限问题,可以使用 hdfs dfs -ls / 查看根目录下所有文件或目录的权限:一看便知,和linux上面普通的文件系统权限类似。
drwxrwxrwx - root supergroup 0 2018-11-08 10:09 /input
drwxr-xr-x - taoshilei supergroup 0 2018-11-08 10:44 /output