root用户无法删除文件-文件无法删除-root无法删除文件怎么办。

root用户无法删除文件-文件无法删除-root无法删除文件怎么办。

0、事件描述 

      今天凌晨服务器监控系统报警,结合系统排查发现服务器上某目录下多了一个sh文件,大家都明白是什么情况。在删除该文件时,却遇到了一些小情况,本文通过模拟环境记录处理过程。以下通过模拟环境说明,非生产环境。

LSer们都知道,前辈绝大多数都是这么教导的:“在Linux系统中,root用户拥有最高权限,可以干任何事情,删除任何不需要的软件或者文件,可以说无所不能”。所以一旦遇到root干不了的事情,很多人就开始不淡定了,手心莫名出汗。

1、尝试直接删除:rm -rf 

root用户无法删除文件-文件无法删除-root无法删除文件怎么办。_第1张图片

2、尝试覆盖:

这个不太科学啊!按这个思路,连删K跑L的SAO操作也堵死了。难道运维生涯就此GG?不可能,绝对不可能,不管是北方大冻梨,还是南方小土豆,都不能接受。

3、原因找到了:

“一切都是文件...”

“文件除了r、w、x,还有特殊的S系列...”

“除了以上情况,还有一种,隐藏,隐藏!..”

这些信息在脑海里快速闪现。

root用户无法删除文件-文件无法删除-root无法删除文件怎么办。_第2张图片

原因找到了。文件的隐藏权限必须使用 lsattr 命令来查看,平时使用的 ls 之类的命令则看不出端倪。按照显示的隐藏权限的类型(字母),使用 chattr 命令将其去掉:

root用户无法删除文件-文件无法删除-root无法删除文件怎么办。_第3张图片

root用户无法删除文件-文件无法删除-root无法删除文件怎么办。_第4张图片

4、总结:

chattr   命令介绍
Linux chattr 命令用于防止系统中某个关键文件被修改

语法: (与chmod 命令语法相同,仅参数不同)
chattr  +/-  【参数】 文件或路径

参数:
a: 文件只能增加内容不能减少内容, 不能删除文件;
b:不更新文件或目录的最后存取时间。
c:将文件或目录压缩后存放。
d:将文件或目录排除在倾倒操作之外。
i:静态文件永不变。 文件有了i属性, 内容不能变,文件不能删除。
s:保密性删除文件或目录。
S:即时更新文件或目录。
u:预防意外删除。
lsattr  命令介绍
Linux  lsattr 命令用于显示文件的属性

语法:
lsattr  【-参数】 文件名或路径

参数:
-a  显示所有文件和目录,包括以"."为名称开头字符的额外内建,现行目录"."与上层目录".."。
-d  显示,目录名称,而非其内容。
-l  此参数目前没有任何作用。
-R  递归处理,将指定目录下的所有文件及子目录一并处理。
-v  显示文件或目录版本。
-V  显示版本信息。

5、后记:

引用网络上的这首诗,表表运维人的日常。共勉。

现代诗《愁》

靠在阳台抽烟,

我抽一半,风抽一半,

我没和风计较,

因为风也有自己的忧愁。

今文古译《愁》

斜倚栏,吞云雾,

半入清风半入喉,

莫问清风何处去,

清风也识人间愁。

以上诗句引自网络,如有侵权请告知删除。

你可能感兴趣的:(linux,运维,服务器)