不多说,直接上干货!
问题详情
明明put该有的文件在,可是怎么提示的是文件找不到的错误呢?
我就纳闷了put: `/home/bigdata/1.txt': No such file or directory
[bigdata@ambigdata1 ~]$ pwd /home/bigdata [bigdata@ambigdata1 ~]$ ls 1.txt Desktop Documents Downloads Music Pictures Public Templates Videos [bigdata@ambigdata1 ~]$ [bigdata@ambigdata1 ~]$ hadoop fs -put 1.txt /paperdata put: Permission denied: user=bigdata, access=WRITE, inode="/paperdata._COPYING_":hdfs:hdfs:drwxr-xr-x [bigdata@ambigdata1 ~]$ [bigdata@ambigdata1 ~]$ sudo -u hdfs hadoop fs -put 1.txt /paperdata put: `1.txt': No such file or directory [bigdata@ambigdata1 ~]$
问题原因
其实是,权限的问题。
刚开始,我也纳闷,报没有文件错误,经过排查是权限问题,同时,在hdfs用户切换过来也得到了验证。
除了自己谁都 操作不了。
bigdata用户是我安装ambari集群时候的用户,是除了自己bigdata这个用户之外,以及root用户,其余全都无法操作。
问题解决办法
[bigdata@ambigdata1 ~]$ sudo -u hdfs hadoop fs -mkdir /papaerdata
[bigdata@ambigdata1 ~]$ sudo -u hdfs hadoop fs -chmod -R 777 /papaerdata
[root@ambigdata1 ~]# chmod 755 -R /root
[root@ambigdata1 bigdata]# sudo -u hdfs hadoop fs -chmod -R 777 /paperdata
[root@ambigdata1 bigdata]# hadoop fs -put 1.txt /paperdata
成功!
切换到hdfs上验证下(必须得先从)
[bigdata@ambigdata1 ~]$ su root
Password:
[root@ambigdata1 bigdata]# su hdfs
[hdfs@ambigdata1 bigdata]$
[hdfs@ambigdata1 ~]$ touch 2.txt
[hdfs@ambigdata1 ~]$ hadoop fs -put 2.txt /paperdata
[hdfs@ambigdata1 ~]$
如果想删除,则
[root@ambigdata1 bigdata]# sudo -u hdfs hadoop fs -rm -r /paperdata/1.txt
17/12/23 16:50:18 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 360 minutes, Emptier interval = 0 minutes.
Moved: 'hdfs://ambigdata1:8020/paperdata1.txt' to trash at: hdfs://ambigdata1:8020/user/hdfs/.Trash/Current
[root@ambigdata1 bigdata]#
spark-submit --master yarn-cluster --num-executors 4 --driver-memory 4g --executor-memory 4g --executor-cores 4 --class iforest.TestIF hdfs://ambigdata1:9000/paperdata/IForestSpark.jar hdfs://ambigdata1:9000/paperdata/UNSW-NB15_change.csv hdfs://ambigdata1:9000/paperdata/out
本文转自大数据躺过的坑博客园博客,原文链接:http://www.cnblogs.com/zlslch/p/8093730.html,如需转载请自行联系原作者