某日,某君,也就是我啦,進入到某臺服務器,整理服務器時發(fā)現(xiàn) /data目錄下有db_mysql和mysql_data目錄,查了mysql_data是不在使用的,所以想把mysql_data下的文件都刪除了……
這個時候,估計也許可能腦袋銹抖,居然跑到上一層目錄直接rm * -rf,這下糟了,把db_mysql也給刪除了,db_mysql是在使用中的庫。。∥铱:'( :'(
-
哭也沒用,這個時候還是想著怎么拯救吧!
拯救過程:
1、數(shù)據刪除了,但mysql還在運行著,趕緊kill mysql,umount /dev/md0
2、使用網絡上到處都是debugfs方式
debugfs /dev/md0
輸入lsdel
理論上說這個時候這里可以看到被刪除的文件,然后才有下一步的操作,可惜的是,這家伙貌似比較喜歡ext2,在ext3下沒有任何東西顯示,第一步拯救行動宣告失敗
3、使用mc方式
yum install mc
安裝完mc服務
直接輸入mc
這里窗口最好小一點,不然是亂碼
看到一個窗口,分別是一邊顯示刪除文件,一邊顯示恢復文件(也許是這樣,沒做研究)
輸入:
cd undel:/dev/md0
提示沒有找到目錄,無法chdir
繼續(xù):
cd /dev/md0
一樣的結局
直接在窗口上鼠標點擊進入,還是失敗,第二個方法宣告失敗
3、使用第三方軟件ext3grep,哭訴,快OK吧,老天,再不行,我……我……被罰定啦
抱著絲絲希望開始了
安裝e2fsprogs,據說必須要有e2fsprogs-libs,不然在后面ext3grep的安裝會有問題。
下載ext3grep:http://code.google.com/p/ext3grep/downloads/list
目前最新版本是ext3grep-0.8.0.tar.gz
安裝:
cd
wget http://ext3grep.googlecode.com/files/ext3grep-0.8.0.tar.gz
tar zxvf ext3grep-0.8.0.tar.gz
cd ext3grep-0.8.0
./configure
make install
安裝過程很簡單,運行ext3grep 就知道是否安裝成功了
恢復開始了
ext3grep /dev/md0 -ls -inode 2
這個是創(chuàng)建掃描的,不是必須的
恢復:
ext3grep /dev/md0 –restore-all
……
如果是恢復某個文件命令是:ext3grep /dev/md0 –restore-file 'filepath'
懷著忐忑的心情繼續(xù)等待……
等掃描到:
Searching group 1088:
Searching group 1089:
Searching group 1090:
Searching group 1091:
Searching group 1092:
Searching group 1093:
有結果了,看截圖,能恢復的都恢復了,恢復的文件在運行extgrep當前目錄下的RESTORED_FILES目錄下
查看一下該目錄,除了某個log表的兩個文件沒有恢復全外,其他全部恢復
找XXX核對了一下這個log表的作用,運氣好,得到的答復是這個表早已經沒在使用了
把文件拷貝到相應的目錄,啟動mysql,測試OK
oh,耶!!終于成功了
感謝天感謝地,感謝黨,感謝人民,感謝網龍,感謝技術部,感謝WEB組,感謝冷溫和,感謝阮胖子,感謝Carlo Wood
引用別人的一句話:
“我痛哭流涕,我要再次感謝 Carlo Wood 手賤刪除了他的 ~/home 目錄,由此誕生了如此強大的 ext3grep,也正是因此,我才有了繼續(xù)打醬油的時間。 ” 本文出自:億恩科技【1tcdy.com】
服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]
|