1. 程式人生 > >Hadoop 啟動dfs報錯Permission denied

Hadoop 啟動dfs報錯Permission denied

報錯日誌如下:

yun12-01: starting namenode, logging to hadoop-rand-namenode-yun12-01.out
yun12-01: /logs/hadoop-rand-namenode-yun12-01.out: Permission denied
yun12-01: /logs/hadoop-rand-namenode-yun12-01.out: Permission denied
yun12-01: /logs/hadoop-rand-namenode-yun12-01.out: Permission denied
yun12-01: starting datanode, logging to hadoop-2.4.1/logs/hadoop-rand-datanode-yun12-01.out
yun12-01: /hadoop-2.4.1/sbin/hadoop-daemon.sh: line 151: /hadoop-2.4.1/logs/hadoop-rand-datanode-yun12-01.out: Permission denied
yun12-01: head: cannot open '/logs/hadoop-rand-datanode-yun12-01.out' for reading: No such file or directory
yun12-01: /sbin/hadoop-daemon.sh: line 166: /home/rand/app/hadoop-2.4.1/logs/hadoop-rand-datanode-yun12-01.out: Permission denied
yun12-01: /sbin/hadoop-daemon.sh: line 167: /logs/hadoop-rand-datanode-yun12-01.out: Permission denied
Starting secondary namenodes [0.0.0.0]

類似這種出現Permission denied 首先排錯,Hadoop目錄下檔案的所有者和所屬主是root使用者還是當前使用者。

執行下面命令,將檔案所屬者和所屬組改為當前使用者。

sudo chown -R username:username /Hadoop-2.4.1/*

注:將username改為自己當前使用者。

如果仍然報錯:

1.判斷出錯的檔案路徑,如:當前是/logs檔案報的錯。

2.先備份logs檔案,再重新建立logs。

mv logs logsback
mkdir logs

3.最後重新啟動dfs:

start-dfs.sh