Я пытаюсь запустить командуНевозможно изменить владельца файла с Баш скрипт
chown -R "$USER" /mnt/namenode
от Баш скрипт для смены владельца папки NameNode и ее подпапок. При вводе команды вручную
sudo chown -R ubuntu /mnt/namenode
это работает, но не тогда, когда я делаю это из сценария. Из скрипта меняется только принадлежность наменода, а не его подпапок. Кто-нибудь знает, как я могу это исправить?
ОК, я понял. Мой скрипт форматировал namenode после того, как была установлена собственность. Перед форматом вложенные папки имеют правильное владение рекурсивно. После формата владение подпапками менялось на root. Таким образом, я внесла следующее изменение:
echo 'Y' | /home/$USER/hadoop-2.2.0/bin/hadoop namenode -format
sudo chown -R $USER:$USER /mnt/namenode
sudo chown -R $USER:$USER /mnt/datanode
Другими словами, я установил право собственности после того, как сделал форматирование.
Вы уверены, что $ USER имеет правильное значение? Вставьте 'echo $ USER' перед' chown' – ern0
эта команда хорошо работает для меня 'sudo chown -R ubuntu/mnt/namenode' ..... возможно ли, что диск защищен от записи? –
Мой совет, что ваша переменная 'USER' ошибочна. Повторите это, чтобы убедиться, что это его контент. – ern0