隐藏权限lsattr_chattr

设置隐藏权限的命令语法:chattr

常用参数选项: i 与a 选项。

chattr +i 解说:

创建一个chattr-i文件,然后给这个文件给隐藏权限-i,如图:

image.png

加上i的隐藏权限后,不管你编辑,追加,修改等,任何操作都提示没权限,包括root用户,如下图:

image.png

当你vi打开按“i”编辑时,它会显示如下图:

image.png

提示你正在修改一个只读文件,编辑保存,以及强制保存都不行,如下图:

image.png

根本无法保存,即便你强制保存依然这样。

image.png

不单单是不能编辑,mv、时间修改touch,或者cat或者head更或者tail都没有权限,如下图:

image.png

如果某时候root用户下都提示权限不够的话,就应该考虑是不是设置了这个隐藏权限了,隐藏权限用ls -l 是查看不出来的,隐藏权限的查看命令是:lsattr   如下图:

image.png

可以看到有一个“i”的权限,平时创建文件时的默认权限如下图:

image.png

那么如何去掉这个隐藏的特殊权限呢?增加特殊权限的语法是chattr  +i,要去掉的话就是-i,如要去掉chattr-i.txt的隐藏特殊权限,如下图:

image.png

那么给目录添加“i”的特殊权限呢?答案是可以的,lsattr同意支持-d选项来查看它目录本身,我们先创建一个目录吧,并给予特殊权限“i”如下图:

image.png

那么能不能在这个目录上创建文件吗?如下图:

image.png

这个给目录加上“i”权限与文件加上“i”权限的效果是一致的。

chattr +a 如下图:

image.png

加入“a”权限后能不能在该目录touch一个文件呢?如下图:

image.png

是可以touch文件的,那么mkdir能不能创建一个目录呢?如下图:

image.png

它也是可以的,那能不能在这个123目录下touch一个文件呢?如下图:


image.png

也是可以创建的,也就是说增加“a”相当是一个只能追加不能更改的权限,在这个目录下创建一个文件也相当于追加,那能不能修改这个文件的内容呢?如图

image.png

是可以修改追加内容的,也就是说给一个目录加了一个“i”或“a”权限后,能不能去更改这个目录下的文件内容呢?刚刚“a”的权限是可以更改,现在试一下“i”能不能更改呢?如下图:

image.png

也是完全可以在chattr的目录下的子目录上已有的文件更改的,写一个文件跟它的父目录的权限有关系吗?不能说没关系,但关系不大,head -n4 /etc/passwd > chattr/123/1.txt这命令执行写入的是1.txt文件的本身,虽然父目录chattr加上“i”权限,不能在chattr目录上新建文件或目录,但不能限制执行写已经存在的文件。

lsattr的参数选项-R,-a,-d.

lsattr -R如下图:

image.png

加上-R后,它能查看该目录下所有的文件但不包含隐藏目录或文件。

lsattr -a 与ls -a一致,查看所有包括隐藏文件,如下图

image.png

lsattr -d与ls -d一致只查看目录本身,如下图:

image.png

总结: chattr +i /+a  添加隐藏权限  chattr -i/-a   取消隐藏权限

lsattr -a  查看所有包括隐藏文件   lsattr -R 列出目录下所有文件但不包括隐藏目录或文件。lsattr -d 只查看目录本身。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.gzievs.net.cn/post/45.html

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。