1. 主要是没有设置 namenode和datanode 的缺省路径造成的。
如果将Hadoop配置成伪分布模式,则Hadoop会将各种信息存入\tmp目录中,所以当系统重启之后,这些信息会丢失,使得用户不得不重新执行hadoop namenode -format命令。为了避免这种情况,可以在hdfs-site.xml文件中添加一个属性,属性名为dfs.name.dir,值为你想存的目录,只要不存在\tmp下,就不会遇到每次重启之后元数据丢失的情况。
2. 设置 hdfs-site.xml
增加如来2个属性
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/name/</value> #hadoop的name目录路径
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/data/</value> #hadoop的data目录路径
</property>
3. 重新格式化
bin/hadoop namenode -format
4. 启动hadoop