是否可以创建与已删除组ID相同的组?

是否可以创建与已删除组ID相同的组?

假设我创建了一个ID为 的组1000,并且这个组有一些与之关联的文件和目录,然后我删除了这个组。

如果我创建一个新组,这个新组是否也可以具有组 ID 1000,因此与旧组关联的文件和目录现在与新组关联?

答案1

简短的回答是“是”。如果现有组当前具有给定的组 ID,则它将具有该组 ID 的所有关联 - 无论它是如何发生的。

我们可以很容易地自己验证这一事实,如下所示。

首先创建一个组group1ID为1000的组:

user@host:~$ groupadd group1 --gid 1000

检查组条目group1

user@host:~$ getent group group1

group1:x:1000:

创建一个文件testfile并将其组所有者设置为group1

user@host:~$ touch /tmp/testfile

user@host:~$ chown user:group1 /tmp/testfile

检查所有权testfile

user@host:~$ ls -l /tmp/testfile 

-rw-r--r-- 1 user group1 0 Jan 1 00:00 /tmp/testfile

现在删除并创建一个组 ID 为 1000 的group1新组:group2

user@host:~$ groupdel group1

user@host:~$ groupadd group2 --gid 1000

检查组条目group2

user@host:~$ getent group group2

group2:x:1000:

检查所有权testfile

user@host:~$ ls -l /tmp/testfile

-rw-r--r-- 1 user group2 0 Jan 1 00:00 /tmp/testfile

请注意,组所有者现在testfile注册为group2。这是因为组名称充当组 ID 的一种别名,而组 ID 是主要标识符。

相关内容