资讯

展开

linux文件的隐藏属性、特殊属性和ACL权限

作者:快盘下载 人气:

一、隐藏属性

1.查看隐藏属性

使用命令lsattr命令可以显示文件的隐藏权限
选项;

2.设置隐藏属性

使用命令 chattr 命令可以设置/删除文件的隐藏属性
使用方法;

chattr ;a a.txt //给文件添加a隐藏权限
chattr -a a.txt //给文件删除a隐藏权限

我们可以设置一下几种权限;
a;使文件不能被删除/覆盖内容;只能添加数据。
i: 无法对文件进行修改。如果对目录设置了该参数;表示只能修改目录下面文件的内容;不能新建和删除文件。
S;文件内容在变更后立即同步到硬盘
s;彻底从硬盘中删除;不可回复。;用0填充原文件所在硬盘区域;
A;不在修改这个文件或目录的最后访问时间;atime;
b: 不在修改文件或目录的存取时间
D;检查压缩文件中的错误
d: 使用 dump 命令备份时忽略该文件或目录
c;默认将文件或目录进行压缩
u;当删除该文件后依然保留该文件在硬盘中的数据;方便日后恢复
X;可以直接访问压缩文件中的内容

二、特殊属性

1.SUID

功能;
a.仅对二进制程序有效
b.执行者对程序需要有x;可执行;权限
c.执行者将以文件所有者身份来执行

也就是说;一般情况下;只有root权限可以使用passwd;按照下面的使用方法;我们可以在任何用户使用passwd。
使用方法;

chmod u;s /usr/bin/passwd

2.SGID

该权限只对目录有效;将目录设置为SGID后;如果在该目录下创建文件;都将与该目录的所属组保持一致。
普通用户对该目录拥有w和x权限;即普通用户可以在此目录中拥有写入权限;如果没有粘滞位;那么普通用户拥有w权限;就可以删除此目录下的所有文件;包括其他用户简历的文件。但是一旦被赋予了粘滞位;除了root可以删除所有文件;普通用户就算有w权限也只能删除自己建立的文件;而不能删除其他用户简历的文件。

a.带有粘滞位权限的目录下的所有文件;谁都可以读、写 2.
b.带有粘滞位权限的目录下的文件只有属主能删除自己的文件;其他用户无法删除
c.带有粘滞位权限的目录;只有root能删除

使用方法;

chmod g;s /usr/bin/passwd

3.STICKY

该权限只对目录有效;将目录设置为SGID后;普通就会对该目录拥有w和x权限;可以添加和删除文件;但是;只有自己可以删除自己创建的文件;不可以删除别人创建的文件;当然;root用户可以删除其他人创建的文件。
使用方法;

chmod o;t /home/

三、ACL

ACL是Access Control List;访问控制列表;的缩写;不过在Linux系统中;ACL用于设定用户针对文件的权限;而不是在交换路由器中用来控制数据访问的功能;类似于防火墙;。

1.查看系统挂载的某个分区是否支持acl权限

jian;ubuntu:~/share$ sudo dumpe2fs -h /dev/sda5  |grep acl
dumpe2fs 1.45.5 (07-Jan-2020)
Default mount options:    user_xattr acl

上面的输出的Default mount options可以看到是支持acl的;如果看不到表示不支持。

2.设置acl权限支持
通过上面的命令可以看到支持acl的;如果不支持;我们可以重新挂载;使得挂载分区支持acl权限;

 mount -o remount, acl /          

上面的命令表示重新挂载根分区;并且使其可以使用acl权限。

3.查看文件的ACL权限

jian;ubuntu:~/share$ getfacl a
# file: a
# owner: jian
# group: jian
user::rw-
group::rw-
other::r--

4.设定文件的ACL权限

setfacl 选项 文件名/目录

选项;
-m;设定 ACL 权限。如果是给予用户 ACL 权限;则使用;u:用户名;权限;格式赋予;如果是给予组 ACL 权限;则使用;g:组名;权限; 格式赋予;
-x;删除指定的 ACL 权限;
-b;删除所有的 ACL 权限;
-d;设定默认 ACL 权限。只对目录生效;指目录中新建立的文件拥有此默认权限;
-k;删除默认 ACL 权限;
-R;递归设定 ACL 权限。指设定的 ACL 权限会对目录下的所有子文件生效;
例如;

setfacl -m u:li:rx a

可以给li用户添加ACL权限。

加载全部内容

相关教程
猜你喜欢
用户评论
快盘暂不提供评论功能!