文件权限设置:
ls -ld /root //查看目录信息;
dr-xr-x---. 30 root root 4096 11月 13 08:33 /root 权限位 硬连接数 属主 属组 大小 最后修改时间 文件/目录名称
权限位以“-”开头: 文件 权限位以“l”开头: 快捷方式 权限位以“d”开头: 目录
==========================================================
• 权限适用对象(归属) – 所有者:拥有此文件/目录的用户-user u – 所属组:拥有此文件/目录的组-group g – 其他用户:除所有者、所属组以外的用户-other o
如何判断用户具备权限
1.判断用户所属的身份 所有者>所属组>其他人 匹配即停止
2.看相应权限位的权限划分
设置文档归属 • 使用 chown 命令 – chown [-R] 属主 文档... # chown student /nsd05
– chown [-R] :属组 文档...
# chown :root /nsd05/
– chown [-R] 属主:属组 文档...
# chown dc:tedu /nsd05
==========================================================
基本权限的类别 • 访问方式(权限) – 读取:允许查看内容-read r – 写入:允许修改内容-write w – 可执行:允许运行和切换-execute x
对于文本文件:
r: cat head tail less
w: vim
x: 运行
对于目录:
r :能够 ls 浏览此目录内容
w :能够执行 rm/mv/cp/mkdir/touch/... 等更改目录内容的操作
x :能够 cd 切换到此目录
• 使用 chmod 命令 – chmod [-R] 归属关系+ - = 权限类别 文档... [-R] 递归赋予权限
chmod u+w /root //给所有者添加写权限;
chmod g+w /root //给所属组添加写权限;
chmod o+w /root //给其他用户添加写权限;
chmod +w /root //给所有者、所属组、其他用户都添加写权限;
chmod u=x,g=rw,o=--- /mnt //给所有者执行权限,所属组读写权限,其他人不给权限;
===========================================================
特殊权限(附加权限) Set UID
• 附加在属主的 x 位上 – 属主的权限标识会变为 s(没有执行权限则以大写S表示) – 适用于可执行文件,Set UID可以让使用者具有文件属 主的身份及部分权限(传递所有者身份)
chmod u+s /mnt
Set GID • 附加在属组的 x 位上 – 属组的权限标识会变为 s(没有执行权限则以大写S表示) – 适用于可执行文件,功能与Set UID类似(传递所属组身份)
– 适用于目录,Set GID可以使目录下新增的文档自动设 置与父目录相同的属组
chmod g+s /mnt
Sticky Bit • 附加在其他人的 x 位上 – 其他人的权限标识会变为 t – 适用于开放 w 权限的目录,可以阻止用户滥用 w 写入 权限(禁止操作别人的文档)
chmod o+t /public
===========================================================
acl策略的作用
• 文档归属的局限性 – 任何人只属于三种角色:属主、属组、其他人 – 无法实现更精细的控制
• acl访问策略 – 能够对个别用户、个别组设置独立的权限 – 大多数挂载的EXT3/4、XFS文件系统默认已支持
• 使用 getfacl、setfacl 命令
– getfacl 文档...
– setfacl -m u:用户名:权限类别 文档... //给单独的用户权限
– setfacl -m g:组名:权限类别 文档... //给单独的组权限
– setfacl -x u:用户名 文档... //删除指定的用户ACL策略
– setfacl -b 文档... //清空ACL策略
===========================================================
权限可以用数字来表示(四位数):
4 2 1
读权限 写权限 执行权限
特殊权限(第一位): 4 2 1 用户的s 组的s 其他人的T