手误【删库】 == 跑路,不存在的 ——删瓦辛格
前言
今天公司服务器的宝塔打不开,让我去修(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,毁我青春,我直接把你删掉”
预知后事,且听下回分解【关注我,期待下次分享】
转载:https://blog.csdn.net/heian_99/article/details/105689982