Linux系统的权限管理机制

Linux中的权限管理机制主要围绕用户和组的权限展开。每个文件和目录都由三种实体管理权限:所有者(user)、组(group)和其他人(others)。权限分为三种类型:读取(read)、写入(write)和执行(execute)。通过这三种权限的组合,Linux系统可以细粒度地控制文件和目录的访问和操作。使用 ls -l 命令可查看文件的权限和所有者信息。

扩展知识:
1. 用户和组
- 每个文件和目录都有一个所有者和所属组。用户有唯一用户ID(UID),组有唯一组ID(GID)
- 用户可属于多个组,但文件只能有一个所有者和一个组属性

2. 权限表示
- 符号表示:r=读,w=写,x=执行。例如 rw-r--r-- 表示:
  * 所有者有读写权限
  * 组用户有读权限
  * 其他用户有读权限
- 八进制表示:r=4,w=2,x=1,三者相加。例如:
  * rw-r--r-- = 644
  * rwxr-xr-x = 755

3. 修改权限
- 使用 chmod 命令:
  chmod 755 filename     # 设置权限为rwxr-xr-x
  chmod u+x script.sh    # 给所有者添加执行权限

4. 修改所有者和组
- 使用 chown 修改所有者和组:
  chown user:group filename
- 使用 chgrp 修改组:
  chgrp developers file.txt

5. 特殊权限
- SUID(Set User ID):
  执行文件时以文件所有者身份运行(如 /usr/bin/passwd)
- SGID(Set Group ID):
  执行文件时以文件所属组身份运行
  目录设置SGID后,新建文件继承目录的组属性
- Sticky Bit:
  设置后仅文件所有者可删除/移动该文件(如 /tmp 目录)
  设置方法:chmod +t directory

6. 实战技巧
- 批量修改权限:
  find /path -name "*.sh" -exec chmod +x {} \;
- 批量修改所有者:
  find /var/www -type d -exec chown www-data:www-data {} \;
- 查看特殊权限:
  ls -l 会显示特殊权限位(如 rwsr-xr-x 中的s表示SUID)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值