文件访问权限管理

文件权限基础

- 访问权限

- 读取:查看文件内容或显示目录列表。

- 写入:修改文件内容或在目录中新建、移动、删除文件。

- 执行:运行程序或切换目录。

- 归属

- 属主:文件或目录的所有者。

- 属组:文件或目录所属的用户组。

权限查看

- 权限字符r(读)w(写)x(执行)-(无权限)。

- 数字表示r=4w=2x=1- =0

- 示例-rw-r--r-- 表示属主有读写权限,属组和其他用户只有读权限。

权限设置

- chmod

- 格式1chmod [ugoa] [+-=] [rwx] 文件或目录

- 格式2chmod nnn 文件或目录(八进制数字)。

- 选项-R 递归修改目录下所有文件和子目录的权限。

- 实例

- 增加属主执行权限chmod u+x 文件名

- 去除属组写权限chmod g-w 文件名

- 设置权限为属主读写、属组读、其他用户无权限chmod 640 文件名

归属设置

- chown

- 格式chown 属主[:属组] 文件或目录

- 选项-R 递归修改目录下所有文件和子目录的归属。

- chgrp

- 格式chgrp 组名 文件或目录

- 用于改变文件或目录的所属组。

特殊权限

- SET位权限

- SUID:属主权限增加SET位,其他用户执行文件时拥有属主权限。

- SGID:属组权限增加SET位,文件或目录的所属组自动继承。

- 粘滞位(Sticky)

- 设置在目录上,防止用户删除其他用户的文件。

- 示例/tmp 目录通常设置粘滞位。

ACL权限

- 目的:提供更细粒度的权限控制。

- 适用对象:用户、用户组、默认权限。

- 管理

- 查看getfacl 文件名

- 修改setfacl -m u:用户名:权限 文件名

- 删除setfacl -x u:用户名 文件名