ubuntu

Ubuntu分区如何恢复误删文件

小樊
47
2025-09-27 04:14:15
栏目: 智能运维

Ubuntu分区恢复误删文件的常用方法

一、优先尝试:从回收站(Trash)恢复

若文件是通过图形界面(如Nautilus文件管理器)删除(右键选择“Move to Trash”),或使用trash-put命令删除,文件会存储在回收站中,可直接恢复。

二、针对ext3/ext4文件系统:使用extundelete工具

extundelete是专为ext3/ext4设计的恢复工具,需在未向目标分区写入新数据的前提下使用(否则可能覆盖被删文件)。

  1. 安装工具
    sudo apt-get install extundelete
    
  2. 确定目标分区:通过df -Th命令查看文件所在分区(如/dev/sda1挂载于/home)。
  3. 恢复操作
    • 恢复单个文件
      sudo extundelete /dev/sdXY --restore-file /path/to/deleted/file
      
      (例如:sudo extundelete /dev/sda1 --restore-file /home/user/document.txt
    • 恢复整个目录
      sudo extundelete /dev/sdXY --restore-directory /path/to/deleted/directory
      
    • 恢复所有可恢复文件
      sudo extundelete /dev/sdXY --restore-all
      
    恢复的文件会保存在当前目录下的RECOVERED_FILES文件夹中,文件名可能被修改(可通过文件内容筛选)。

三、通用型恢复:使用TestDisk+PhotoRec组合

TestDisk主要用于分区修复,其附带的PhotoRec工具专注于文件恢复,支持ext3/ext4、FAT32、NTFS等多种文件系统,适合跨分区或格式化后的恢复。

  1. 安装工具
    sudo apt-get install testdisk
    
  2. 启动PhotoRec
    sudo photorec
    
  3. 操作步骤
    • 选择目标磁盘(如/dev/sda,而非分区/dev/sda1);
    • 选择分区类型(Intel/EFI,通常选“Intel”);
    • 选择文件系统类型(自动检测或手动指定,如“Ext4”);
    • 选择扫描模式(“Quick Scan”快速扫描、“Deep Scan”深度扫描,深度扫描耗时更长但更彻底);
    • 选择恢复文件的存储路径(务必选择与目标分区不同的磁盘,避免覆盖);
    • 开始扫描并恢复(按提示操作)。

四、进阶调试:使用debugfs工具(需熟悉文件系统)

debugfs是ext2/ext3/ext4的调试工具,可通过inode直接恢复文件,适合有一定技术基础的用户。

  1. 进入调试模式
    sudo debugfs /dev/sdXY
    
  2. 查询被删文件
    lsdel
    
    输出会显示被删文件的inode编号(如24681)、大小、删除时间等信息。
  3. 恢复文件
    dump <inode编号> /path/to/save/file
    
    (例如:dump 24681 /mnt/recovery/important.doc

五、恢复注意事项

以上方法覆盖了Ubuntu下常见的误删场景,可根据实际情况选择合适的方式。若数据极其重要且自行恢复失败,建议寻求专业数据恢复服务。

0
看了该问题的人还看了