**:
在linux下rm -rf 是乙個很可怕的命令,因為下達這個命令意味著一旦刪除的檔案是無法挽回的,事實是如此嗎?真的沒有補救措施了嗎?答案是委婉了,在一定的條件下可以補救,大家可能熟悉windows下刪除的補救措施是通過相關的軟體實現的,在linux下同樣可以做到補救,但是有個大前提:就是不能有覆蓋的動作(意思就是在嘗試恢復刪除的資料前,刪除檔案的目錄內不能存放新東西),不然覆蓋多少就損失多少!
這裡用到的套件是ext3grep、系統必須預設的安裝上e2fsprogs-lib、2fsprogs-devel、e2fsprogs5、gcc、gcc++這些軟體
[root@localhost ~]# rpm -qa|grep e2fsprogs
e2fsprogs-libs-1.39-23.el5
e2fsprogs-devel-1.39-23.el5
e2fsprogs-1.39-23.el5
原始碼安裝ext3grep
[root@localhost ~]# llext3grep-0.10.2.tar.gz
-rw-r--r-- 1 root root 236364 oct 17 2011 ext3grep-0.10.2.tar.gz
[root@localhost~]# tar zxvf ext3grep-0.10.2.tar.gz
[root@localhost ~]# cd ext3grep-0.10.2
[root@localhost ext3grep-0.10.2]# ./configure
[root@localhost ext3grep-0.10.2]# make && make install
[root@localhost ~]# ll /usr/local/bin
total 2656
-rwxr-xr-x 1 root root 2709704 oct 15 04:46 ext3grep 這句是那個可執行檔案
接下來演示乙個補救的過程例項
[root@localhost~]# mkdir /data/ /ixdba/
[root@localhostdata]# dd if=/dev/zero of=data-disk bs=1m count=105
[root@localhost data]# mkfs.ext3 data-disk //格式為ext3的檔案系統,在出現的提示符處輸入y
[root@localhost data]# mount -o loop /data/data-disk /ixdba/ //掛載
[root@localhost data]# cp /etc/host* /ixdba/ //往裡邊放檔案
[root@localhost data]# cp /etc/passwd /ixdba/
[root@localhost data]# cd /ixdba/
[root@localhost data]# rm -rf * //製造刪除的動作
[root@localhost data]# cd /data/
[root@localhostdata]# ext3grep /data/data-disk --ls --inode 2 //檢視丟失的檔案
[root@localhostdata]# ext3grep /data/data-disk --restore-file passwd //僅僅恢復passwd這個檔案
[root@localhost data]# ext3grep /data/data-disk --restore-all //恢復的動作,全部恢復
[root@localhostdata]# ls
data-disk data-disk.ext3grep.stage1 data-disk.ext3grep.stage2 restored_files
[root@localhost data]# ll restored_files/ //所有恢復的檔案全在這個資料夾裡存放,都找回來了
total 48
-rw-r--r-- 1 root root 17 oct 15 06:03host.conf
-rw-r--r-- 1 root root 187 oct 15 06:03hosts
-rw-r--r-- 1 root root 161 oct 15 06:03hosts.allow
-rw-r--r-- 1 root root 347 oct 15 06:03hosts.deny
drwx------ 2 root root 4096 oct 15 06:04 lost+found
-rw-r--r-- 1 root root 1635 oct 15 06:03 passwd
總結:這裡只能實現的是首次恢復的動作,並且不能有覆蓋的動作。
注意:1. ext3grep後面跟的是分割槽名稱,不是目錄名
2. --restore-file恢復指定檔案,對路徑名有特殊要求,具體請自己用—help檢視
3. 所有恢復的檔案放到該分割槽下的restored_files目錄,不是原目錄
linux下rm命令使用詳解
linux下rm命令使用詳解 linux下rm 命令使用 詳解 linux刪除檔案或目錄命令 使用者可以用rm命令刪除不需要的檔案。該命令的功能為刪除乙個目錄中的乙個或多個檔案或目錄,它也可以將某個目錄及其下的所有檔案及子目錄均刪除。對於鏈結檔案,只是斷開了鏈結,原檔案保持不變。d director...
linux命令 rm 命令
昨天學習了建立檔案和目錄的命令mkdir 今天學習一下linux中刪除檔案和目錄的命令 rm命令。rm是常用的命令,該命令的功能為刪除乙個目錄中的乙個或多個檔案或目錄,它也可以將某個目錄及其下的所有檔案及子目錄均刪除。對於鏈結檔案,只是刪除了鏈結,原有檔案均保持不變。rm是乙個危險的命令,使用的時候...
Linux命令 rm命令
學習了建立檔案和目錄的命令mkdir,現在學習一下linux中刪除檔案和目錄的命令 rm命令。rm是常用的命令,該命令的功能為刪除乙個目錄中的乙個或多個檔案或目錄,它也可以將某個目錄及其下的所有檔案及子目錄均刪除。對於鏈結檔案,只是刪除了鏈結,原有檔案均保持不變。rm是乙個危險的命令,使用的時候要特...