概述
腾讯云对象存储(COS)的元数据加速桶回收站功能,为存储桶中的数据提供了一层重要的误删除保护机制。开启该功能后,所有被删除的文件不会被永久删除,而是被移动至一个临时的存储目录进行保留,用户可以在此对文件进行恢复和管理,有效降低了数据丢失的风险,并提升了数据管理的效率。
为满足不同用户的使用习惯,元数据加速桶的回收站功能提供了两种工作模式:HDFS 回收站模式与原生回收站模式,以满足大数据、AI训练等不同业务架构下的数据安全管理需求。
注意:
功能支持:本文档描述的回收站功能仅元数据加速桶支持,普通 COS 桶的回收站功能、配置流程与元数据加速桶完全不同。
版本控制:请注意,元数据加速桶不支持版本控制功能,其回收站机制是完全独立的数据保护方式,而非基于多版本。
存储费用:开启回收站后,被删除的数据会临时保留在回收站中。在数据保留期间,会正常产生存储费用。
功能优势
防止误删除:为数据删除操作提供缓冲期,拦截误删操作,是构建数据安全防线的重要一环。
灵活恢复:用户可以在保留期内,轻松找到并恢复被删除的文件或目录。
兼容多生态:提供 HDFS 标准兼容模式和原生优化模式,适应不同的技术栈和用户习惯。
自动清理:系统会根据用户配置的保留时间自动清理过期数据,无需手动干预,简化运维管理。
工作原理
回收站功能开启后,系统会在后台自动处理被删除的数据。根据您选择的模式,其内部工作原理如下:
HDFS 回收站模式
此模式旨在完全兼容 Apache Hadoop 分布式文件系统(HDFS)的回收站行为,便于迁移和使用 HDFS 生态工具的用户无缝过渡。
回收站目录:系统会自动在桶内维护 /user/<username>/.Trash/ 目录结构作为回收站路径。
每日轮转:每天,回收站 .Trash 目录下的 Current 目录会被自动重命名(Rename)为以当前日期(例如20260101)命名的目录,并创建一个新的 Current 目录以接收当天的删除文件。
自动清理:后台进程会定期扫描这些以日期命名的目录,根据目录名中的日期和您在控制台配置的保留时间,自动删除超过保留期限的目录及其内容。
注意:
HDFS 回收站模式的相关功能需要客户端(即 Hadoop FileSystem Shell 或其他大数据组件)与服务端(即元数据加速桶)配合完成。客户端侧需要确保:
开启回收站功能,一般来说就是将 core-site.xml 中的 fs.trash.interval 配置为大于 0 的值。
删除行为不会实际删除文件,而是重命名到 /user/<username>/.Trash/Current 目录下。
原生回收站模式
此模式是腾讯云 COS 为元数据加速桶设计的原生回收站方案,更贴合对象存储的使用逻辑。
回收站目录:开启后,系统会在您的文件系统的根目录下自动创建一个专用的回收站目录。该目录名称通常由请求 ID 的前8位与 _trash 后缀组成,如 /a1b2c3d4_trash。
删除操作:当发生删除操作时,文件或目录并不会被立即移除,而是被实际重命名(Rename)到上述回收站目录下的一个以当前日期命名的子目录中,并添加一个毫秒级的时间戳,如
/a1b2c3d4_trash/20260101/data/file1.log_1698765432000。自动清理:与 HDFS 模式类似,后台服务会定期根据日期子目录的名称和您配置的保留时间,自动清理过期的数据。
注意:
无论是来自用户的删除操作,还是内部发起的删除操作(如生命周期删除),都会把文件移入回收站目录。
前提条件
使用回收站功能前,请确保已完成以下准备工作:
已 挂载元数据加速桶。
操作步骤
开启回收站功能
您可以通过对象存储控制台为元数据加速桶开启回收站功能,具体操作步骤如下:
1. 登录 对象存储控制台 。
2. 在左侧导航栏中,单击存储桶列表,进入存储桶列表页面。
3. 单击需要开启回收站的元数据加速桶,进入存储桶详情页面。
4. 在左侧导航栏中,选择基础配置 > 回收站管理,进入回收站管理页面。此时回收站默认为未开启状态。

5. 单击右上角的编辑按钮,开启回收站开关,选择您需要的回收站模式。
HDFS 回收站模式:兼容 Apache Hadoop HDFS 生态的回收站行为,回收站路径为
/user/*/.Trash,适合使用 Hadoop FileSystem Shell 或其他大数据组件的用户。
原生回收站模式:腾讯云 COS 为元数据加速桶设计的原生方案,回收站路径由系统自动生成,更贴合对象存储的使用逻辑。

6. 设置保留时间(支持配置为 1-3 天),确认信息后单击保存,即可开启存储桶的回收站功能。
注意:
两种回收站模式不可共存,同一个存储桶只允许选择其中一种回收站模式。
回收站模式仅在首次开启回收站功能时可以选择。一旦开启回收站功能,后续只支持关闭或再次开启,不支持修改为其他回收站模式。请根据业务需要,谨慎选择需要的回收站模式。
开启成功后,回收站管理页面将显示当前回收站的配置信息,包括回收站模式、回收站路径和保留时间。

管理与恢复文件
开启回收站后,您可以在回收站路径下查看被删除的文件,并根据需要恢复误删除的文件。
1. 在回收站路径下找到需要还原的文件或目录。
2. 将该文件或目录通过
hdfs fs -mv 命令移动回原目录下,即可将数据恢复至原始路径。示例:
HDFS 回收站模式下恢复文件
hadoop fs -mv ofs://mountpoint/user/hadoop/.Trash/Current/data/file.txt ofs://mountpoint/data/file.txt
命令说明:
路径部分 | 说明 | 是否需要替换 |
ofs://mountpoint | 您的元数据加速桶的挂载点地址,格式为 ofs://<挂载点名称> | 需替换为您的实际挂载点名称 |
/user/hadoop | 提交删除操作的用户名对应的目录 | 需替换为实际用户名(如 /user/root) |
/.Trash/Current | 回收站固定目录路径 | 固定值,无需修改 |
/data/file.txt | 被删除文件相对于文件系统根目录的原始路径 | 需替换为实际文件路径 |
原生回收站模式下恢复文件
hadoop fs -mv ofs://mountpoint/a1b2c3d4_trash/20260101/data/file.txt_1698765432000 ofs://mountpoint/data/file.txt
命令说明:
路径部分 | 说明 | 是否需要替换 |
ofs://mountpoint | 您的元数据加速桶的挂载点地址 | 需替换为您的实际挂载点名称 |
/a1b2c3d4_trash | 系统自动生成的回收站目录名称(由请求 ID 前 8 位 + _trash 组成) | 需替换为您存储桶中实际的回收站目录名 |
/20260101 | 文件被删除时的日期(格式:YYYYMMDD) | 需替换为文件实际删除日期 |
/data/file.txt_1698765432000 | 原始文件路径 + 毫秒级时间戳后缀 | 需替换为回收站中的实际文件路径 |
/data/file.txt(目标路径) | 要恢复到的目标路径 | 需替换为您希望恢复到的实际路径 |