HDFS的回收站(Trash)是一个用于临时存放被删除文件的机制,类似于操作系统中的回收站。它允许用户在误删文件后恢复数据,避免因误操作导致永久丢失。

一、回收站工作原理

1.执行流程

用户删除文件 → 文件进入回收站 → 等待 fs.trash.interval 时间 → 触发检查点 → 系统扫描回收站 → 删除所有过期文件

2.触发检查点条件

当前时间 - 上次检查点时间 ≥ fs.trash.checkpoint.interval

文件存在回收站中的时间 ≥ fs.trash.interval

3.删除文件的去向

当用户执行rm命令删除文件时,文件不会立马从磁盘上消失,而是移动到回收站目录(默认路径:/user/$USER/.Trash,用户在文件空窗期间恢复数据,为文件删除操作提供反悔机会。

二、回收站配置

1.关闭HDFS集群

stop-dfs.sh

2.修改core-site.xml文件

在hadoop01上修改core-site.xml文件

<!-- 开启回收站功能 -->
<!-- 保留24小时 -->
<property>
	<name>fs.trash.interval</name>
	<value>1440</value>
</property>
<!-- 立即同步interval,文件过期后马上检查 -->
<property>  
    <name>fs.trash.checkpoint.interval</name>  
    <value>0</value>  
</property>

3.同步集群配置文件

scp /opt/installs/hadoop/etc/hadoop/core-site.xml hadoop@bigdata02:/opt/installs/hadoop/etc/hadoop/core-site.xml
scp /opt/installs/hadoop/etc/hadoop/core-site.xml hadoop@bigdata03:/opt/installs/hadoop/etc/hadoop/core-site.xml

4.启动hdfs集群

在hadoop01上启动集群

start-dfs.sh

三、回收站使用

1.删除文件

回收站开启后文件不会直接删除,而是移动到回收站

hdfs dfs -rm /a.txt

在这里插入图片描述
在这里插入图片描述

2.恢复文件

#文件恢复时可以恢复到与源文件不同的位置
hdfs dfs -mv /user/root/.Trash/Current/a.txt /home

在这里插入图片描述

3.跳过回收站直接删除

hdfs dfs -rm -skipTrash /home/a.txt

在这里插入图片描述
在这里插入图片描述

4.清理回收站

回收站在配置时已经配置自动删除,但也可以手动清空回收站来释放hdfs的空间

# 该命令会立马删除过期的文件
hdfs dfs -expunge

在这里插入图片描述

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐