首页 > 编程知识 正文

哪个命令可以用来操作HDFS文件,熟悉常用的HDFS操作

时间:2023-05-05 02:10:21 阅读:181860 作者:4353

1、namenode format:格式化DFS文件系统

2、secondaryNameNode:运行DFS的SecondaryNameNode进程

Hadoop安全号码

[-checkpoint [force]]

在EditLog超过规定大小(缺省64MB )时,开始检查secondarynamenode的检查点进程; 启用force选项将强制执行checkpoint进程。

在终端上显示[-geteditsize]//editlog文件的大小

3、namenode:运行DFS的namenode进程

hadoop namenode

格式化[-format]//namenode

升级[-update]//Hadoop后,应该使用此命令启动namenode

使用[-rollback]//namenode回滚以前的版本

[-finalize]//删除文件系统之前的状态。 结果,系统无法回滚到以前的状态

将[-import checkpoint ]//check point的状态复制到当前check point进行备份

4、 datanode:运行DFS的datanode进程。你可以使用如下命令将Hadoop回滚到前一个版本。它的用法如下:

hadoop datanode [-rollback]

5、 dfsadmin:运行DFS的管理客户端。在dfsadmin命令中可以执行一些类似Windows中高级用户才能执行的命令,比如升级和回滚等。

hadoopdfsadmin [ generic _ options ]

[-report]//在终端上显示文件系统的基本信息

[-safemoteenter|leave|get|wait ]//Hadoop的安全模式及相关维护; 在安全模式下,系统是只读的,不能删除或复制数据块

[-refresh nodes ] [-finalize upgrade ]//重新读取hosts和exclude文件,连接允许加入群集的新datanode,同时连接从群集出来的datanone

[-upgradeprogressstatus ]//获取当前系统的升级状态和详细信息,或者强制升级过程

将[-metasavefilename]//namenode的主要数据结构保存到指定的目录中

[-setquotaquotadirname…dirname ]//为每个目录设置配额

[-clrQuota dirname…dirname]//清除这些目录的配额

[-setspacequotaquotadirname…dirname ]//为每个目录设置配额空间

[-clrspacequotadirname…dirname ]//清除这些目录的配额空间

显示[-help [cmd]]//命令的帮助信息

6、mradmin:运行MapReduce的管理客户端

7、fsck:运行HDFS的检测进程。fsck在HDFS中被用来检查系统中的不一致情况,比如某文件只有目录,但数据块已经丢失或副本数目不足。与Linux不同,这个命令只用于检测,不能进行修复。

Hadoop fsck [ generic _ options ] path [-move|- delete|- openforwrite ] [-files [-blocks [-locations|- racks ] ]

//path检查的主目录

//-move将损坏的文件移动到/lost found

//-删除损坏文件

//-openforwrite显示在终端上以写入打开的文件

//-files将检查中的文件显示在终端上

//-有积木

终端上显示块信息

  //-location  在终端上显示每个块的位置

  //-rack  显示 datanode的网络拓扑结构图

8、balancer:运行一个文件系统平衡进程。很多原因都会造成数据在集群内分布不均衡,一般来说,当集群中添加新的 datanode时,可以使用这个命令来进行负载均衡。其用法如下:

  hadoop balancer

9、jobtracker:运行一个 jobtracker进程

10、pipes:运行一个 Pipes任务

11、tasktracker:运行一个 tasktracker进程

12、job:管理运行中的 MapReduce任务

13、queue:获得运行中的 MapReduce队列的信息

14、version:打印版本号

15、jar<jar>:运行一个 jar文件

16、daemonlog:读取 /设置守护进程的日志记录级别

17、distcp: distcp命令用于DistCp( 即Dist分布式, C盘拷贝) 分布式拷贝。用于在集群内部及集群之间拷贝数据。

18、archives: archives命令是Hadoop 定义的档案格式。 archives对应一个文件系统,它的扩展名是 .har,包含元数据和数据文件。

19、fs: fs可以说是HDFS 最常用的命令,这是一个高度类似 Linux文件系统的命令集。你可以使用这些命令查看HDFS上的目录结构文件、上传和下载文件、创建文件夹、复制文件等。

hadoop fs [genericOptions]

  [-ls <path>]   //显示目标路径中当前目录下的所有文件

  [-lsr <path>]  //递归显示目标路径下的所有目录及文件 (深度优先)

  [-du <path>]   //以字节为单位显示目录中所有文件的大小,或该文件的大小 (如果目标为文件)

  [-dus <path>]   //以字节为单位显示目标文件大小 (用于查看文件夹大小)

  [-count[-q] <path>]  //将目录的大小、包含文件 (包括文件) 个数的信息输出到屏幕 (标准stdout)

  [-mv <src> <dst>]  //把文件或目录移动到目标路径,这个命令允许同时移动多个文件,但是只允许移动到一个目标路径中,参数中的最后一个文件夹即为目标路径

  [-cp <src> <dst>]  //复制文件或目录到目标路径,这个命令允许同时复制多个文件,如果复制多个文件,目标路径必须是文件夹

  [-rm [-skipTrash] <path>]   //删除文件,这个命令不能删除文件夹

  [-rmr [-skipTrash] <path>]    //删除文件夹及其下的所有文件

  [-expunge] 

  [-put <localsrc> ... <dst>]  //从本地文件系统上传文件到 HDFS中

  [-copyFromLocal <localsrc> ... <dst>]  //与put 相同,在 0.18版中,只允许上传一个文件,但是在 0.20中,这两个命令已经完全一样了

  [-moveFromLocal <localsrc> ... <dst>]  //与put 相同,但是文件上传之后会从本地文件系统中移除

  [-get [-ignoreCrc] [-crc] <src> <localdst>]  //复制文件到本地文件系统。这个命令可以选择是否忽视校验和,忽视校验和下载主要用于挽救那些已经发生错误的文件

  [-getmerge <src> <localdst> [addnl]]  //对源目录中的所有文件进行排序并写入目标文件中,文件之间以换行符分隔

  [-cat <src>]  //在终端显示( 标准输出 stdout)文件中的内容,类似Linux系统中的 cat

  [-text <src>] 

  [-copyToLocal [-ignoreCrc] [-crc] <src> <localdst>]  //与get 相同

  [-moveToLocal [-crc] <src> <localdst>]  //这个命令在0.20 版本中没有完成

  [-mkdir <path>]  //创建文件夹

  [-setrep [-R] [-w] <rep> <path/file>]   //改变一个文件的副本个数。参数 -R可以递归地对该目录下的所有文件执行统一操作

  [-touchz <path>]  //类似Linux 中的touch,创建一个空文件

  [-test -[ezd] <path>]  //将源文件输出为文本格式并显示到终端上,通过这个命令可以查看TextRecordInputStream(SequenceFile等) 或zip文件

  [-stat [format] <path>]  //以指定格式返回路径的信息

  [-tail [-f] <file>]  //在终端上显示( 标注输出 stdout)文件的最后1kb 内容。-f选项的行为与 Linux中一致,会持续检测新添加到文件中的内容,这在查看日志文件时会显得非常方便

  [-chmod [-R] <MODE[,MODE]... | OCTALMODE> PATH...]  //改变文件的权限,只有文件的所有者或是超级用户才能使用这个命令。 -R可以递归地改变文件夹内所有文件的权限

  [-chown [-R] [OWNER][:[GROUP]] PATH...]  //改变文件的拥有者,-R可以递归地改变文件夹内所有文件的拥有者。同样,这个命令只有超级用户才能使用

  [-chgrp [-R] GROUP PATH...]  //改变文件所属的组,-R可以递归地改变文件夹内所有文件所属的组,这个命令只有超级用户才能使用

  [-help [cmd]]  //这是命令的帮助信息

转载于:https://www.cnblogs.com/安静的路人/p/5017803.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。