Чим відрізняється первинна група від вторинної групи в Ubuntu?
Чим відрізняється первинна група від вторинної групи в Ubuntu?
Відповіді:
Основна група - це група, застосована до вас під час входу за допомогою звичайних методів (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
.
Якщо ви говорите про групи файлових систем, вони тут досить добре пояснені у статті про кіберцити . Основна група використовується за умовчанням при створенні нового файлу. Ви можете перевірити це
touch foo
ls -la foo
Файлом ви будете володіти вами та матимуть вашу основну групу. Користувачі, які також перебувають у вашій основній групі, матимуть дозволи на рівні групи для цих файлів.
Ви можете перевірити свої вторинні групи за допомогою
groups $(whoami)
Також можна ділитися файлами з людьми, які не належать до вашої основної групи, встановивши Встановити ідентифікатор групи в каталозі. Це пояснюється тут: спільна папка із SetGID .