这几天一直在搞hadoop:the definitive guide的翻译,开始按照附录A来搭建环境,
测试运行都正常,今天想搭建eclipse开发环境,发现namenode页面又打不开了。
jps查看进程,namenode没有启动,查看日志(hadoop/logs/xxxxnamenodexxx.log,
发现如下错误:
org.apache.hadoop.hdfs.server.common.InconsistentFSStateException:
Directory /tmp/hadoop-xxxxx/dfs/name is in an inconsistent state: storage directory does not exist or is not accessible
错误原因是tmp文件会被定期清理,修改core-site.xml添加以下内容设置tmp文件位置:
<property>
<name>hadoop.tmp.dir</name>
<value>/home/javoft/Documents/hadoop/hadoop-${user.name}</value>
<description>A base for other temporary directories.</description>
</property>
然后运行以下命令重新格式化HDFS:
hdfs namenode -format
再次运行start-dfs.sh命令,启动成功。