在Linux系统中,误删文件后可以通过以下几种方法尝试恢复:
-
使用extundelete工具:
- 安装:
yum install e2fsprogs*
(CentOS)或apt-get install e2fsprogs*
(Debian)。 - 恢复步骤:
- 卸载被删除文件所在的分区:
umount /dev/vdb1
。 - 使用
extundelete
恢复文件:- 恢复单个目录:
extundelete /dev/vdb1 --restore-directory ferris
。 - 恢复单个文件:
extundelete /dev/vdb1 --restore-file 22.txt
。 - 恢复全部删除的文件:
extundelete /dev/vdb1 --restore-all
。。
- 恢复单个目录:
- 卸载被删除文件所在的分区:
- 安装:
-
使用lsof命令:
- 适用情况:文件被删除但进程仍在使用该文件。
- 操作步骤:
- 使用
lsof | grep deleted
查看删除的文件是否仍在进程中使用。 - 通过
cp /proc/pid/fd/1/指定目录/文件名
恢复文件。。
- 使用
-
使用debugfs工具:
- 操作步骤:
- 进入已删除文件所在目录。
- 执行
debugfs
进入交互模式:debugfs /dev/sda2
。 - 使用
lsdel
查找被删除文件的inode。 - 使用
dump
命令恢复文件:dump dst_file_path
。。
- 操作步骤:
-
其他工具:
- TestDisk:支持恢复分区表和分区信息,适用于误删除分区的情况。。
- PhotoRec:适合恢复图片和多媒体文件。。
总之,在删除文件之前,最好做好备份,以防止数据丢失。如果文件非常重要,可以尝试使用上述方法进行恢复。