我有一个format.sh
文件Linux 操作系统。
有五个用户a
,,,& 。b
c
d
e
如何为不同的用户设置文件权限:
a
-> 读取、写入和执行b
-> 读取并执行c
-> 阅读d
-> 执行e
-> 没有权限
我熟悉使用 , & 进行基本文件权限修改,chmod
但我不确定如何授予不同用户对单个文件的权限?chown
chgrp
答案1
正如 Romeo Ninov 所建议的,你可以使用 ACL(访问控制列表)为文件定义复杂的权限,如果你的文件系统支持它们。
例如,您可以使用以下方式定义问题中的权限:
setfacl -m u:a:rwx,u:b:r-x,u:c:r--,u:d:--x,u:e:--- format.sh
您还可以使用以下命令检查文件的权限:
getfacl format.sh
如果用户a
也是文件的所有者format.sh
,您可以为该用户设置使用标准权限,而不是将其列在 ACL 中。
您应该注意到,正如 Kamil Maciorowski 的评论所解释的那样,授予用户执行脚本的权限而不授予她阅读脚本的权限是毫无意义的。您还可以考虑,可以阅读程序但不能执行程序的用户可能会复制该程序并授予自己执行副本的权限。