常见的HDFS命令行操作

#在HDFS文件系统中创建一个目录
[root@node1 opt]# hdfs dfs -mkdir -p /user/root
#查看HDFS指定目录的文件列表
[root@node1 ~]# hdfs dfs -ls /user
Found 1 items
drwxr-xr-x   - root supergroup          0 2021-10-09 11:07 /user/root
[root@node1 ~]# hdfs dfs -ls /user/root
#上传文件到指定目录
[root@node1 opt]# hdfs dfs -put hadoop-3.1.3.tar.gz /user/root
#创建一个文本文件并上传
[root@node2 ~]# vim test.txt
hello tom
hello itbaizhan
hello gtjin
[root@node2 ~]# hdfs dfs -put test.txt /usr/root
put: `/usr/root': No such file or directory: `hdfs://node1:9820/usr/root'#路径写错了。
#上传文件时需要指定存在的路径
[root@node2 ~]# hdfs dfs -put test.txt /user/root
#再次查看指定目录下的文件列表
[root@node2 ~]# hdfs dfs -ls /user/root
Found 2 items
-rw-r--r--   2 root supergroup  338075860 2021-10-09 11:11 /user/root/hadoop-3.1.3.tar.gz
-rw-r--r--   2 root supergroup         38 2021-10-09 11:12 /user/root/test.txt

也可以通过浏览器进行查看:http://192.168.20.101:9870/explorer.html#/user/root
常见的HDFS命令行操作
删除文件或目录

[root@node2 ~]# hdfs dfs -mkdir /test
[root@node2 ~]# hdfs dfs -put test.txt /test
[root@node2 ~]# hdfs dfs -rm /test
rm: `/test': Is a directory
[root@node2 ~]# hdfs dfs -rm /test/test.txt
Deleted /test/test.txt
[root@node2 ~]# hdfs dfs -put test.txt /test
[root@node2 ~]# hdfs dfs -rm -r /test
Deleted /test

集群启动和停止总结:
HDFS各个角色一起停止

[root@node1 ~]# stop-dfs.sh 
#出现以下异常信息
Stopping namenodes on [node1]
ERROR: Attempting to operate on hdfs namenode as root
ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation.
Stopping datanodes
ERROR: Attempting to operate on hdfs datanode as root
ERROR: but there is no HDFS_DATANODE_USER defined. Aborting operation.
Stopping secondary namenodes [node2]
ERROR: Attempting to operate on hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation.

#解决办法:修改stop-dfs.sh文件,添加以下内容
[root@node1 ~]# vim /opt/hadoop-3.1.3/sbin/stop-dfs.sh
HDFS_NAMENODE_USER=root
HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
# 再次执行停止操作
[root@node1 ~]# stop-dfs.sh 
Stopping namenodes on [node1]
上一次登录:六 10月  9 10:50:25 CST 2021pts/0 上
Stopping datanodes
上一次登录:六 10月  9 11:38:02 CST 2021pts/0 上
Stopping secondary namenodes [node2]
上一次登录:六 10月  9 11:38:03 CST 2021pts/0 上

单独启动某角色进程:
hdfs --daemon start namenode/secondarynamenode/datanode

#在node1上启动namenode
[root@node1 ~]# hdfs --daemon start namenode
[root@node1 ~]# jps
7235 NameNode
7304 Jps
#在node2上启动2nn和dn
[root@node2 ~]# hdfs --daemon start secondarynamenode
[root@node2 ~]# hdfs --daemon start datanode
[root@node2 ~]# jps
6672 DataNode
6629 SecondaryNameNode
#在node3和node4上分别启动DataNode
[root@node3 ~]# hdfs --daemon start datanode
[root@node3 ~]# jps
6034 Jps
5962 DataNode
[root@node4 ~]# hdfs --daemon start datanode
[root@node4 ~]# jps
6009 DataNode
6078 Jps

单独关闭某角色进程
hdfs --daemon stop namenode/secondarynamenode/datanode

[root@node4 ~]# hdfs --daemon stop datanode
[root@node4 ~]# jps
6251 Jps
[root@node3 ~]# hdfs --daemon stop datanode
[root@node3 ~]# jps
6247 Jps
[root@node2 ~]# hdfs --daemon stop datanode
[root@node2 ~]# hdfs --daemon stop secondarynamenode
[root@node2 ~]# jps
7327 Jps
[root@node1 ~]# hdfs --daemon stop namenode
[root@node1 ~]# jps
7710 Jps

HDFS各个角色一起启动

[root@node1 ~]# start-dfs.sh
Starting namenodes on [node1]
上一次登录:六 10月  9 11:38:06 CST 2021pts/0 上
Starting datanodes
上一次登录:六 10月  9 11:48:18 CST 2021pts/0 上
Starting secondary namenodes [node2]
上一次登录:六 10月  9 11:48:20 CST 2021pts/0 上
上一篇:五花八门的统计质量值的软件


下一篇:定时获取最新ssr服务器的方法