星期六, 11月 06, 2004

[os][linux] 搶救linux上被刪除的檔案

詳見 旗標電腦學習報 一文

昏倒作業系統 上刪除的檔案會放置到資源回收桶中,可是你怒克絲上沒有這種東西要怎麼辦?
旗標一文指出 重要的舊檔步驟,節錄如下:

1. unmount partition 避免標記以刪除區塊被其他檔案寫入資料
2. remount 成唯讀的partition
3.利用debugfs /somedev/partition 程式中 lsdel 指令列出 被刪除的區塊 ->dump [inode id]指令 恢復檔案

[限制]
只能用於ext2 fs 其他檔案系統 ext3 ,reiserfs 必須使用grep指令 找出檔案可能的區塊,且耗時較久.

-------------------------
相關指令

1. mount -> 顯示目前掛上設備狀況
mount -o ro,remount /dev/hdd1 這行指令代表 以唯讀ㄉ方式重新掛載partition [ro-> readonly]

2. umount ->卸載目前掛上設備
例如: umount /dev/hdd1 將第四顆硬碟卸載

3. fuser ->檢查目前使用檔案情況,包跨使用者,PID等等訊息
/sbin/fuser -v -m /home3
-v verbose
-m /some/partition 指定目前已掛載的檔案系統
如果目前有人正在使用此partition 而無法umount時,可考慮kill PID or remount 成 ro 狀態

4.grep -a /dev/hdc1 <-ascii mode
-B2 第二行後
-A54 前54行
'keyword:可輸中文'
> ' /dev/part1/some.sav' some.sav輸出檔

整段的意思,就是 用文字模式 掃描第三顆硬碟. 找出包含關鍵字 'keyword:可輸中文' 的檔案,並且輸出該檔案中第二行到第54行的部分,另存新檔為 /dev/part1/some.sav

另外,有一個可在windows模式下跑的 linux file 搶救工具 R-linux 網址在這裡


張貼留言