全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

回收站

最近更新时间:2025-09-19 16:57:09

为避免由于误删除KFS文件系统中的文件/目录导致业务受阻或数据丢失,强烈建议您使用文件系统时开启回收站功能。开启回收站后,被删除的文件或目录将暂存在回收站目录中,并在规定的保留时间之后彻底删除。您可以在保留时间期间恢复这些文件及其UID、GID和ACL等元数据信息。

应用场景

KFS文件系统开启回收站功能后,被删除的文件或目录将暂存在回收站目录中,包括但不限于以下几种场景:

  • 手动误删除NAS文件的找回

  • 恶意删除文件的找回

  • 应用程序使用NAS文件系统产生的临时文件找回

  • 使用应用程序在计算节点上自动删除的NAS中的文件或目录找回

  • 应用程序自动轮转的日志文件找回

名词解释

名词

解释

回收站目录是否可见

设置为“可见”时,系统会显示回收站目录.recyclebininternal。

只要启用过回收站功能且在启用期间有文件被删除过,就会有回收站目录(若仅启用了回收站功能,但无文件删除,也不会有回收站目录)。

回收站内文件的用户权限管理

系统根据用户名和用户ID为每个用户创建自己的目录,只有“root用户”具有操作所有用户目录的权限,“普通用户”有操作个人目录下文件的权限。

回收站功能的IAM权限管理

回收站的功能使用权限(如开启、关闭、配置保留时长),功能合并在“创建文件系统”、“回收站配置管理”的IAM权限内。

数据进入回收站的前提条件

回收站功能默认关闭,您可在创建文件系统时根据业务需要开启或关闭,也可以在使用过程中修改该开关。

系统根据以下情况判断删除的文件是否可进入回收站,需满足下列5个条件:

条件

描述

1

文件系统实例的回收站开关为开启状态。

2

回收站内被删除的文件不在回收站内,回收站内文件删除时会彻底删除。

3

空目录删除不会进入回收站(非空目录删除会包含所有文件全部进入回收站)。

4

进入回收站的文件路径长度需小于4000字节,超出此限制的文件不能进入回收站。

5

硬链接不进入回收站。当删除文件的最后一个链接时,文件才会进入回收站。

回收站使用说明

回收站功能本身不收取任何费用,文件从原来的位置移入回收站并不会真正删除,也不会释放存储空间或释放配额,仍然按照删除前的容量来收取存储费用。为节省不必要的存储费用,请您合理配置文件保留时间。

操作方式

标准协议(NFS/CIFS)不支持界面/API恢复操作。若想恢复回收站内的数据,需手动拷贝或者移动该数据到预期的目录下。

生效范围

  • 开启:该开关只对回收站功能开启后删除的文件生效。

  • 关闭:回收站功能关闭后删除的文件不进入回收站(关闭回收站不影响回收站内现存数据的保留)。

操作权限

用户可访问回收站内的目录与文件由回收站操作权限控制,有权限的用户可以“读取”、“修改”、“删除”该目录以及目录下的文件:

  • 普通用户权限:用户可访问归属于自己的目录与文件

  • root用户权限:可以添加权限以便其他用户能访问

使用冲突

  • 不建议用户向回收站目录中直接写入文件,避免与回收站内的文件产生冲突。

  • 同一个目录下反复创建删除同名文件的场景下,文件移入回收站时可能已经存在同名文件。系统检测到存在同名文件时,会在文件名前加上copy#SN #+文件名,其中SN为系统加上的一个序列号,在同一个dtree内是唯一的,不会存在相同的情况。

功能限制

  • 快照功能与回收站功能不互斥,可共同使用。

  • 开启回收站后文件系统仍可删除。

  • 文件系统欠费/到期后会禁止读写,但不影响回收站内数据继续保留。

  • 回收站根目录不允许rename。

  • 回收站中的文件被删除时不会再次进入回收站。

  • 仅创建时间在2025-08-31以后文件系统支持回收站能力。

原理描述

数据进入回收站

  1. 文件源路径获取

    • 在用户删除文件时,检测对应“文件系统实例”的“回收站开关”是否开启,如果“开启”系统进行“路径回溯”,在删除文件时会进行目录回溯,获取到“文件的全路径”。如果文件可以进入回收站,在删除时只“召回待删除文件对应的锁”,并在“隐藏该文件”。同时“记录后台操作日志”,日志中记录了该文件在回收站中的相对路径和文件名,数据存放的对象等信息。

    • 系统在后台回放后台操作日志,读取每一条日志,根据相对路径在对应文件系统下创建在回收站中的目录,再把存放数据的对象和文件名绑定在一起,这样就可以在回收站中访问该文件。

  2. 回收站目录创建

    • 在开启回收站后,文件系统首次删除文件时,会为文件系统的根目录下创建回收站目录.recyclebininternal

  3. 删除文件入回收站

    • 每个文件系统的回收站目录是独立的,文件在回收站中保持删除前的相对路径。文件进入回收站时会首先放入“/.recyclebininternal/用户目录/current”目录下。

如归属于root用户的文件在Dtree中的相对路径为/a/b/c.txt,在回收站中的路径为/.recyclebininternal/root/current/a/b/c.txt。

  • 在同一个目录下反复创建删除同名文件的场景下,文件移入回收站时可能已经存在同名文件。系统检测到存在同名文件时,会在文件名前加上copy#SN #+文件名,其中SN为系统加上的一个序列号,在同一个dtree内是唯一的,不会存在相同的情况。

回收站内文件自动清理

为了不占用多余空间,客户可以配置文件在回收站内的保留时长,系统会定期检查回收站内的目录以及数据。系统会自动删除回收站内超过保留时长的文件。

  1. 设定文件系统数据保留时长

    • 保留时长可以设置为长期保留,此时回收站内的文件不能被自动删除,必须由管理员或其他具有权限的用户手动删除。

  2. 系统定期扫描保留时长为“固定定期”的文件系统

    • 系统会按照设置好的扫描周期定时扫描该“current”目录。在执行扫描时,如果“current”目录下存在文件,则系统会新建一个以扫描当前时间戳(时间戳格式:年月日时分秒)为名称的目录,并将“current”目录下的所有文件移动到该新建目录。

    • 在之后执行扫描时,系统会检测该新建目录的时间戳与当前时间的时间差,并判断是否超过保留时长。如果超过保留时长,系统会在后台递归删除该目录,从而释放空间。

回收站内文件手动管理

所有回收站内的文件管理均需“客户端挂载”后才可操作,且需用于相应的操作权限。

回收站恢复(拷贝)文件
  1. 执行以下命令,删除文件到回收站。

[root@localhost current]# rm -rf n3

  1. 执行以下命令,进入回收站目录。

[root@localhost current]# cd .recyclebininternal/root/current/

  1. 执行以下命令,拷贝出来删除到回收站的文件(自定义路径)。

[root@localhost current]# cp n3 /mnt/spe/

回收站删除文件
  1. 执行以下命令,彻底删除回收站的文件。

[root@localhost current]# rm -rf n3

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈