情境模拟题一:假设系统中有两个账号,分别是 alex 不 arod ,这两个人除了自己群组只外还共同支持一个名为 project 的群组。假设这两个用户需要共同拥有 /srv/ahome/ 目录的开发权,且该目录不许其他人迚入查阅。 请问该目录的权限设定应为何?请先以传统权限说明,再以 SGID 的功能解析。
目标:了解到为何项目开发时,目录最好需要设定 SGID 的权限!
前提:多个账号支持同一群组,且共同拥有目录的使用权!
需求:需要使用 root 的身份来进行 chmod, chgrp 等帮用户设定好他们的开发环境才行! 这也是管理员癿重要任务之一!
[root@www ~]# groupadd project <==增加新的群组
[root@www ~]# useradd -G project alex <==建立 alex 账号,且支持project
[root@www ~]# useradd -G project arod
#如果用户alex和arod已经存在
[root@www ~]#usermod -G preject alex
[root@www ~]#usermod -G preject arod
[root@www ~]# id alex <==查阅 alex 账号的属性
[root@www ~]# id arod
[root@www ~]# mkdir /srv/ahome
[root@www ~]# ll -d /srv/ahome
drwxr-xr-x 2 root root 4096 Sep 29 22:36 /srv/ahome
[root@www ~]# chgrp project /srv/ahome
[root@www ~]# chmod 770 /srv/ahome
[root@www ~]# ll -d /srv/ahome
drwxrwx--- 2 root project 4096 Sep 29 22:36 /srv/ahome
# 从上面癿权限结果杢看,由亍 alex/arod 均支持 project,因此似乎没问题了!但还需要做
[root@www ~]# chmod 2770 /srv/ahome
[root@www ~]# ll -d /srv/ahome
drwxrws--- 2 root project 4096 Sep 29 22:46 /srv/ahome
#这样两人才可以互相修改对方的档案