extundelete反刪除

一、介紹extundelete

         1.extundelete的文件恢復工具,該工具最給力的一點就是支持ext3/ext4雙格式分區恢復。

         2. 在實際線上恢復過程中,切勿將extundelete安裝到你誤刪的文件所在硬盤,這樣會有一定機率將需要恢復的數據徹底覆蓋。

         3. extundelete還是有很大的不完整性,基於整個磁盤的恢復功能較爲強大,基於目錄和文件的恢復還不夠強大

         4. extundelete執行完畢後在當前目錄生產一個RECOVERED_FILES目錄,裏面即是恢復出來的文件,還包括文件夾。

         5.任何的文件恢復工具,在使用前,均要將要恢復的分區卸載或掛載爲只讀,防止數據被覆蓋使用。

                   umount /dev/partition 

                   mount -o remount,ro /dev/partition

         6.保持良好的習慣,絕對比恢復數據要更簡單。

二、安裝

         0.yum install e2fsprogs* e2fslibs* -y

         1.wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2

         2.tar -axf extundelete-0.2.4.tar.bz2 -C /usr/local/src

         3.cd /usr/local/src/extundelete-0.2.4

         4../configure --prefix=/usr/local/extundelete

         5.make

   6.make install

         7.ln -s /usr/local/extundelete/bin/* /usr/local/bin/

 

三、使用及命令

    1. umount或者read only 分區

                   umount /dev/partition 

                   mount -o remount,ro /dev/partition

 

    2.切換到存儲恢復文件的目錄

                   cd $dir

        

    3.命令

Usage: extundelete [options] [--] device-file

Options:

  --superblock           打印指定分區的超級塊信息。如不加任何的參數,

此選項是默認的.     

extundelete --superblock /dev/sda3 <---> extundelete /dev/sda1

                       

  --journal              顯示塊的日誌信息,同--superblock

extundelete --journal /dev/sda1

 

  --after dtime          只恢復指定時間【dtime】(時間戳)之後,被刪除的數據

 

假如刪除的時間大概是2011-7-26 1430

date -d "Jul 26 14:30" +%s

得出秒數 1234567890

恢復此時間後刪除的所有文件

extundelete /dev/sdb1 --after 1234567890 --restore-all

 

  --before dtime         只恢復指定時間【dtime】(時間戳)之前,被刪除的數據

 

Actions:

  --inode ino                顯示某分區inodex的信息,一般是查看該分區下所有的文件.

extundelete --inode 2 /dev/sda1

 

  --block blk              顯示某分區blockx的信息.

 

  --restore-inode ino[,ino,...] 恢復一個或多個指定inode號的文件,該恢復的文件,

保存在當前目錄下的RECOVERED_FILES裏,文件名爲【file.$inode

extundelete /dev/sda1 --restore-inode 13,14

 

  --restore-file 'filename'        恢復指定的文件(被刪除的),文件位於當前目錄下

RECOVERED_FILES/$filename,文件名還是原來的              

extundelete /dev/sda1 --restore-file initramfs-2.6.32-358.el6.x86_64.img

 

  --restore-files 'read_filename'  恢復指定的文件(真實存在的)中的內容,

文件位於當前目錄下的RECOVERED_FILES/$filename,文件名還是原來的

                                                        vi test_restore.txt(結尾不可有多餘的空格)

                                                                 System.map-2.6.32-358.el6.x86_64

                                                                 config-2.6.32-358.el6.x86_64

                                                                 symvers-2.6.32-358.el6.x86_64.gz

                                                                 vmlinuz-2.6.32-358.el6.x86_64

                                                                 initramfs-2.6.32-358.el6.x86_64.img

         extundelete /dev/sda1  --restore-files test_restore.txt

 

 

  --restore-directory 'dir-name'      恢復指定的目錄,文件位於當前目錄下的

RECOVERED_FILES/$dir-name,文件名還是原來的

                                                                  extundelete /dev/sda1  --restore-files grub

 

  --restore-all                          恢復某分區裏所有被刪除的數據,文件名還是原來的

                                                                 extundelete /dev/sda1   --restore-all

   4.

    ①--superblock


      --journal


 

      --after dtime

假如刪除的時間大概是2011-7-26 1430

date -d "Jul 26 14:30" +%s

得出秒數 1234567890

恢復此時間後刪除的所有文件

/usr/local/bin/extundelete /dev/sdb1 --after 1234567890 --restore-all


    ④--before dtime


      --inode



      --restore-inode ino[,ino,...]


      --restore-file 'filename'


    ⑧--restore-files 'read_filename'


      --restore-directory 'dir-name'


      --restore-all


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章