回覆列表
  • 1 # 11583486789

     linux下可以透過debugfs來恢復rm誤刪除的檔案,原理主要是刪除的檔案並沒有實際上從硬碟上摸去,只是inode索引刪除了相關的資訊,因此只要找到剛刪除檔案的block上,就可以恢復已經刪除的檔案。  以下方法在ext3的檔案系統上測試透過,ext2和ext4的沒有測試過。假設刪除的檔案在dir下面,位於/dev/sda5上。  主要藉助debugfs  

    1 執行debugfs,進入排程模式  

    2 執行open /dev/sda5  

    4 執行logdump -i <num> 顯示此日誌內容  

    5 在輸出中尋找刪除檔案對應的block,記錄下來blockid  6退出debugfs,執行dd if=/dev/sda5 of=/tmp/saved bs=1024 count=1 skip=blockid  此時就把刪除的檔案恢復了,不過這個方法有個問題,如果刪除的是大檔案,則佔用多個block,操作起來比較麻煩。  debugfs在除錯模式下,命令列比較難用,不過其支援-R選項,可以在SHELL裡執行,就是用多個-R把要執行的命令連線起來,若命令中需要指定引數則需要加"",否則SHELL解析會有問題。  比較好用的工具有testdisk,之前用過他來恢復和備份系統的分割槽表,沒有恢復過檔案。

  • 2 # 使用者1465424935672

    伺服器誤刪了/usr/bin和/usr/sbin目錄,然後,從別的地方複製這兩個目錄過來,發現可能很多是連結等非普通檔案,可複製的時候對連結的處理不知道應加什麼引數,所以,一百多兆的東西複製了近一個G;最後,先給tar了一下,在複製。

    這樣,伺服器基本弄好,建議:

    1.不要直接用root登入,特別是不熟悉的人。

    2.建議需要執行root許可權命令的使用sudo,少用su;

    3.可用visudo來配置需要執行的root許可權命令

    eg: xxx ALL=/sbin/mount,/sbin/unmount,/sbin/ifconfig NOPASSWD: ALL

    rm命令不行;但是,還有“後遺症”:

    1.登入時,"linux": unknown terminal type;

    2.使用top, clear (知道的)時, 因為 terminal type問題;

    3.vim也是類似問題,不可操作;已解決,但只能用基本模式;

    4.tftp、telnet服務,已解決。

  • 中秋節和大豐收的關聯?
  • iphone6換屏以後螢幕沒裝緊邊緣按下去鬆動怎麼辦?