如果将则前三位SGT也转换成一个二进制数,则
suid 的八进制数字是4
sgid 的代表数字是 2
sticky 位代表数字是1
这样我们就可以将十二位权限三位三位的转化为4个八进制数 。其中
最高的一位八进制数就是suid,sgdi,sticky的权值 。
第二位为 拥有者的权值
第三位为 所属组的权值
最后一位为 其他组的权值
附加权限的八进制形式
通过上面,我们知道,正常权限和附加权限可以用4位八进制数表示 。类似于正常权限的数字权限赋值模式(使用三位八进制数字赋值)
chmodfile...
我们可以进一步使用4位八进制数字同时赋值正常权限和附加权限 。
chmodfile...
其中s是表示附加权限的把八进制数字,abc与之前一致,分别是对应User、Group、及Other(拥有者、群组、其他组)的权限 。因为SUID对应八进制数字是4,SGID对于八进制数字是2,则“4755”表示设置SUID权限,“6755”表示同时设置SUID、SGID权限 。
我们进一步将上小节的例子中的二进制数转变为八进制表示形式 , 则
-rw-r-sr-- =010110100100=2644-rwsr-xr-x =100111101101=4755-rwsr-sr-x =110111101101=6755-rwsr-sr-t =111111101101=7755
对比范例:
设置 netlogin 的权限为拥有者可读写执行 , 群组和其他权限为可读可执行
设置 netlogin 的权限为拥有者可读写执行,群组和其他权限为可读可执行,并且设置suid
chmod 4755与chmod 755对比多了附加权限值4,这个4表示其他用户执行文件时,具有与所有者同样的权限(设置了SUID) 。
为什么要设置4755 而不是 755?
假设netlogin是root用户创建的一个上网认证程序,如果其他用户要上网也要用到这个程序,那就需要root用户运行chmod 755 netlogin命令使其他用户也能运行netlogin 。但假如netlogin执行时需要访问一些只有root用户才有权访问的文件,那么其他用户执行netlogin时可能因为权限不够还是不能上网 。这种情况下,就可以用 chmod 4755 netlogin 设置其他用户在执行netlogin也有root用户的权限,从而顺利上网 。
linux下解权限命令的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于linux权限详解、linux下解权限命令的信息别忘了在本站进行查找喔 。
推荐阅读
- 什么应用商店赛车游戏多,最好玩的赛车app
- 分期手机怎么说停我社保,手机分期保险怎么取消
- 怎么评价电子竞技游戏的好,如何评价电子竞技
- 罗永浩直播带货破亿,罗永浩直播带货破亿了嘛
- python的or函数 python中的ord函数
- linux下清除历史命令,linux清除历史命令记录
- 单机玩的角色扮演游戏,好玩单机角色扮演游戏
- java代码查看垃圾内存,java内存排查
- linux系统中用命令行 总结linux命令行的主要用法