在 CentOS 系统中,如果误删了文件,有几种可能的恢复方法,具体取决于删除方式、文件系统类型以及删除后是否进行了写入操作。
如果文件是通过图形界面删除的,可能还在回收站中:
cd ~/.local/share/Trash/files/
ls -l
找到需要的文件后,直接复制出来即可。
对于 EXT3/EXT4 文件系统,可以使用 extundelete:
yum install epel-release
yum install extundelete
umount /dev/sdXN
extundelete /dev/sdXN --restore-file /path/to/deleted/file
# 或恢复整个分区
extundelete /dev/sdXN --restore-all
恢复的文件会保存在当前目录的 RECOVERED_FILES
目录中。
yum install testdisk
photorec /dev/sdXN
按照交互式界面操作,选择恢复的文件类型和保存位置。
对于 EXT 文件系统,可以使用 debugfs:
debugfs /dev/sdXN
lsdel
查看已删除的 inode 列表,然后:
dump <inode> /path/to/save/file
立即停止写入操作:删除文件后,应立即停止对该分区的任何写入操作,以免覆盖被删除文件的数据块。
恢复成功率:恢复成功率取决于删除后是否有新数据写入该位置。
备份优先:定期备份是防止数据丢失的最佳实践。
远程恢复:如果是远程服务器,可以考虑先做磁盘镜像再进行恢复操作。
专业服务:对于极其重要的数据,建议联系专业数据恢复服务。
希望这些方法能帮助您恢复误删的文件!