我正在根据 RHCSA 书籍进行 LAB,并希望寻求一些帮助。任务是:
登录到主机1作为根并创建目录/shared_dir1
。创建一个名为shared_grp
并分配user1000
给它的组user2000
(创建这些用户)。在目录上设置适当的所有权、组成员身份和权限以支持组协作。
到目前为止我所做的:
1)创建了/共享目录1作为根
mkdir /shared_dir1
2)创建组共享组
groupadd -g 9998 shared_grp
3)创建两个用户
adduser user1000
adduser user2000
4)将user1000和user2000分配给shared_grp
usermode -G shared_grp user1000
usermode -G shared_grp user2000
5)为了支持小组协作,我设置了 setgid 位,如下所示
chmod g+s /shared_dir1
6)验证setgid位是否设置正确
ls -ld /shared_dir1
drwxr-**s**r-x
7)将组所有权从root更改为shared_grp:
chown root:shared_grp /shared_dir1
我的第一个问题是,为什么我能够cd
进入/shared_dir1
(根据ls
命令/shared_dir1
缺乏执行权限时使用 user1000 或 user2000 ?
答案1
模式字符串中的小写“s”表示它是带有可执行文件的 set-gid。该字符串是 2755 权限集。如果删除组可执行位但保留 setgid,您将看到:
drwxr-Sr-x
这将是数字模式 2745。