hdfs开启回收站(废纸篓)
1、背景
我们知道,在mac
系统上删除文件,一般情况下是可以进入 废纸篓
里的,如果此时我们误删除了,还可以从 废纸篓中恢复过来。那么在hdfs
中是否存在类似mac上的废纸篓
这个功能呢?答案是存在的。
2、开启hdfs trash功能
- 当我们启用
Trash
功能后,从HDFS中删除某些内容时, 文件或目录不会立即被清除,而是会被移动到回收站目录中(/user/${username}/.Trash/current
)。
小知识点:
在 Trash
中还存在一个检查点
,目录路径大概为/user/${username}/.Trash/current/{检查点创建的时间戳}
,检查点
用于存储该检查点创建之前删除的所有文件或目录。
2.1 core-site 配置
修改 core-site.xml
文件
<!-- 文件垃圾桶保存时间,单位秒 -->
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
<!-- 前后2次检查点创建的时间间隔,单位分钟,该值需要<=fs.trash.interval的值,新的检查点被创建后,旧的检查点就会被系统删除 -->
<property>
<name>fs.trash.checkpoint.interval</name>
<value>1440</value>
</property>
每个节点的 core-site.xml
文件都需要修改。
2.2 启动hdfs
[hadoopdeploy@hadoop01 sbin]$ start-dfs.sh
Starting namenodes on [hadoop01]
Starting datanodes
Starting secondary namenodes [hadoop03]
[hadoopdeploy@hadoop01 sbin]$
2.3 删除操作-进入.Trash目录
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -ls /
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -put start-dfs.sh /start-dfs.sh
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -ls /
Found 1 items
-rw-r--r-- 2 hadoopdeploy supergroup 5170 2023-05-22 22:36 /start-dfs.sh
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -rm /start-dfs.sh
2023-05-22 22:36:42,612 INFO fs.TrashPolicyDefault: Moved: 'hdfs://hadoop01:8020/start-dfs.sh' to trash at: hdfs://hadoop01:8020/user/hadoopdeploy/.Trash/Current/start-dfs.sh
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -ls /
Found 1 items
drwx------ - hadoopdeploy supergroup 0 2023-05-22 22:36 /user
[hadoopdeploy@hadoop01 sbin]$
2.4 直接删除-不进入.Trash目录
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -ls /
Found 1 items
drwx------ - hadoopdeploy supergroup 0 2023-05-22 22:36 /user
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -put start-dfs.sh /start-dfs.sh
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -ls /
Found 2 items
-rw-r--r-- 2 hadoopdeploy supergroup 5170 2023-05-22 22:41 /start-dfs.sh
drwx------ - hadoopdeploy supergroup 0 2023-05-22 22:36 /user
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -rm -skipTrash /start-dfs.sh
Deleted /start-dfs.sh
[hadoopdeploy@hadoop01 sbin]$ hadoop fs -ls /
Found 1 items
drwx------ - hadoopdeploy supergroup 0 2023-05-22 22:36 /user
[hadoopdeploy@hadoop01 sbin]$
推荐阅读
hdfs中acl权限管理的简单实用
在我们开发的过程中有这么一种场景, /projectA 目录是 hadoopdeploy用户创建的,他对这个目录有wrx权限,同时这个目录属于supergroup,在这个组中的用户也具有这个目录的wrx权限,对于其他人,不可访问这个目录。...
huan1993
Java8的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...
codecraft赞 32阅读 27.5k评论 1
一文彻底搞懂加密、数字签名和数字证书!
微信搜索🔍「编程指北」,关注这个写干货的程序员,回复「资源」,即可获取后台开发学习路线和书籍来源:个人CS学习网站:[链接]前言这本是 2020 年一个平平无奇的周末,小北在家里刷着 B 站,看着喜欢的 up 主视...
编程指北赞 71阅读 33.6k评论 20
Java11的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...
codecraft赞 28阅读 19.3k评论 3
Java5的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...
codecraft赞 13阅读 21.8k
Java9的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...
codecraft赞 20阅读 15.3k
Java13的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...
codecraft赞 17阅读 11.2k
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。