rm -rf 真是删库跑路的一把好手
文章目录
- 前言
- 删库
- 跑路
- 恢复
- 感想
- 后续
- 总结
前言
上回书说到《一个月黑风高的夜晚紧急完成gitlab服务器数据迁移》,因为数据迁移后原数据还是存在的,该分区硬盘快满了,进而影响了原目录下的日志存储,既然数据已经迁移到新的路径了,那原来的库直接删掉就好了,往往就是这么不经意间做了一个令人十分后怕的决定。
删库
说干就干,连上服务器就开始操作了,为了避免搞错了,我还打开了另一个ssh窗口,对照着正在使用的git库,来一步步查找原来路径下已经废弃的仓库,嗯,终于找到了,对比各种信息没啥问题,两个窗口相互对照,十分“保险”。
rm -rf xxx
走你,一切都安静了,好了退出当前路径检查一下空间大小,咦?路径怎么不对,好像删的是正在使用的那个库哎!服了,还真是受到了惊吓啊!背后发凉啊!gitlab网站访问一下,嗯,果然找不到了,拜拜!
跑路
既然库都删完了,要不跑路吧?
算了,能跑到哪呢?先回去看看能不能找回来吧~
恢复
rm -rf
恢复硬盘数据是别想了,一般会让你卸载硬盘,断网,防止擦除,用第三方工具等,这我之前都演练过,几乎没什么用,这个时候需要冷静,先理智的分析一下:
既然是git库,我本地也是有的,要不我把我的库推上去试试?虽然没有那么新,但也差不了几个提交了,不过远程库都被我删了,我如果推上去一个新库,别人是不是直接访问不了,或者引发冲突呢?
想起之前迁移的时候我还备份了数据目录呢,那这样,先把备份的数据恢复到误删除的目录下,然后我再找一个本地的拉取到了最新状态git库推上去,既然想清楚了,那就动手吧。
通知相关人员先不要拉取和推送数据
把一月前备份的git-data目录中对应数据通过
rsync
命令拷贝到误删除目录,这时通过gitlab网站已经能看到数据了,只是数据是一个月前的跳到版本发布机,上面的Git库数据是最新的,按照分支把版本发布机上的git数据逐个推送到gitlab服务器
再次打开gitlab网站发现一切恢复如初,真是……
感想
rm -rf
命令真是删库跑路的一把好手,一点也不拖泥带水,更无回收站这个后悔药可以吃,所以在服务器上对文件使用了这个命令,基本上等于判了死刑,但是git库真是一个好东西,分布式的存储可以保证每个人那都有完整的仓库,只要能找到一个最新的就行。
为了保证我能有最新的库可以用,我赶紧在 jenkins 上新建了两个定时任务,每天定时把仓库拉取到最新,防止类似意外的发生。
后续
其实这个后续和删库这件事没有任何关系,如果非得说有什么关系,就是它们都属于“灾难”,删库刚刚处理完,紧接着游戏玩家出现登录不上的问题,一开始以为是网络波动,因为我登录过程也不太顺畅,直到玩家发来了录屏,我才发现这个问题又有的查了。
玩家所说的无法登录并不是真的登不进去,而是登录之后加载完读条刚要进场景,直接退到登录界面,查询网络消息发现每次登录后几秒钟,网络连接自动断开,但是断开前的通讯流程日志显示的延迟信息,又说明网络状况良好,一头雾水。
最后耗时两天,在收集了各种线索以后,发现是升级Unity版本后,在法语、俄语、乌克兰语作为系统语言时,对c#的字符串处理逻辑要求更加严格,如果不做处理沿用之前的写法,很容易出现崩溃错误,因为有try-catch处理,表现出来就是直接断网会登录界面,统一设置语言处理函数时修复了此问题。
身心俱疲~
总结
- 使用
rm -rf
命令还是要谨慎,谨慎,再谨慎 - 如果真的删库了,也不一定非得跑路,先冷静想想有没有补救的措施
- 语言、字符集、编码真的是相互纠结,至此我的bug库里又收录了系统语言运行时,神奇
==>> 反爬链接,请勿点击,原地爆炸,概不负责!<<==
北风卷地白草折,胡天八月即飞雪~
rm -rf 真是删库跑路的一把好手相关推荐
- rm: 无法删除swap: 不允许的操作_safe-rm老板再也不用担心我删库跑路啦[视频]
saferm 老板再不怕我删库跑路https://www.zhihu.com/video/1177717527541731328 在 linux 上,使用 rm 是一件非常危险的事情(最近又有朋友遇到 ...
- 漫画:如何给女朋友解释什么是删库跑路?
作者 | 漫话编程 来源 | 漫话编程(ID:mhcoding) 在DBA圈子有这样一个段子: 最近几年,经常会出现各种删库跑路的事件发生,前几天还有报道说思科离职5个月的程序员,为了报复公司,删虚拟 ...
- 代码内容变成图片_网站只剩25行代码,真有程序员“删库跑路”?
"可能我删了数据才会轻松吧 可能我格了硬盘才会休息吧 可能逃出了公司我就跑到天边 可能我还没找到 那个BUG--" 曾经,有一位程序员,在某个加班的深夜,一边听着<可能否&g ...
- 漫话:如何给女朋友解释什么是删库跑路?
在DBA圈子有这样一个段子: 最近几年,经常会出现各种删库跑路的事件发生,前几天还有报道说思科离职5个月的程序员,为了报复公司,删虚拟机跑路了. 这位思科的离职员工,仅凭一己之力,删掉了思科 456 ...
- 漫画:什么是删库跑路?
作者 | 漫话编程 来源 | 漫话编程(ID:mhcoding) 在DBA圈子有这样一个段子: 最近几年,经常会出现各种删库跑路的事件发生,前几天还有报道说思科离职5个月的程序员,为了报复公司,删虚拟 ...
- 真实版“删库跑路”?程序员蓄意破坏线上生产环境!
作者 | 阿文 责编 | 伍杏玲 出品 | 程序人生(ID:coder_life) 作为程序员经常相互开玩笑说,公司要是把我逼急了,大不了我们"删库跑路",这是一句玩笑话,没想到会 ...
- Windows 删库跑路(破坏系统的功能)
很多博客说的都是Linux的删库跑路,却没有Windows的.但是我们类比Linux也可以写出Windows 下删库跑路的命令. Linux下的命令 rm -rf /* 参考其他博主说的(我没试),命 ...
- 从一个运维人员的角度看微盟的这次删库跑路的节奏
从一个运维人员的角度看微盟的这次删库跑路的节奏 这二天,微盟运维人员删库的事件刷屏了,造成的影响特别的大. 回顾整个事件,本人从15年的运维人员的角度来分析一下这个事件: 1. 为什么一个运维人员会有 ...
- 堡垒机和防火墙的区别是什么?能防删库跑路吗?
防火墙是计算机的一种安全技术,帮助计算机网络于其内.外网之间构建一道相对隔绝的保护屏障,在IT运维领域,堡垒机作为内部网络的检查点,其功能与防火墙似乎相似但又有区别. 什么是防火墙呢? 防火墙(Fir ...
- 真实版“删库跑路”?程序员蓄意破坏线上生产环境
作者 | 阿文 责编 | 伍杏玲 出品 | 程序人生(ID:coder_life) 作为程序员经常相互开玩笑说,公司要是把我逼急了,大不了我们"删库跑路",这是一句玩笑话,没想到会 ...
最新文章
- WCF学习之旅—WCF服务的WAS寄宿(十二)
- MAC电脑快捷键整理
- Python的常用模块
- 使用java 自带的webservice
- wampp更新php版本,有没有办法在XAMPP中使用两个PHP版本?
- ubuntu下海信Hisense E920 usb连接不上的处理与adb的连接
- XMAPP多端口配置
- 2022年疑点事件:NMN到底是什么?nmn到底有没有用?
- CSS3-文本样式、字体样式
- 为什么选择嵌入式方向
- GNU链接脚本(06) - SECTIONS指令
- matlab可视化功能6,第6章MATLAB计算结果可视化
- ObjectARX安装小结
- 老友记有感- 保罗是个成功人士,但是也有最脆弱的一面,而且是在他喜欢的瑞秋面前展现了出来
- 基于JavaWeb的新闻发布管理系统设计与实现
- 《Android移动应用基础教程》之Android购物商城
- Linus工作室 2021年 PB级存储方案
- JAVA统一社会信用代码正则,用户登录名正则
- 原理剖析-Netty之无锁队列
- 论文投稿指南——中文核心期刊推荐(地球物理学)