chmod—修改文件、目录权限
Usage: chmod [OPTION]… MODE[,MODE]… FILE…
or: chmod [OPTION]… OCTAL-MODE FILE…
or: chmod [OPTION]… –reference=RFILE FILE…
Change the mode of each FILE to MODE.
-c, –changes like verbose but report only when a change is made
–no-preserve-root do not treat `/’ specially (the default)
–preserve-root fail to operate recursively on `/’
-f, –silent, –quiet suppress most error messages
-v, –verbose output a diagnostic for every file processed
–reference=RFILE use RFILE’s mode instead of MODE values
-R, –recursive change files and directories recursively
–help display this help and exit
–version output version information and exit
Each MODE is of the form `[ugoa]*([-+=]([rwxXst]*|[ugo]))+’.
常用形式:chmod 777 [filename] 、 chmod 755 [filename] 、chmod a+x [filename]、chmod u+r [filename]
r:read——4
w:write——2
x:execute——1
X:我也不知道怎么用
(rwx作为一组出现,如果有某个权限,其标志为1,否则为0,例如r-x为101 、rwx为111,101转化成十进制为5,111为7)
a:all–所有用户
u:user—-文件拥有着
g:group—-与user同属一个group的其他user
o:other—–其他group的user
举例一:chmod 755 [filename] ,意思是 u的权限是4+2+1、 g和o的权限是4+1,
所以可以写作 -rwxr-xr-x(在首位-代表普通文件,d代表目录(directory),l代表链接(link),b代表区块(block),c代表(character))
举例二:chmod g+w [filename],意思是group组加上write的权限
另外还有粘滞位的概念:
我们可以看到这个权限其实有4位 只不过第一位缺省值为0
设置粘滞位的方法:
chmod +t 、chmod 1xxx
粘滞位只对目录有效,当⽬录被设置了粘滞位权限以后,即便⽤户对该⽬录有写⼊权限,也不能删除该⽬录中其他⽤户的⽂件数据,⽽是只有该⽂件的所有者和root⽤户才有权将其删除。
另外:如果把other的x权限去掉,可以发现t变成T了,即t=T+x
chmod之SetUID、SetGID
设置SetUID:chmod u+s 、chmod 4xxx
设置SetGID:chmod g+s 、chmod 2xxx
SetUID:当一个具有执行权限的文件设置SetUID权限后,用户执行这个文件时将以文件所有者的身份执行。
SetGID基本与SetUID相同,无非也就是一个设置所有者的权限,GID为设置所属组的特殊权限
必须具备以下几个条件:
1.只有可执行的二进制程序才可以设置SetUID
2.所有者必须对欲设置SetUID的文件具备 可执行(x) 权限
SetUID举例:
SetGID举例:
参考文章:https://www.cnblogs.com/Jimmy1988/p/7260215.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/38455.html