上手linux服务器一定要知道的rm -rf命令,有关rm -rf误删操作的预防,如何使用safe-rm避免服务器上重要数据被删除的灾难发生

这篇文章的写作背景是一个惨痛的教训,本来之前k8s集群已经部署成功了,也安装了不少服务,可是在我部署ceph集群的时候,安装过程出了点儿问题,所以我就想把ceph服务卸载了,恢复一下环境,我本来打算删除/var/lib/ceph文件的,突然把/var/lib文件夹删除了,而我使用的命令是rm -rf /var/lib/*。删完之后我的内心是这样的:咦,好像有哪里不对?因为之前我是删除过/var/lib/ceph文件夹下的文件夹的,但是,,但是,,这种感觉貌似不太对?

我看了下我的删除命令rm -rf /var/lib/*,咦?卧槽!!!删错了。心里想着完了,,完了,使用命令kubectl get pods -Akubectl get nodes赶紧看了下集群的pod和node的状态信息,全部都是No resources found.——k8s集群没了。
在这里插入图片描述

额,说一下自己的真实感受,那一瞬间,我感觉自己好像被放空了,很无奈的感觉,一身冷汗。然后我赶紧到网上看看有没有什么方法能恢复被rm -rf /*所删除的文件,额,找来找去,基本没啥方法,这个命令是强制递归删除,也就是说我的/var/lib文件夹下的所有文件都没了,且不太可能找回。网上有些方法我试了试,没什么作用;还有的博客说借助第三方工具可以恢复文件,但是就算恢复了还是可能存在文件确缺失与文件乱码的问题。那一刻,我觉得这个文件夹的内容是找不回来了,当然一块儿没有的还有我花了好长时间搭起来的k8s集群及安装的各种服务,都没有了。最后问了下学长,这个上面跑的就是实验室的一些测试数据,问题不是太大,可是当时的我真的是非常的担心害怕的,至今心有余悸。

后来,了解到linux服务器的/var目录是存放系统运行时要改变的数据,其中/var/lib文件夹用于存放linux服务器上程序服务执行的过程中需要使用到的数据文件,也保存系统或者某个应用程序运行过程中的状态信息,一般情况下这个文件夹下的目录用户不应该随意操作。后来我为了防止该文件夹/var/lib的删除可能影响部分系统功能,所以就把系统重装了一遍。之后又是重新部署了一下k8s集群及之前的服务,也耽误了些时间。

那么问题来了,如何防止使用rm -rf命令的误删操作呢? 现在网上一般有如下几种解决方案:
  1. 使用mv命令代替rm -rf命令,将所要删除文件使用mv命令移送到linux服务器上的某个目录下,然后借助crontab命令定期清理这个目录即可。(这其实就是借助mv命令实现一个回收站的功能,但是我自己不喜欢linux服务器上留下多余的东西,额,,暂时我还没使用这个方法,感觉过段时间服务器上生产环境后我可能就会用这个了)
  2. 借助第三方软件工具safe-rm,在其白名单上添加不能被删除的文件目录,这样在使用rm -rf命令删除白名单上文件目录时,就会自动跳过这个文件目录,不会删除该文件目录。
  3. 为linux服务器实现账号权限控制,不为某些账户开放文件夹的访问权限。(额,感觉这个还是比较麻烦的,主要是实验室用这个服务器的人不多,当然到如果后面服务器的使用人数多起来并且服务器上开始跑生产环境后,这个事情就要考虑起来了。大公司的话权限管理比较严格,一般都会设置服务器账号的权限控制)
    除此之外,大家在使用rm 命令的时候,不妨这样使用,rm -ri, rm -fi, rm -rfi,在rm命令后面加上一个i参数,这样在删除的时候会有个确认的过程,可以为大家留下撤销删除操作的机会。
    就我自己目前来说是使用的safe-rm工具,到后面linux的服务器上的服务基本搭建完成后我会使用第一种方法(类似windows上的“回收站”思想),因为一旦k8s集群上了生产环境后,使用这种rm -rf的命令必须要非常小心。
    所以我建议大家,在执行rm命令的时候一定要多看两眼,并且rm -rf和*一块儿使用的时候更要注意,梅花过后,寸草不留</
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值