HDFS命令及管理HDFS

使用hdfs是一项最多见的hadoop集群管理工做,虽然能够经过多种方式访问HDFS,但命令行是管理HDFS存储的最经常使用的方法。例如webHDFS、使用HttpFS网关经过防火墙访问HDFS、经过Hue的文件浏览器。node

使用 hdfs dfs命令来管理HDFSlinux

语法以下:web

hdfs dfs  [GENERIC_OPTION]  [COMMAND_OPTION]浏览器

   1、列出HDFS的文件和目录ide

hdfs  dfs  -ls  /      查看文件/路径的文件及目录oop

图片7.png 

能够在ls后面加-d列出目录及查看目录相关信息  -R  -h  spa

hdfs  dfs  -cat  /path/file.txt     查看file.txt的内容操作系统

关于hdfs dfs的更多选项能够输入hdfs dfs -help 命令行

二、使用hdfs stat 命令获取相关文件的详细信息3d

图片8.png 

%n 返回文件或者目录名

%b 返回文件目录的大小,byte。从上面看出目录不占用空间,它的大小为0.

%g 返回group

%y 格式话时inodemtime

%u 用户

三、建立HDFS目录

建立hdfs目录和linux文件系统中建立目录相似,可使用mkdir命令建立hdfs建立

Hadfs  dfs  -mkdir  /usr/hadoop/dir1   必须/usr/hadoop路径存在才能建立

若是要沿路径建立父目录,指定-p参数

图片9.png 

四、删除HDFS文件和目录

 

   删除hdfs文件和目录的命令相似于linux文件系统中的命令。使用-r|R选项递归方式删除目录及该目录下的全部内容。

-skipTrash 选项是绕过hdfs回收站当即删除指定文件及目录

hdfs  dfs  -rm -R /usr/hadoop/dir/    删除dir目录及dir目录下的文件及目录

五、更改文件目录全部权和组

可使用-chown命令更改素有者和组名称

$hdfs dfs -chown sam:produser /usr/data/name.txt

使用chgrp命令仅更改用户的组

$hdfs dfs -chgrp supergroup /data/sales/makrer.txt

更改hdfs文件权限

可使用chmod命令更改文件或目录的权限hadoop使用标准的linux文件权限。

$hdfs dfs -chmod -R  /data/meta.txt     

只有超级用户或文件及目录的全部者才能更改权限,使用chgrpchmodchown命令并指定-R选项能够对指定目录进行递归更改

6、使用dfsadmin使用程序执行HDFS操做

使用dfsadmin命令从命令行管理HDFS,虽然hdfs dfs命令能够管理HDFS文件和目录,但dfsadmin命令能够执行HDFS特定的管理任务。

dfsadmin -report命令可以显示集群的基本统计信息,包括DataNodeNaneNode的状态、配置的磁盘容量和数据块的运行情况等有用的信息。

图片10.png 

dfsadmin -report命令显示整个集群的HDFS信息,以及集群中每一个节点的HDFS详细信息。DFS命令显示集群各个dataNode级的如下信息。

hdfsadmin -report命令能够检查HDFS数据的平衡性,以及HDFS损坏状况。

Dfsadmin -refreshNodes命令用于更新链接到NameNodeDataNode列表。Namenodedfs.hosts指向文件和hdfs-site.xml中的dfs.hosts.ex-clude配置参数读取DataNode的主机名。Dfs.hosts文件列出了容许注册到namenodede 全部主机。dfs.hosts.exclude文件列出了全部须要停用的datanode

图片11.png 

dfsadmin -metasave命令提供的信息比dfsadmin -report命令提供的更多。

文件保存在/hadoop/log/下,能够find命令在本机查找

图片12.png 

HDFS用户和超级用户

     hadoop中建立用户是一种误称,由于在HDFS中没有办法像linux系统中同样建立用户身份,在默认的身份验证模式,hadoop依赖底层操做系统来肯定客户端身份,若是设置了kerbers系统测kerberos肯定客户端的身份。

因为hadoop中没有用户什么的概念,故hadoop没有固定的超级用户。Hadoop的系统超级用户只是启动NameNode的操做系统用户。Hdfs的超级用户没必要是namenode主机的root用户。能够将一组用户分配给单独的超级用户组。

管理HDFS磁盘使用状况

     可使用df命令查找可用过的空间

     $hdfs dfs -df -h

图片13.png 

hdfs dfs -du -s -h 获取已用空间的总和

检查当前空间的配额

   使用dfs -count -q命令

图片14.png

spacer.gif

相关文章
相关标签/搜索