Linux文件权限管理与ACL配置指南

Linux文件权限管理与ACL配置

一、文件属性解读

示例: drwxr-xr-x. 3 root root 16 May 28 09:28 home

字段含义
d文件类型(目录)
rwx所有者权限(读、写、执行)
r-x所属组权限(读、执行)
r-x其他用户权限(读、执行)
3引用计数(硬链接计数)
root所有者
root所属组
16大小(字节)
May 28 09:28最后修改时间
home文件/目录名

二、权限表示方法

权限字符数字
r4
w2
执行x1

三、修改文件权限 (chmod)

1. 数字模式
chmod 777 test1    # 所有者、组、其他用户均赋予 rwx 权限
chmod 644 file.txt # 所有者:rw-,组和其他:r--
2. 字符模式
  • 操作符:
    • + 添加权限
    • - 移除权限
    • = 设置精确权限
  • 用户类型:
    • u 所有者
    • g 所属组
    • o 其他用户
    • a 所有用户

常用命令:

chmod o+w test2      # 其他用户添加写的权限
chmod go-rw test3    # 所属组和其他用户移除读写权限
chmod a-rw test4     # 所有的用户移除读写权限
chmod u+x script.sh  # 允许所有者执行脚本
chmod -R g+w /home/test5/  # 递归为目录下所有的文件和目录的所属组添加写的权限

四、修改所有者/组 (chown/chgrp)

chown linux /home/test6        # 修改所有者
chown linux:linux /home/test7  # 同时修改所有者和所属组
chgrp linux /home/test8        # 修改所属组
chgrp -R linux /home/test9/    # 递归修改目录下所有文件的所属组

五、特殊权限

权限作用场景设置方法数字标识
SUID二进制文件chmod u+s /usr/bin/mkdir4xxx (如 4755)
SGID二进制文件/目录chmod g+s /tmp/test2xxx (如 2770)
Sticky目录(防误删)chmod o+t /tmp/test1xxx (如 1777)

说明:

  • SUID:应用于二进制文件,调用二进制文件的所有者的身份来执行。
  • SGID:应用于二进制文件或者目录,当作用在目录的时候,拥有继承权限。
  • Sticky:应用于目录,对目录使用了sticky权限,对该目录具有写入权限
    的任何用户(root用户除外)仅能删除自己为属主的文件或目录。

六、默认权限与 umask

用户类型新建目录权限新建文件权限默认 umask
root755 (rwxr-xr-x)644 (rw-r–r–)0022
普通用户775 (rwxrwxr-x)664 (rw-rw-r–)0002

计算示例:

  • root 用户创建文件:666 - 022 = 644
  • 普通用户创建目录:777 - 002 = 775

七、ACL 高级权限控制

1. 设置 ACL (setfacl)
setfacl -m u:admin:rw a           # 只允许 admin 用户对文件 a 有读写权限

setfacl -m g:lisi:rw a            # 只允许 lis i组对文件 a 有读写权限
setfacl -m u:admin:rwx b/         # 只允许 admin 用户对目录 b/ 有读写权限
setfacl -m g:lisi:rwx  b/		  # 只允许 lisi 组队目录 b/ 有读写权限
2. 继承 ACL(默认权限)
setfacl -m u:admin:rwx b/         # 需先设置目录本身的 ACL
setfacl -m d:u:admin:rwx b/       # 只允许 admin 用户对目录 b/ 有读写权限,且在目录b/下新建的文件或目录
继承目录b/的权限
3. 删除 ACL
setfacl -k b/   # 删除目录 b/ 的 default 权限(删除继承)
setfacl -b a    # 删除文件 a 的 acl 权限

总结命令速查

功能命令示例
数字修改权限chmod 755 file
递归修改组chgrp -R dev /project/
设置 SUIDchmod u+s /usr/bin/file
设置 SGID 目录chmod g+s /shared/
设置 ACL 继承setfacl -m d:g:dev:rwx /shared/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值