温馨提示×

CentOS回收站数据如何恢复

小樊
46
2025-10-26 03:26:51
栏目: 智能运维

CentOS回收站数据恢复方法

一、通过图形界面恢复(适用于带图形环境的CentOS版本,如CentOS 8 GNOME)

若系统安装了图形桌面环境(如GNOME),可通过文件管理器直接恢复回收站文件:

  1. 打开文件管理器(如Nautilus);
  2. 导航至回收站(通常位于侧边栏“收藏夹”或底部工具栏);
  3. 找到需恢复的文件/文件夹,右键点击并选择**“还原”**,文件将自动恢复至原始位置。

二、使用trash-cli命令行工具(推荐,适用于无图形环境或习惯命令行的用户)

trash-cli是模拟回收站功能的命令行工具,需先安装后使用:

  1. 安装trash-cli
    打开终端,执行sudo yum install trash-cli(需联网,等待安装完成)。
  2. 查看回收站文件
    执行trash-list,将显示回收站中所有文件及删除时间(格式:删除时间 文件名)。
  3. 恢复单个文件
    执行trash-restore,按提示输入需恢复文件的编号(如1对应第一个文件),或直接指定文件名(如trash-restore example.txt),文件将恢复至原始路径。
  4. 恢复所有文件
    执行trash-restore -r,将递归恢复回收站中所有文件至各自原始位置。

三、手动恢复(适用于知道回收站目录结构的用户)

CentOS回收站的默认存储路径为用户主目录下的.local/share/Trash,包含两个子目录:

  • files/:存放被删除的文件(保留原始文件名);
  • info/:存放文件元数据(如原始路径、删除时间)。
    手动恢复步骤:
  1. 打开终端,进入files/目录:cd ~/.local/share/Trash/files
  2. 查找需恢复的文件:使用find命令(如find . -name "lost_file.txt"),定位文件所在位置;
  3. 恢复文件:使用mv命令将文件移动至原始路径(如mv ./lost_file.txt ~/Documents/),其中~/Documents/需替换为文件原始存储目录。

四、使用extundelete工具(适用于ext4/ext3分区,恢复未覆盖的文件)

若回收站功能失效(如文件被rm -rf直接删除)或需恢复更早删除的文件,可使用extundelete工具:

  1. 安装extundelete
    执行sudo yum install e2fsprogs*安装依赖,然后下载并编译extundelete(如wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2,解压后./configure --prefix=/usr/local/extundelete && make && make install)。
  2. 恢复单个文件
    执行/usr/local/extundelete/bin/extundelete /dev/sdbX --restore-file /path/to/lost_file.txt/dev/sdbX为文件所在分区,如/dev/sda1/path/to/lost_file.txt为文件原始路径),恢复的文件将保存至当前目录下的RECOVERED_FILES/文件夹。
  3. 恢复整个分区文件
    执行/usr/local/extundelete/bin/extundelete /dev/sdbX --restore-all,将恢复分区中所有可恢复的文件至RECOVERED_FILES/

五、使用TestDisk工具(适用于多种分区类型,恢复丢失的分区或文件)

TestDisk是一款强大的数据恢复工具,支持ext4、NTFS等多种分区格式:

  1. 安装TestDisk
    执行sudo yum install testdisk安装。
  2. 运行TestDisk
    终端输入testdisk,按提示选择**“Proceed”→ 选择需恢复的磁盘(如/dev/sda)→ 选择分区类型(通常为Intel)→ 选择“Advanced”→ 选择“Undelete”**,扫描后可预览丢失文件,按c键复制文件至安全目录(如/home/user/recovered/)。

注意事项

  1. 尽快恢复:文件删除后,磁盘空间未被新数据覆盖前,恢复成功率最高;
  2. 避免写入操作:恢复前不要向误删文件所在分区复制、创建或修改文件,防止覆盖原数据;
  3. 定期备份:最有效的防数据丢失方式,建议使用rsynctar或第三方备份工具(如Veeam)定期备份重要数据。

0