转:HDFS基本命令

HDFS基本命令:

hadoop fs -cmd

cmd: 具体的操作,基本上与UNIX的命令行相同

args:参数

HDFS资源URI格式

scheme://authority/path

scheme:协议名,file或hdfs

authority:namenode主机名

path:路径

示例:hdfs://localhost:9000/user/chunk/test.txt

假设已经在core-site.xml里配置了 fs.default.name=hdfs://localhost:9000,则仅使用/user/chunk/test.txt即可。

hdfs默认工作目录为 /user/$USER,$USER是当前的登录用户名。

HDFS命令示例:

hadoop fs -mkdir /user/trunk

hadoop fs -ls /user

hadoop fs -lsr /user   (递归的)

hadoop fs -put test.txt /user/trunk

hadoop fs -put test.txt .  (复制到hdfs当前目录下,首先要创建当前目录)

hadoop fs -get /user/trunk/test.txt . (复制到本地当前目录下)

hadoop fs -cat /user/trunk/test.txt

hadoop fs -tail /user/trunk/test.txt  (查看最后1000字节)

hadoop fs -rm /user/trunk/test.txt

hadoop fs -help ls (查看ls命令的帮助文档)

图中的2:文件备份数量,因为采用了两台机器的全分布模式,所以此处为2.对于目录,使用-。

在put的时候遇到问题:

  1. put: org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create file/user/hadoopadmin. Name node is in safe mode.  

解法:>bin/hadoop dfsadmin -safemode leave
http://zkl-1987.iteye.com/blog/365587

有关HDFS的官方文档,可以参考如下网址:
http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/CommandsManual.html