理論上rm刪除的文件是還能恢復(fù)的。刪掉文件其實只是將指向數(shù)據(jù)塊的索引點(information nodes)釋放,只要不被覆蓋,數(shù)據(jù)其實還在硬盤上,關(guān)鍵在于找出索引點,然后將其所指數(shù)據(jù)塊內(nèi)的數(shù)據(jù)抓出,再保存到另外的分區(qū)。在用rm誤刪除文件后,我們要做的第一件事就是保證不再向誤刪文件的分區(qū)寫數(shù)據(jù)。 通常我們可以有以下幾種選擇:
1、借助工具。
2、自己寫程序。你需要會編程并了解對應(yīng)的文件系統(tǒng)。
3、如果數(shù)據(jù)很有用,也許可以找專業(yè)公司搶救。 工具 1、The Sleuth Kit 2、Foremost 3、一個全能的工具,F(xiàn)inaldata,可以恢復(fù)unix/linux/dos下誤刪的文件。對于unix,支持這些產(chǎn)品, Solaris、AIX和HP-UX。對于linux,支持EXT2的文件系統(tǒng)。對于dos,支持FAT 12/16/32, NTFS 4/5/5.1 的文件系統(tǒng)。
4、如果文件系統(tǒng)是ext2(對ext3無效): ext3的刪除機制是直接把 inode data 刪除了,所以造成 ext3 無法反刪除(ext3設(shè)計為無法恢復(fù)被刪除的文件)。 unrm ext2ed debugfs(undel lsdel ) recover Midnight Commander(mc) e2undel tct
5、如果文件系統(tǒng)是FAT32或者NTFS: EasyRecovery Finaldata
6、freebsd如果使用了rm,可以試一下undelete這個命令.
7、當進程打開了某個文件時,只要該進程保持打開該文件,lsof可以用來恢復(fù)刪除文件。