首页主机资讯Linux回收站如何恢复误删

Linux回收站如何恢复误删

时间2025-12-17 08:56:04发布访客分类主机资讯浏览1455
导读:Linux回收站误删的恢复指南 一 先判断属于哪类删除 使用桌面文件管理器删除(如 Nautilus/GNOME、Dolphin/KDE、Thunar/XFCE)时,文件一般会进入用户级回收站目录 ~/.local/share/Trash...

Linux回收站误删的恢复指南

一 先判断属于哪类删除

  • 使用桌面文件管理器删除(如 Nautilus/GNOME、Dolphin/KDE、Thunar/XFCE)时,文件一般会进入用户级回收站目录 ~/.local/share/Trash/,其结构为:files/(存放文件)、info/(存放 .trashinfo 元数据,含原路径与删除时间)、expunged/(已彻底删除)。这类情况可直接在回收站中还原或用命令行工具按元数据恢复。
  • 使用终端命令 rm/rm -rf 删除时,文件通常不经过回收站,而是直接从目录项移除;此时需走文件系统级恢复(如 extundelete、TestDisk/PhotoRec)或检查是否仍被进程占用(lsof)。

二 图形界面回收站的恢复步骤

  • 直接恢复:打开文件管理器侧栏的回收站,右键目标文件选择恢复,或拖回原位置。适用于 GNOME/KDE/XFCE 等桌面环境。
  • 命令行恢复(推荐用 trash-cli):
    1. 安装:sudo apt install trash-cli(Debian/Ubuntu),sudo yum install trash-cli(CentOS/RHEL)。
    2. 查看:trash-list(或 trash-list | grep 关键字)。
    3. 交互式恢复:trash-restore(按提示选择编号恢复)。
    4. 指定恢复:trash-restore < 路径或文件名> (部分版本支持)。
    5. 仅删除回收站内某文件:trash-rm < 文件名> ;清空回收站:trash-empty。
  • 直接操作回收站目录(了解即可):在 ~/.local/share/Trash/ 下,files 中是被删文件,info 中的 .trashinfo 记录了 Path=原路径DeletionDate=删除时间;可按 .trashinfo 的 Path 将文件从 files 移回原处。操作前建议先备份该目录。

三 命令行 rm 删除后的恢复路径

  • 文件仍被进程占用:用 lsof | grep deleted 找到占用进程,记录 PID 与文件描述符(如 fd 3),通过 /proc//fd/ 复制回原路径(例如:cp /proc//fd/3 /path/recovered.file)。
  • ext 系列文件系统(ext3/ext4):优先在卸载分区后使用 extundelete 恢复。示例:
    • 卸载:sudo umount /dev/sdXN
    • 恢复单文件:extundelete /dev/sdXN --restore-file /path/to/file
    • 恢复目录:extundelete /dev/sdXN --restore-directory /path/to/dir
    • 恢复全部:extundelete /dev/sdXN --restore-all(谨慎)
      恢复文件默认输出到当前目录的 RECOVERED_FILES/
  • 跨文件系统或 extundelete 不适用:使用 TestDisk/PhotoRec。示例:sudo testdisk,按向导选择磁盘与分区,PhotoRec 可按文件类型扫描未分配空间并恢复。
  • 重要提示:恢复前尽量避免对目标分区写入(下载、解压、缓存、日志等),以提高成功率;成功率受删除后写入量与时间影响显著。

四 预防与最佳实践

  • 为 rm 配置“安全删除”别名:在 ~/.bashrc~/.zshrc 中添加 alias rm=‘trash-put’,并 source 使其生效;这样删除会进入回收站而非直接删除。
  • 定期清理与容量管理:回收站只是延迟删除,仍占用磁盘;可用 trash-empty 或设置周期性清理脚本。
  • 建立可靠备份:如 rsync、borgbackup 等,定期将关键目录备份到独立磁盘/云端,降低数据丢失风险。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Linux回收站如何恢复误删
本文地址: https://pptw.com/jishu/773607.html
Linux回收站清空了吗 如何在Ubuntu上排查Kafka配置问题

游客 回复需填写必要信息