手誤【刪庫】 == 跑路,不存在的 ——刪瓦辛格
前言
今天公司服務器的寶塔打不開,讓我去修(ps:寶寶委屈)
打開找一下問題所在
問題:
發現是寶塔官方的cdn好像掛掉了
解決思路:
- (1)本地重新搞個服務器裝寶塔,發現沒問題
- (2)比較一下,發現線上的確實cdn有問題
- (3)把本地的可以用的cdn,放到線上就行。
解決:
臥槽,我發下,我根本不瞭解寶塔的目錄結構【ps:解決毛線,下班走人】
正文
別眨眼,接下的我sb的操作,真的亮瞎我狗眼【ps:別害怕,也會亮瞎你的狗眼的,嘿嘿。。。】
常規操作:
(1)備份要修改的文件,這是職業本能,OK,沒毛病,我喜歡。
(2)刪除那個沒用的文件 【文件:你纔沒用,看老子的移魂大法】
重點:
備份一切over,刪除時,我手賤多打了個 * 。
然後沒思考,一個回車,那感覺爽啊
求德瑪得...........................................................................................................雅蠛蝶...............................................................................................................
對,ctrl +c 你已經看出我的絕望了
說時遲那時快,掏出手機,搶票一張去往非洲的機票
我多打一個 * ,導致把線上環境的 nginx服務,php環境,redis緩存,mysql數據庫,全部刪掉了
不多說,趕緊跑路了..........................................................................
飛機延時,公司發現
跑路失敗,當場被捕
數據恢復
- (1)停止對服務器進行一切的寫入操作,卸載掛載
- (2)安裝extundelete,進行掃描
- (3)恢復數據,環境再次重新工作
PS:因爲這個服務器沒有搞本地備份和異地本地,所以纔有下面這些破事,再不是,直接備份恢復就行了
(1)停止對服務器進行一切的寫入操作,卸載掛載
當發現誤刪除文件時,爲了儘可能的恢復數據,先要關掉所有的正在進行的服務,不要再進行數據的寫入,要不然恢復的概率那就低了。我們可以直接
# killall 進程名
或者
# kill -9 pid
然後把誤刪除的文件所在分區,重新掛載成只讀的
# mount -o ro /dev/sdb /data/
(2)安裝extundelete
yum install bzip2 gcc-c++ e2fsprogs* -y
wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2
tar jxvf extundelete-0.2.4.tar.bz2
cd extundelte-0.2.4
./configure
make && make install
驗證安裝結果
extundelete -v
(3)進行掃描,恢復數據
恢復指定文件:
原理:從根節點(inode=2)開始找到被刪除文件的i節點,然後recover i節點。
刪除目錄:/www/server
先檢測被刪除的文件有哪些:
extundelete /dev/mapper/centos-root --inode 2
extundelete /dev/mapper/centos-root --inode 1703938
extundelete /dev/mapper/centos-root --inode 1703940
extundelete /dev/mapper/centos-root --restore-directory /www/server
#查看能恢復的數據:
[root@localhost ~]# extundelete /dev/sdc1 --inode 2
#恢復單個文件
[root@localhost ~]# extundelete /dev/sdc1 --restore-file somefile
#恢復目錄
[root@localhost ~]# extundelete /dev/sdc1 --restore-directory /somedir
#恢復所有文件
[root@localhost ~]# extundelete /dev/sdb1 --restore-all
能恢復多少,就靠運氣
後記:
運氣較好,恢復了數據
把生成環境搭建出來,跑上面完全沒有問題
切記
- (1)記得備份
- (2)不要用rm
- (3)幹啥要三思
下次更新,“垃圾rm,毀我青春,我直接把你刪掉”
預知後事,且聽下回分解【關注我,期待下次分享】