如下是常用的HDFS命令,用于上传文件、删除HDFS上的目录、启动一个作业等操作。
一、hadoop命令
1.1 hadoop fs
hadoop fs 系列指令是对HFDS文件系统的操作,类似于linux文件系统的操作,比如查看目录结构 hadoop fs -ls / ,再比如上传一个文件 hadoop fs -put xxx.log /。
注意, hadoop fs -ls 后面不加地址,默认显示的是HDFS:/user/${user}/下的内容。${user}就是运行 hadoop fs -ls 的linux用户名。
1.2 hadoop version
查看hadoop版本信息等等。
1.3 hadoop jar(尽量用yarn jar)
用于运行一个jar包,用于任务提交、测试jar等。
1.4 hadoop checknative
显示hdfs上哪些压缩的存储方式。
1.5 hadoop classpath
显示hadoop java的环境。用于显示、增加jar库位置的环境变量。
二、hdfs命令
2.1 hdfs dfs
其实就是hadoop fs 命令
2.2 hdfs namenode -format
将linux文件目录格式成dfs文件系统,这个只在第一次namenode初始化的时候使用。
2.3 hdfs dfsadmin
这也是一个命令集,常用带-safemode 这个参数,这个参数进入或离开安全模式。还有-report这个参数,报告集群状态。
2.4 hdfs fsck
用来检查集群文件损坏的块状况。
三、yarn命令
3.1 yarn application -list
这个命令查看正在作业的任务状态和信息。
3.2 yarn application -kill xxxx_jobappid
这个命令是杀死正在作业的任务。
3.3 yarn jar
提交jar包,进行计算。
辅助知识点
1、垃圾回收
hadoop有一个像windows一样的垃圾回收站功能,就是说,你删除一个hdfs上的一个文件,可以还原该文件。叫做trash机制
1、打开trash机制 修改core-site.sh 在每一个节点上
<property>
<!--。。。。-->
<name>fs.trash.checkpoint.interval</name>
<value>0</value>
</property>
<property>
<!--在垃圾箱内多长时间会被删除-->
<name>fs.trash.interval</name>
<value>1440</value>
</property>
2、重启下
3、操作
如果删除,实际是移到了.Trash的文件夹(回收站),要还原,只需要在用hdfs dfs -mv 移出来就好了。
4、如果想直接删除
hdfs dfs -rm -skipTrash 跳过垃圾回收箱