HDFS shell 操作命令
基础命令
- 显示目录下的文件列表命令:ls
bin/hdfs dfs -ls / - 参加文件夹命令:mkdir
bin/hdfs dfs -mkdir /test - 上传文件命令:put 或 copyFromLocal
- 查看文件内容命令:cat 或 tail 或 text
bin/hdfs dfs -put words.log /test
注意:对压缩文件只能用 text 命令来查看文件内容,否则内容显示乱码 - 文件复制命令:get 或 copyToLocal
bin/hdfs dfs -get /test/words.log /usr/local/hadoop/data
注意:本地目录需要提取创建 - 删除文件命令:rm
bin/hdfs dfs -rm /test/words.log - 删除文件夹命令:rmr
bin/hdfs dfs -rm -r /test
管理员命令
- 返回 HDFS 集群的状态信息
bin /hdfs dfsadmin -report - 保存 HDFS 集群相关节点信息
bin /hdfs dfsadmin -metasave metasave.tt
备注:metasave.tt 文件保存在 {hadoop.log.dir}目录下,该目录默认是hadoop安装目录的logs目录 - 从 namenode 获取最新的 fsimage 文件
bin /hdfs dfsadmin -fetchImage - 打印集群网络拓扑
bin /hdfs dfsadmin -prientTopology
备注:因为当前 Hadoop 是伪装集群,所以默认只有一个机架 default-rack,机架下面只有一个节点 hadoop1 - 刷新集群节点信息
bin/hdfs dfsadmin -refreshNodes
安全模式(safemode)
安全模式(safemode)是Hadoon的一种保护机制,用于保证集群中数据块的安全性。当启动NameNode服务时就会启动safemode,在该模式下,NameNode会等待DataNode向它发送块报告。只有当NameNode接收到的块数量(datanodes blocks)和实际的块数量(totalblocks)接近一致时,即满足datanodes blocks/total blocks >= 99.9% 这个阀值 NameNode就会退出安全模式。
- 查看安全模式状态
bin/hdfs dfsadmin -safemode get - 进入安全模式
bin/hdfs dfsadmin -safemode enter
备注:在 NameNode 安全模式下,不允许用户对 HDFS 中的文件或文件夹进行增删改查操作 - 退出安全模式
bin/hdfs dfsadmin -safemode leave