linux

Linux文件管理如何恢复误删除文件

小樊
53
2025-09-14 21:31:42
栏目: 智能运维

在Linux系统中,如果误删除了文件,可以尝试以下几种方法来恢复:

1. 使用extundelete(适用于ext3/ext4文件系统)

extundelete是一个专门用于恢复ext3和ext4文件系统中删除文件的工具。

安装extundelete

sudo apt-get install extundelete  # Debian/Ubuntu
sudo yum install extundelete      # CentOS/RHEL

恢复文件

sudo extundelete /dev/sdXY --restore-file path/to/deleted/file

或者恢复整个目录:

sudo extundelete /dev/sdXY --restore-directory path/to/deleted/directory

2. 使用testdisk(适用于多种文件系统)

testdisk是一个强大的数据恢复工具,支持多种文件系统。

安装testdisk

sudo apt-get install testdisk  # Debian/Ubuntu
sudo yum install testdisk      # CentOS/RHEL

使用testdisk恢复文件

  1. 运行testdisk
    sudo testdisk
    
  2. 选择要恢复的分区。
  3. 选择“Analyse”选项,然后选择“Quick Search”或“Deep Search”。
  4. 找到并选择要恢复的文件或目录。
  5. 选择“Recover”并按照提示操作。

3. 使用PhotoRec(适用于多种文件系统)

PhotoRectestdisk的姊妹工具,专门用于恢复丢失的图片、视频、文档等文件。

安装PhotoRec

sudo apt-get install testdisk  # Debian/Ubuntu
sudo yum install testdisk      # CentOS/RHEL

使用PhotoRec恢复文件

  1. 运行PhotoRec
    sudo photorec /dev/sdXY
    
  2. 选择要恢复的分区。
  3. 选择文件系统类型(如果不确定,可以选择“Other”)。
  4. 选择文件类型(如“Pictures”、“Videos”等)。
  5. 选择恢复文件的目录。
  6. 按照提示操作。

4. 使用debugfs(适用于ext3/ext4文件系统)

debugfs是一个低级别的文件系统调试工具,也可以用于恢复删除的文件。

使用debugfs恢复文件

  1. 挂载文件系统为只读模式:
    sudo mount -o ro /dev/sdXY /mnt
    
  2. 运行debugfs
    sudo debugfs /dev/sdXY
    
  3. debugfs提示符下,使用lsdel命令查看删除的文件列表。
  4. 使用undel命令恢复文件:
    undel <inode_number>
    

注意事项

希望这些方法能帮助你恢复误删除的文件!

0
看了该问题的人还看了