我刚刚在我的计算机上运行了一个Apache Mahout集群示例(安装了hadoop单节点),我已经使用命令(在HADOOP_HOME \ bin中找到)启动了hadoop进程(jobtracker,tasktracker,datanode,namenode)start-all .SH . 但是当我尝试使用命令stop-all.sh时,它告诉我没有运行namenode或datanode,尽管jps说它们都在运行 .

在core-site.xml中,这就是我所拥有的:

<configuration>
<property>
  <name>hadoop.tmp.dir</name>
  <value>/app/hadoop/tmp</value>
  <description>A base for other temporary directories.</description>
</property>

<property>
  <name>fs.default.name</name>
  <value>hdfs://localhost:54310</value>
  <description>(...)</description>
</property>

</configuration>

在我的案例hduser中运行hadoop的用户是该目录的所有者(/ app / hadoop / tmp) . 我认为格式化namenode可以解决我的问题,但还有其他解决方案吗?