Hadoop HDFS Train
准备
启动HDFS
使用用户zhangsan启动HDFS(张三用户已配置免密登录);
使用用户root执行后续操作。
配置全局环境变量
1 | [root@node0 ~]# vim /etc/profile |
Linux本地创建三个文件
1 | [root@node1 ~]# echo "hello hadoop" > file_hadoop |
创建目录
在HDFS上创建目录/input,如果创建失败(把root用户加入supergroup)
1 | [root@node0 ~]# groupadd supergroup |
创建文件夹 hdfs:///input/
1 | [root@node1 ~]# hdfs dfs -mkdir /input |
创建文件夹hdfs:///user/root/
1 | [root@node1 ~]# hdfs dfs -mkdir /user/root |
Linux与HDFS交互
上传文件
上传文件 file_hadoop到hdfs:///input/
1 | [root@node1 ~]# hdfs dfs -put file_hadoop /input |
创建空白文件
创建空白文件hdfs:///input/file_hbase
1 | [root@node1 ~]# hdfs dfs -touchz /input/file_hbase |
内容追加
将本地文件 file_to_append 的内容追加到 hdfs:///input/file_hbase
1 | [root@node1 ~]# hdfs dfs -appendToFile file_to_append /input/file_hbase |
内容查看
查看HDFS中 hdfs:///input/file_hbase 文件内容
1 | [root@node1 ~]# hdfs dfs -cat /input/file_hbase |
本地移动到HDFS
将本地文件 file_to_move 移动到 hdfs:///input/
1 | [root@node1 ~]# hdfs dfs -moveFromLocal file_to_move /input/ |
HDFS文件管理
文件重命名
将 hdfs:///input/file_to_move 重命名为 hdfs:///input/file_spark
1 | [root@node1 ~]# hdfs dfs -mv /input/file_to_move /input/file_spark |
将文件夹 hdfs:///input/ 重命名为 hdfs:///data/
1 | [root@node1 ~]# hdfs dfs -mv /input /data |
目录复制
将目录hdfs:///data/ 复制到 hdfs:///user/root/下
1 | [root@node1 ~]# hdfs dfs -cp /data/ /user/root/ |
文件列表
查看hdfs:///user/root/data下的文件的详细信息(创建修改时间,所有者,权限)
1 | [root@node1 ~]# hdfs dfs -ls /user/root/data |
合并下载
将hdfsfile_hadoop, file_hbase, file_spark下载到本地 file_merge.txt,以换行符分割。
1 | [root@node1 ~]# hdfs dfs -getmerge /user/root/data/* ~/file_merge.txt |
统计
统计hdfs:///user/root/data内文件数量和总大小
1 | [root@node1 ~]# hdfs dfs -count /user/root/data/ |
删除
删除hdfs:///data/下的所有文件
1 | TODO |
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.