今天想用ubuntu重新再运行下之前的hadoop中自带的wordcount程序,在hadoop安装路径下(/usr/local/hadoop)输入命令bin/start-all.sh启动成功,运行wordcount例子时报错如下:

hadoop@liu:~$ hadoop jar usr/local/hadoop/hadoop-examples-1.0.4.jar wordcount input output
13/05/13 15:05:17 INFO mapred.JobClient: Cleaning up the staging area hdfs://master:9000/tmp/hadoop-hadoop/mapred/staging/hadoop/.staging/job_201305131851_0001

13/05/13 15:05:17 ERROR security.UserGroupInformation:PriviledgedActionException as:hadoop cause:org.apache.hadoop.mapred.FileAlreadyExistsException:Output directory output already exists

org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory output already exists  

一开始以为是第一条的错误,想把第一条中的.staging删除。可是cd /tmp/hadoop-hadoop/mapred后没有找到staging文件夹,只有一个local文件夹。这个不行,然后从第二条入手,应该是output已存在不能覆盖,于是准备删除output文件夹。命令为: /usr/local/hadoop$ bin/hadoop fs -rmr output (注意此处的删除是用rmr命令,不是rm命令),当显示 Deleted hdfs://localhost:9000/usr/hadoop/output后表示删除成功,在重新输入程序执行命令hadoop jar usr/local/hadoop/hadoop-examples-1.0.4.jar wordcount input output即可成功。