Linux Minimal系统通常未预装图形化工具,需通过命令行工具恢复误删除文件。以下是常用且有效的方法,按操作复杂度排序:
lsof命令恢复未完全删除的文件若文件被删除但仍有进程占用(如编辑器未关闭),可通过lsof找到进程并恢复数据。
lsof | grep deleted | grep "文件名"(如lsof | grep deleted | grep "test.txt");1u);/proc读取文件内容:cat /proc/<PID>/fd/<FD> > 恢复后的文件名(如cat /proc/1234/fd/1 > recovered_test.txt)。extundelete工具(适用于ext3/ext4文件系统)extundelete是专门恢复ext3/ext4文件系统的工具,支持按文件名、inode或目录恢复。
sudo apt-get update && sudo apt-get install extundelete # Debian/Ubuntu系
sudo yum install extundelete # CentOS/RHEL系
sudo extundelete /dev/sdXY --restore-file path/to/deleted/file # 如/dev/sda1/home/user/test.txt
sudo extundelete /dev/sdXY --restore-directory path/to/deleted/dir # 如/dev/sda1/home/user/Documents
sudo extundelete /dev/sdXY --restore-all # 恢复文件存放在当前目录的RECOVERED_FILES文件夹中
sudo umount /dev/sdXY),避免新数据覆盖。testdisk工具(支持多种文件系统)testdisk是开源数据恢复工具,可修复分区表、恢复删除分区及文件,适用于ext2/ext3/ext4、FAT32/NTFS等。
sudo apt-get update && sudo apt-get install testdisk # Debian/Ubuntu系
sudo yum install testdisk # CentOS/RHEL系
sudo testdisk,选择目标磁盘(如/dev/sda);Intel,适用于大多数PC);Analyse→Quick Search(快速搜索)或Deep Search(深度搜索);Write保存分区表(若需修复);Advanced→Undelete,浏览并恢复文件。photorec工具(恢复多媒体及文档文件)photorec是testdisk的姊妹工具,专注于恢复图片、视频、文档等文件,忽略文件系统结构,适合文件系统严重损坏的情况。
photorec通常与testdisk一同安装(sudo apt-get install testdisk)。sudo photorec /dev/sdXY(目标分区);Other,适用于未知文件系统);Photos、Documents或All);/home/user/recovered_files);文件类型+编号命名(如IMG001.jpg)。debugfs工具(低级别调试,适用于ext2/ext3/ext4)debugfs是ext文件系统的调试工具,可通过inode号恢复文件,适合有一定经验的用户。
sudo umount /dev/sdXY;sudo debugfs /dev/sdXY进入交互模式;lsdel,记录目标文件的inode号(如12345);undel <inode号>(如undel 12345),或使用dump <inode号> /恢复路径/文件名(如dump 12345 /home/user/recovered_file.txt);quit退出。extundelete;多文件系统或分区表损坏选testdisk/photorec;有进程占用选lsof。dd命令),防止操作失误导致二次丢失。以上方法均适用于Linux Minimal系统,可根据文件系统类型和实际情况选择。