hdfs dfs-mkdir, нет такого файла или каталога

Привет я новичок в hadoop и пытаюсь создать каталог в hdfs под названием twitter_data. Я настроил свою виртуальную машину на softlayer, успешно установил и запустил hadoop.

это похвала, которую я пытаюсь запустить:

файловой системы HDFS DFS на HDFS с помощью команды mkdir://имя localhost:9000/пользователей/Hadoop и/twitter_data

и он продолжает возвращать это сообщение об ошибке:

 /usr/local/hadoop/etc/hadoop/hadoop-env.sh: line 2: ./hadoop-env.sh: Permission denied
16/10/19 19:07:03 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
mkdir: `hdfs://localhost:9000/user/Hadoop/twitter_data': No such file or directory

почему он говорит, что нет такого файла и каталога? Я приказываю ему сделать каталог, разве он не должен просто создать один? Я предполагаю, что это должна быть проблема с разрешением, но я не могу ее решить. Пожалуйста, помогите мне эксперты hdfs. Я тратил слишком много времени на то, что кажется простым делом.

спасибо заранее.

2 ответов


это потому, что родительские каталоги еще не существуют. Попробуй!--0-->. The -p флаг указывает, что все несуществующие каталоги, ведущие к данному каталогу, также должны быть созданы.

Что касается вопроса, который вы задали в комментариях, просто введите в свой браузер http://<host name of the namenode>:<port number>/.


используйте следующую команду шагов для создания каталога:

1) Не запускайте hadoop и не форматируйте namenode: -

$ hadoop namenode -format

2) запустить hadoop по : -

$ start-all.sh

3) теперь сначала сделайте исходный каталог, затем создайте другой в том же каталоге:

$ hadoop fs -mkdir /user
$ hadoop fs -mkdir /user/Hadoop
$ hadoop fs -mkdir /user/Hadoop/tweeter_data

выполните описанные выше шаги для решения проблемы.