В чем разница между основной группой и вторичной группой в Ubuntu?

21

В чем разница между основной группой и вторичной группой в Ubuntu?

Нематулла Танин
источник
Пожалуйста, добавьте больше контекста к вашему вопросу. О каких группах вы спрашиваете?
Аквахерд

Ответы:

15

Основная группа - это группа, которая применяется к вам при входе в систему с использованием обычных методов (TTY, GUI, SSH и т. Д.).

Поскольку процессы обычно наследуют группу родителя, а ваш первоначальный процесс или оболочка будет иметь вашу основную группу в качестве группы, все, что вы делаете, обычно влияет на основную группу (например, на создание файлов).

Вторичные группы - это группы, в которых вы можете запускать процессы как без использования группового пароля, так и через sgили войти в систему с помощью newgrpкоманды.

Так что если у вас есть первичная группа xи вторичная группа y,

touch foo

обычно создает файл с xименем владельца группы (если родительский каталог не является SETGID для другой группы). Тем не менее, вы можете сделать:

sg y 'touch bar'
# or
newgrp y
touch baz

Тогда barи bazбудет создан с yгруппой.

Однако, если у вас нет группы в ваших дополнительных группах (скажем z), команды sgи newgroupзапросят пароль группы, если вы используете их с z.

Мур
источник
4

Если вы говорите о группах файловых систем, они довольно хорошо объяснены здесь, в статье о киберцити . Основная группа используется по умолчанию при создании нового файла. Вы можете проверить это

touch foo
ls -la foo

Файл будет принадлежать вам и находиться в вашей основной группе. Пользователи, которые также входят в вашу основную группу, будут иметь разрешения на уровне группы для этих файлов.

Вы можете проверить свои второстепенные группы с

groups $(whoami)

Также можно обмениваться файлами с людьми, которые не входят в вашу основную группу, установив параметр « Задать идентификатор группы» в каталоге. Это объясняется здесь: общая папка с SetGID .

Ээро Аалтонен
источник