千家信息网

四、hdfs命令行操作

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,一、hdfs启动流程1、加载fsimage,即加载元数据2、加载edits文件,因为上面的fsimage并不一定包含最新的元数据3、保存检查点(checkpoint),主要为了snn后面合并edits
千家信息网最后更新 2025年02月02日四、hdfs命令行操作

一、hdfs启动流程

1、加载fsimage,即加载元数据
2、加载edits文件,因为上面的fsimage并不一定包含最新的元数据
3、保存检查点(checkpoint),主要为了snn后面合并edits到fsimage时使用
4、进入安全模式,检查副本率是否满足冗余度的要求,或者是否完整,如果不满足就处于安全模式,无法写入。如果满足就退出安全模式。

二、基本操作命令

我们可以使用 hdfs dfs xxx 或者 hadoop fs xxx 都可以,两者是一样的。

完整的全部命令如下:

Usage: hadoop fs [generic options]        [-appendToFile  ... ]        [-cat [-ignoreCrc]  ...]        [-checksum  ...]        [-chgrp [-R] GROUP PATH...]        [-chmod [-R]  PATH...]        [-chown [-R] [OWNER][:[GROUP]] PATH...]        [-copyFromLocal [-f] [-p] [-l] [-d]  ... ]        [-copyToLocal [-f] [-p] [-ignoreCrc] [-crc]  ... ]        [-count [-q] [-h] [-v] [-t []] [-u] [-x]  ...]        [-cp [-f] [-p | -p[topax]] [-d]  ... ]        [-createSnapshot  []]        [-deleteSnapshot  ]        [-df [-h] [ ...]]        [-du [-s] [-h] [-x]  ...]        [-expunge]        [-find  ...  ...]        [-get [-f] [-p] [-ignoreCrc] [-crc]  ... ]        [-getfacl [-R] ]        [-getfattr [-R] {-n name | -d} [-e en] ]        [-getmerge [-nl] [-skip-empty-file]  ]        [-help [cmd ...]]        [-ls [-C] [-d] [-h] [-q] [-R] [-t] [-S] [-r] [-u] [ ...]]        [-mkdir [-p]  ...]        [-moveFromLocal  ... ]        [-moveToLocal  ]        [-mv  ... ]        [-put [-f] [-p] [-l] [-d]  ... ]        [-renameSnapshot   ]        [-rm [-f] [-r|-R] [-skipTrash] [-safely]  ...]        [-rmdir [--ignore-fail-on-non-empty]  ...]        [-setfacl [-R] [{-b|-k} {-m|-x } ]|[--set  ]]        [-setfattr {-n name [-v value] | -x name} ]        [-setrep [-R] [-w]   ...]        [-stat [format]  ...]        [-tail [-f] ]        [-test -[defsz] ]        [-text [-ignoreCrc]  ...]        [-touchz  ...]        [-truncate [-w]   ...]        [-usage [cmd ...]]

1、获取命令帮助

hdfs dfs -help command如:hdfs dfs -help ls

2、创建目录

hdfs dfs -mkdir HDFS路径选项:-p  递归创建目录

3、列出目录信息

hdfs dfs -ls HDFS路径选项:-R 递归显示所有目录以及目录下的所有子目录和文件

4、上传文件或者目录

hdfs dfs -put 本地路径  HDFS路径hdfs dfs -copyFromLocal 本地路径 hdfs路径hdfs dfs -moveFromLocal 本地路径 hdfs路径  这个会删除本地文件

5、下载文件或者目录

hdfs dfs -get HDFS路径 本地路径 hdfs dfs -copyToLocal HDFS路径 本地路径

6、查看文件内容

hdfs dfs -cat HDFS路径

7、将本地文件内容追加到HDFS文件中

hdfs dfs -appendToFile 本地路径 HDFS路径

8、监控文件内容

hdfs dfs -tail -f HDFS路径

9、删除文件或目录

hdfs dfs -rm HDFS路径选项:-r 递归删除子目录注意:默认回收站关闭,所以删除的文件立马就没了

10、合并数据并下载到本地

hdfs dfs -getmerge HDFS路径1 HDFS路径2 ....  本地路径

11、统计类

hdfs dfs -count HDFS路径     统计 目录个数  文件个数  总的文件数hdfs dfs -du HDFS路径        显示目录或者文件的大小hdfs dfs -df HDFS路径        显示空间使用情况

12、复制和剪切

hdfs dfs -cp HDF***c HDFSdest   HDFS内部复制hdfs dfs -mv HDF***c HDFSdest   HDFS内部剪切

13、文件权限

hdfs dfs -chown user:group HDFS路径   修改属主属组hdfs dfs -chmod 权限 HDFS路径         修改权限

14、设置副本数

hdfs dfs -setrep n HDFS路径

三、管理命令

1、均衡datanode

hdfs balancer  将多个datanode节点进行数据均衡处理,避免有些节点存储数据过多

2、打印运行报告

hdfs dfsadmin -report

3、安全模式

hdfs dfsadmin -safemode  enter|leave|get  进入安全模式|离开安全模式|获取安全模式状态

4、快照

hdfs dfsadmin -allowSnapshot HDFS目录   给某个目录做快照hdfs dfsadmin -disableSnapshot HDFS目录   给某个目录取消快照

5、配额

//名称配额,简单说就是该目录下文件和目录的总个数的限制hdfs dfsadmin -setQuota N HDFS目录1 HDFS目录2.....  设置名称配额hdfs dfsadmin -clrQuota HDFS目录1 HDFS目录2.....    取消名称配额//空间配额,简单说就是该目录的存储空间限制hdfs dfsadmin -setSpaceQuota N单位(如:1GB) [-storageType ] HDFS目录1 HDFS目录2..... 设置空间配额hdfs dfsadmin -clrSpaceQuota [-storageType ] HDFS目录1 HDFS目录2..... 取消空间配额其中 storageType 有以下类型:RAW-DISK:原始物理磁盘DISK:    分区空间SSD:     固态硬盘ARCHIVE:   

四、hadoop启动相关命令

命令作用命令
启动/停止历史服务器mr-jobhistory-daemon.sh start|stop historyserver
启动/停止总资源管理器yarn-daemon.sh start|stop resourcemanager
启动/停止节点管理器yarn-daemon.sh start|stop nodemanager
启动/停止 NN 和 DNstart|stop-dfs.sh
启动/停止 RN 和 NMstart|stop-yarn.sh
启动/停止 NN、DN、RN、NMstart|stop-all.sh
启动/停止 NNhadoop-daemon.sh start|stop namenode
启动/停止 DNhadoop-daemon.sh start|stop datanode
0