ACL策略
本文最后更新于 2025-11-10,文章内容可能已经过时。
ACL策略:为特殊的人或特殊的组,单独设置权限
Linux中判断用户具备的权限:
1.首先查看该用户或者组是否有ACL策略(ACL优先)
2.查看用户,对于该数据所处的身份,顺序所有者>所属组>其他人,原则是匹配即停止
3.查看相应身份的权限位
setfacl -m u:dc:rw /111 #单独赋予dc用户权限
setfacl -m u:lisi:rwx /111 #单独赋予lisi用户权限 getfacl /111 #查看该目录赋予的ACL策略setfacl -x u:dc /111 #清除dc用户acl策略
setfacl -b /111 #清除目录所有acl策略-R:递归设置acl策略
setfacl -Rm u:dc:rwx /opt/aa #对aa目录下的文件设置acl策略
拉黑lisi用户:setfacl -m u:lisi:--- /111 #权限为空,即使文件所属用户为lisi也没有权限,因为acl优先级最高管理员用户
linux创建目录默认权限是755,这个值是由777 -umask值得到的,umask值默认022,umark值可以修改(不建议更改,影响太大)修改umask 值 vim ~/.bashrc vim /home/cui/.bashrc
文件默认权限是644,默认把执行权限x去掉
普通用户umask值默认002
mkdir -m 777 /nsd77 -m无视umask值创建数据指定数据的值
用户的home目录模板在/etc/skel下,如果想要每个用户创建时家目录有指定的文件,可以添加到/etc/skel下
touch /etc/skel/abc.txt
ls -a /etc/skel
useradd chaoge
cd /home/chaoge/
假如不小心将用户下的home目录给删了,可以用以下方式恢复
rm -rf /home/chaoge
cp -r /etc/skel /home/chaoge
chown -R chaoge:chaoge /home/chaoge
ls -ld /home/chaoge当使用acl策略,使用ls -ld 查看目录的权限会发现umask的值会代替所属组的权限
例如:
mkdir /opt/test
chmod 000 /opt/test
setfacl -m u:lisi:rwx /opt/test
ls -ld /opt/test
结果会出现 -d ---rwx---+
例子:不小心将/mnt递归修改了文件权限,如何恢复
chmod -R 000 /mnt
find /mnt -type d -exec chmod 755 {} \;
find /mnt -type f -exec chmod 644 {} \;
千万不要删根,千万不要递归修改根的权限
根目录权限555
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 程序员fancy
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果