我正在使用 hadoop 版本 1.0.1 和 Ubuntu linux 11.10 运行单节点集群。当它崩溃时,我正在运行一个简单的脚本,可能是因为我的计算机进入了睡眠状态。我尝试使用重新格式化文件系统
bin/hadoop 名称节点格式
并得到以下错误:
错误namenode.NameNode:java.io.IOException:无法锁定存储/app/hadoop/tmp/dfs/name。该目录已被锁定。在 org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.lock(Storage.java:602)
我尝试使用以下命令添加输入文件:
bin/hadoop fs -copyFromLocal dataDirectory/*.txt inputDirectory
并得到错误:
12/04/15 09:05:21 WARN hdfs.DFSClient: DataStreamer Exception: org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /home/hduser/input/book1.txt 只能复制到0 个节点,而不是 1 个
2015 年 12 月 4 日 09:05:21 警告 hdfs.DFSClient:块 null 坏数据节点 [0] 节点的错误恢复 == null 12/04/15 09:05:21 警告 hdfs.DFSClient:无法获取块位置。源文件“/home/hduser/input/book1.txt” - 中止...
之后,我在输入目录中看到文件,但它们的大小为 0。关于如何添加文件的任何想法?我能够在 hadoop 崩溃之前添加文件,所以我可以重新安装 linux 和 hadoop,但这似乎有点矫枉过正。谢谢。