отказано в разрешении hdfs fsck

#hadoop #hdfs #fsck

#hadoop #hdfs #fsck

Вопрос:

Я запускаю эту командную строку, чтобы решить проблему поврежденных файлов HDFS :

 hdfs fsck /
  

И я получаю это предупреждение :

 Connecting to namenode via http://master1:50070
FSCK started by root (auth:SIMPLE) from /192.168.1.30 for path / at Mon Oct 24 05:06:23 EDT 2016
FSCK ended at Mon Oct 24 05:06:23 EDT 2016 in 1 milliseconds
Permission denied: user=root, access=READ_EXECUTE, inode="/accumulo":accumulo:accumulo:drwxr-x--x
  

Пожалуйста, любая помощь!!

Ответ №1:

Вы не можете выполнить fsck с обычным пользователем. Вы должны запустить его с hdfs от имени суперпользователя

 sudo -u hdfs hdfs fsck /
  

В случае only accumulo вы можете попробовать следующее

 sudo -u accumulo hdfs fsck /accumulo
  

Ответ №2:

Вы должны запустить эту команду как пользователь «hdfs»:

 sudo -u hdfs hdfs fsck /
  

Ответ №3:

Это проблема с разрешением.

Запустите эту команду из hadoop bin, а затем повторите попытку.

 hadoop fs -chmod -R 777 /accumulo
  

Чтобы отключить проверку разрешений, установите указанное ниже свойство в hdfs-site.xml и перезапустите свой кластер

 <property>
  <name>dfs.permissions</name>
  <value>false</value>
</property>
  

Комментарии:

1. ЭТО не работает, но когда я делаю: sudo -u hdfs hadoop fs -chmod -R 777 /accumulo это работает нормально. Но когда я делаю это, у меня появляется другое разрешение, в котором отказано в другом индексе.