HDFS shell 基本操作命令

发布于:2024-08-08 ⋅ 阅读:(90) ⋅ 点赞:(0)

基础命令

  • 显示目录下的文件列表命令: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