hdfs指令大全
hdfs常规命令:
部分hdfs文件系统命令
1类)文件路径添加删除修改系列:
hdfs dfs -mkdir dir创建文件夹
删除hdfs dfs -rmr dir文件夹dir
hdfs dfs -ls显示目录文件信息
hdfs dfs -lsr递归显示文件目录信息
hdfs dfs -stat path返回有关指定路径的信息
类别2 :空间大小显示系列命令:
hdfs dfs -du -h dir以易于阅读的形式人性化地显示文件大小
hdfs dfs -dus uri递归地显示目标文件的大小
hdfs dfs -du path/file显示目标文件文件的大小
类别:权限管理类:
HDFS DFS-chgrp组路径可更改文件所属的组
hdfs dfs -chgrp -R /dir递归更改dir目录所属的组
hdfs dfs -chmod [-R]权限-修改路径文件的权限
hdfs dfs -chown owner[-group] /dir更改文件的所有者
HD fsdfs-chown-r owner [-group ]/dir递归更改dir目录的所有者
4类)文件操作(上传下载复制)系列:
hdfs dfs -touchz a.txt创建长度为0的空文件a.txt
删除HDFS DFS-RM文件文件文件
hdfs dfs -put file dir将文件文件上载到dir文件
hdfs dfs -put filea dir/fileb将文件filea上传到dir,并将filea重命名为fileb
hdfs dfs -get file dir将文件下载到本地文件夹
HD fsdfs-getmergehdfs ://master :9000/data/sogou result.txtcombinedresulthdfs中的多个文件合并为一个文件,合并的文件为本地文件
查看HDFS DFS-cat文件文件文件
hdfs fs -text /dir/a.txt文件为文本格式时相当于cat,为压缩格式时解压缩后显示
显示HDFSfs-tail/dir/a.txtdir目录下a.txt文件的最后1000个字节
HD fsdfs-copyfromlocallocalsrcpath从本地复制文件
从HD fsdfs-copy to local/HDFS/a.txt/local/a.txthdfs本地复制
HD fsdfs-copy from local/dir/source/dir/target将文件从原始路径复制到目标路径
HD fsdfs-mv/path/a.txt/path/b.txt可以将文件从a目录移动到b目录,然后在回收站中恢复文件
5类:判断系列:
hdfs fs -test -e /dir/a.txt确定文件是否存在,加0减1
hdfs fs -test -d /dir判断dir是否为目录,加0减1
hdfs fs -test -z /dir/a.txt确定文件是否为空且正0负1
第6类:系统功能管理类:
hdfs dfs -expunge空垃圾桶
HDFS DFS管理员安全模式输入器进入安全模式
HDFS DFS管理员安全模式层退出安全模式
hdfsdfsadmin-decommissiondatanodename关闭datanode节点
使用HDFS DFS管理员优化升级退出升级操作
hdfsdfsadmin -显示升级操作的状态
查看HDFSversionHDFS版本
hdfsdaemonlog-getlevelhost :端口名称打印在host :端口上运行的守护程序的日志级别
hdfsdaemonlog-set level host :端口名称level设置在host :端口上运行的守护程序的日志记录级别
hdfs dfs -setrep -w副本数-R path配置文件的副本数
第二部分:运输命令
start-dfs.sh 启动namenode,datanode,启动文件系统
stop-dfs.sh 关闭文件系统
start-yarn.sh 启动resourcemanager,nodemanager
stop-yarn.sh 关闭resourcemanager,nodemanager
start-all.sh 启动hdfs,yarn
stop-all.sh 关闭hdfs,yarn
hdfs-daemon.sh start datanode 单独启动datanode
start-balancer.sh -t 10% 启动负载均衡,尽量不要在namenode节点使用
hdfs namenode -format 格式化文件系统
hdfs namenode -upgrade 分发新的hdfs版本之后,namenode应以upgrade选项启动
hdfs namenode -rollback 将namenode回滚到前一版本,这个选项要在停止集群,分发老的hdfs版本之后执行
hdfs namenode -finalize finalize会删除文件系统的前一状态。最近的升级会被持久化,rollback选项将再不可用,升级终结操作之后,它会停掉namenode,分发老的hdfs版本后使用
hdfs namenode importCheckpoint 从检查点目录装载镜像并保存到当前检查点目录,检查点目录由fs.checkpoint.dir指定
第三部分:mapreduce命令
hdfs jar file.jar 执行jar包程序
hdfs job -kill job_201005310937_0053 杀死正在执行的jar包程序
hdfs job -submit <job-file> 提交作业
hdfs job -status <job-id> 打印map和reduce完成百分比和所有计数器。
hdfs job -counter <job-id> <group-name> <counter-name> 打印计数器的值。
hdfs job -kill <job-id> 杀死指定作业。
hdfs job -events <job-id> <from-event-#> <#-of-events> 打印给定范围内jobtracker接收到的事件细节。
hdfs job -history [all] <jobOutputDir>
hdfs job -history <jobOutputDir> 打印作业的细节、失败及被杀死原因的细节。更多的关于一个作业的细节比如成功的任务,做过的任务尝试等信息可以通过指定[all]选项查看。
hdfs job -list [all] 显示所有作业。-list只显示将要完成的作业。
hdfs job -kill -task <task-id> 杀死任务。被杀死的任务不会不利于失败尝试。
hdfs job -fail -task <task-id> 使任务失败。被失败的任务会对失败尝试不利。
第四部分:hdfs系统检查工具fsck
hdfs fsck <path> -move 移动受损文件到/lost+found
hdfs fsck <path> -delete 删除受损文件。
hdfs fsck <path> -openforwrite 打印出写打开的文件。
hdfs fsck <path> -files 打印出正被检查的文件。
hdfs fsck <path> -blocks 打印出块信息报告。
hdfs fsck <path> -locations 打印出每个块的位置信息。
hdfs fsck <path> -racks 打印出data-node的网络拓扑结构。
第五部分:运行pipies作业
hdfs pipes -conf <path> 作业的配置
hdfs pipes -jobconf <key=value>, <key=value>, ... 增加/覆盖作业的配置项
hdfs pipes -input <path> 输入目录
hdfs pipes -output <path> 输出目录
hdfs pipes -jar <jar file> Jar文件名
hdfs pipes -inputformat <class> InputFormat类
hdfs pipes -map <class> Java Map类
hdfs pipes -partitioner <class> Java Partitioner
hdfs pipes -reduce <class> Java Reduce类
hdfs pipes -writer <class> Java RecordWriter
hdfs pipes -program <executable> 可执行程序的URI
hdfs pipes -reduces <num> reduce个数