大家好,我是高胜寒,一个在教培行业不忘初心的人

作为运维,我们都有一个删根情节,不爽了随时删根跑路,但从未实施过。

运维经常用rm -rf / 来调侃自己,但事实上现在的安全机制下,rm -rf / 并不起作用,你看:

[root@zmedu-17 ~]# rm -rf /
rm: 在"/" 进行递归操作十分危险
rm: 使用 --no-preserve-root 选项跳过安全模式

我们需要加上后面的 --no-preserve-root 跳过安全模式才能删除/
不过我们想删除/上的部分不在使用中的文件还是可以的比如 /*

[root@zmedu-17 ~]# rm -rf /*
rm: 无法删除"/boot/efi": 设备或资源忙
rm: 无法删除"/dev/hugepages": 设备或资源忙
rm: 无法删除"/dev/mqueue": 设备或资源忙
rm: 无法删除"/dev/pts/2": 不允许的操作
rm: 无法删除"/dev/pts/1": 不允许的操作
rm: 无法删除"/dev/pts/0": 不允许的操作
rm: 无法删除"/dev/pts/ptmx": 不允许的操作
rm: 无法删除"/dev/shm": 设备或资源忙

但如果是普通文件可就没有这么好运了,普通文件被删除了,在ext4文件系统上我们可以借助工具基于Inode号,把文件找回来,但是里面的空文件却无法在恢复。

虽然我们很小心,但依旧有删除文件的可能,这就像男人之于女人,带着作案工具,就总有做案的可能,除非变成公公。

今天我就给大家介绍一个命令,他的出现相当于给重要的文件在你备份的同时又加了一把锁,确保文件不会被误删除或者修改。

祭出命令: chattr: 锁定文件,锁定后,不能删除也不能修改

参数:

+a 只能给文件添加内容,但是删除不了

-d: 不能删除

+i : 加锁,文件不能删除,不能修改,也无法移动

查看加锁: lsattr

解锁 : -i 在这里的减号表示接触

我们来对/etc/passwd来使用

[root@zmedu-17 ~]# lsattr /etc/passwd #查看原始权限
---------------- /etc/passwd
[root@zmedu-17 ~]# chattr +i /etc/passwd   #加锁
[root@zmedu-17 ~]# lsattr /etc/passwd    #查看加锁后权限
----i----------- /etc/passwd
[root@zmedu-17 ~]# rm -rf /etc/passwd #删除测试
rm: 无法删除"/etc/passwd": 不允许的操作
[root@zmedu-17 ~]# mv /etc/passwd /root/  #移动测试
mv: 无法将"/etc/passwd" 移动至"/root/passwd": 不允许的操作
[root@zmedu-17 ~]# echo aaa >> /etc/passwd  #修改文件内容测试
-bash: /etc/passwd: 权限不够

是不是成功的阻止了你误删除文件的操作。 当然你说按照下面的操作来做,然后说自己是误操作删除了文件,我也信:

[root@zmedu-17 ~]# lsattr /etc/passwd  #查看是否加锁
----i----------- /etc/passwd
[root@zmedu-17 ~]# chattr  -i /etc/passwd  #去掉加锁权限
[root@zmedu-17 ~]# lsattr /etc/passwd   #查看是否已经去掉
---------------- /etc/passwd
[root@zmedu-17 ~]# rm -rf /etc/passwd  #特意误删除一下

只要想删掉,总会有办法的。还有没有方法更安全一点呢? 当然

我们可以隐藏掉chattr

[root@zmedu-17 ~]# which chattr   #查看命令目录
/usr/bin/chattr
[root@zmedu-17 ~]# mkdir /opt/yc  #创建yc目录
[root@zmedu-17 ~]# mv /usr/bin/chattr /opt/yc/ #把命令拷贝
[root@zmedu-17 ~]# cd /opt/yc/     #进入yc目录
[root@zmedu-17 yc]# mv chattr h   #使用别名把命令隐藏
[root@zmedu-17 ~]# /opt/yc/h +i /etc/passwd  #h就是chattr命令
[root@zmedu-17 ~]# lsattr /etc/passwd
----i----------- /etc/passwd

想要恢复的话,拷贝回去就可以了

[root@zmedu-17 yc]# mv h /usr/bin/chattr
[root@zmedu-17 yc]# chattr -i /etc/passwd

结语

如果您看完本文后有所收获, 还希望您随手点个收藏 、或者分享转发。您的支持是我坚持分享的最大动力!有问题也可以留言跟我交流。

配上视频更直观
点击直达:

B站视频-让rm -rf 都头疼的命令

一个让rm -rf 都头大的命令相关推荐

  1. 绝了!一个妹子 rm -rf 把公司整个数据库删没了

    作者:zhouyu 链接:cnblogs.com/zhouyu629/p/3734494.html 经历了两天不懈努力,终于恢复了一次误操作删除的生产服务器数据. 对本次事故过程和解决办法记录在此,警 ...

  2. mysql没有开启binlog能恢复数据吗_神了!一个妹子 rm -rf 把公司整个数据库删没了......

    经历了两天不懈努力,终于恢复了一次误操作删除的生产服务器数据. 对本次事故过程和解决办法记录在此,警醒自己,也提示别人莫犯此错.也希望遇到问题的朋友能找到一丝灵感解决问题. 01事故背景 安排一个妹子 ...

  3. 绝了!一个妹子 rm -rf 把公司整个数据库删没了...

    点击上方的终端研发部,右上角选择"设为星标" 经历了两天不懈努力,终于恢复了一次误操作删除的生产服务器数据. 对本次事故过程和解决办法记录在此,警醒自己,也提示别人莫犯此错. 也希 ...

  4. 尴尬了!一个妹子 rm -rf 把公司整个数据库删没了...

    作者丨zhouyu 链接:cnblogs.com/zhouyu629/p/3734494.html 经历了两天不懈努力,终于恢复了一次误操作删除的生产服务器数据. 对本次事故过程和解决办法记录在此,警 ...

  5. Linux命令 rm -rf报错 mv无效选项 --‘r‘

    Linux命令 rm -rf报错 mv:无效选项 --'r' 错误原因 ​ 使用rm -rf命令删除文件夹时,报错:**"mv: invalid option – 'r' Try `mv - ...

  6. Linux删根不跑路之修复rm -rf /bin

    如果我们执行了rm -rf /bin,发现什么命令都用不了了,登录也无法登录,那么这个时候我们要干嘛呢?难道真的要???? 事实上,我们只是删除了根分区下的bin目录,此时我们只需要进到恢复模式下,找 ...

  7. 程序员笑话常客:“rm -rf *“和 “rm -rf /*“的区别

    简介: ''rm -rf '' 和''rm -rf /''都经常出现在程序员的玩笑中,可他们的严重程度却是不一样的,一起来看看吧 这两个命令都是在 Unix/Linux 操作系统中使用的 " ...

  8. 有个程序猿很忧桑:一个命令rm -rf/ ,他把整个公司删没了

    首先:欢迎各位学习java和大数据的程序员朋友们加入Java交流学习群: 721506929群里提供免费的架构学习资料,直播讲解,讲师都是有着十几年阿里java开发经验的大牛,欢迎各位前来围观学习. ...

  9. 有个程序猿很忧桑:一个命令rm -rf/ ,他把整个公司删没了...

    来自:英国那些事儿(ID:hereinuk) 和 cnBeta 链接:http://www.cnbeta.com/articles/492731.htm http://www.independent. ...

最新文章

  1. lua中正则表达式的坑
  2. Epplus:导出Excel
  3. 前端组件库 - 搭建web app常用的样式/组件等收集列表(移动优先)
  4. Changes at Different Environment?
  5. gitHub网站上常见英语翻译
  6. java自动生成类_自动生成优化的Java类专业知识
  7. 用Photoshop制作简单贺卡
  8. C++中STL容器利用迭代器删除元素小结
  9. 卫星轨道的估计问题(Matlab)(一):理论基础
  10. 简述JDBC原理 + 在JAVA中异常是什么 + throws 与 throw 区别 + 简单解释以下JAVA中的多态...
  11. 电脑异常关机录屏/软件/程序异常停止/安卓手机/数据丢失找回方案
  12. 基于STM32单片机的精彩设计实例合集
  13. Allegro-Flash焊盘
  14. mysql to sqlserver_mysql to sqlserver
  15. 基于网易云音乐API的微信小程序——网愈芸音乐
  16. 神奇的口袋——Java
  17. Caffe深度学习框架作者贾扬清online内容分享II
  18. python今日放量股票
  19. mysql-connector-java.jar包的下载教程
  20. linux 备份并压缩文件,Linux下文件的压缩和备份.doc

热门文章

  1. S3R:Self-Supervised Sparse Representation for Video Anomaly Detection 【ECCV 2022】
  2. pytorch官网教程:tensor代码理解
  3. ubuntu安装向日葵远程控制
  4. 一首词..来自Songtaste
  5. access对比数据_七大数据库产品测评Sqlserver完美胜出,五大理由告诉你最好选择...
  6. 7家公司拿了6个Offer,无非就是问数据库、多线程、源码、分布式、微服务这些
  7. npm命令安装卸载及更新
  8. mct接收_控制器MCT-208
  9. ts引入js时的类型检查
  10. 运动控制:感觉反馈可以引起神经旋转