set_uid set_gid
set_uid
设置属主的特殊权限。

我们查看passwd文件,看到它的权限并不是我们之前知道的r,w,x;怎么有一个s那?
这个就是特殊权限。
问题:怎样为文件设置set_uid?
chmod u+s 文件名
我们也可以使用数字的方式添加:
1 chmod 4777 文件名
我们知道777是文件的 r、 w、 x的组结果。直接在前面加上 4 ,表示给文件添加set_uid的特殊权限。set_uid设置数字只能是4。
加上权限后我们使用 ls -l 查看属主上面的 x位置会变为s。但是有的时我们可能看见 S。
- s:当当前文件有 x执行权限的时候。加上特殊权限就会变成s。
- S:当当前文件没有 x执行权限的时候。加上特殊权限就会变成S。
注意:
1、set_uid的设置必须是可执行文件,如 ls命令所在的文件。没有可执行功能的文件加上权限也不行。
2、set_uid不能操作文件夹。
3、set_uid字母添加权限的时候,使用 u+s。
4、set_uid数字加权限的时候只能用数字 4.
5、上面的设置对root用户没用。root用户即使你设置了也不会对他有限制。
set_gid
知道了set_uid,间接也知道了set_gid,set_gid是设置属组的。方式大多都相同。只是在设置的时候不一样。
1 chmod g+s 文件名
数组表示方式:
1 chmod 2777 文件名
ls -l 查看文件显示的结果在属组位置。大小s的区别同set_uid。

注意:
1、set_gid的设置必须是可执行文件,如 ls命令所在的文件。没有可执行功能的文件加上权限也不行。
2、set_gid:可以操作文件夹。

当我们为文件夹加了set_gid后。再新创建的文件夹和文件属组都会和设置后一样。之前创建的文件不会受影响。
3、set_gid字母添加权限的时候,使用 g+s。
4、set_gid数字设置用户权限的时候,只能用 2。
5、上面的设置对root用户没用。root用户即使你设置了也不会对他有限制。
浙公网安备 33010602011771号