第八讲权限管理主讲人:沈超()交流论坛:、SetGID针对文件的作用只有可执行的二进制程序才能设置SGID权限命令执行者要对该程序拥有x(执行)权限命令执行在执行程序的时候,组身份升级为该程序文件的属组SetGID权限同样只在该程序执行过程中有效,也就是说组身份改变只在程序执行过程中有效[root@localhost~]#ll/usr/bin/locate-rwx--s--x1rootslocate356128月242010/usr/bin/locate[root@localhost~]#ll/var/lib/mlocate/mlocate.db-rw-r-----1rootslocate18388501月2004:29/var/lib/mlocate/mlocate.db/usr/bin/locate是可执行二进制程序,可以赋予SGID执行用户lamp对/usr/bin/locate命令拥有执行权限执行/usr/bin/locate命令时,组身份会升级为slocate组,而slocate组对/var/lib/mlocate/mlocate.db数据库拥有r权限,所以普通用户可以使用locate命令查询mlocate.db数据库命令结束,lamp用户的组身份返回为lamp组2、SetGID针对目录的作用普通用户必须对此目录拥有r和x权限,才能进入此目录普通用户在此目录中的有效组会变成此目录的属组若普通用户对此目录拥有w权限时,新建的文件的默认属组是这个目录的属组[root@localhost~]#cd/tmp/[root@localhosttmp]#mkdirdtest[root@localhosttmp]#chmodg+sdtest[root@localhosttmp]#ll-ddtest/[root@localhosttmp]#chmod777dtest/[root@localhosttmp]#su–lamp[lamp@localhost~]$cd/tmp/dtest/[lamp@localhostdtest]$touchabc[lamp@localhostdtest]$ll3、设定SetGID2代表SGIDchmod2755文件名chmodg+s文件名4、取消SetGIDchmod755文件名chmodg-s文件名