Следующая команда выведет список всех групп someUser
(основная группа и дополнительные группы):
groups someUser
Но есть ли способ получить только первичную группу?
Следующая команда выведет список всех групп someUser
(основная группа и дополнительные группы):
groups someUser
Но есть ли способ получить только первичную группу?
Ответы:
Смотрите FreeBSD справочник (информация также действительны для Linux):
ID группы (GID)
Идентификатор группы (GID) - это номер, используемый для уникальной идентификации основной группы, к которой принадлежит пользователь. Группы - это механизм управления доступом к ресурсам, основанный на GID пользователя, а не на его UID. Это может значительно уменьшить размер некоторых файлов конфигурации и позволяет пользователям входить в несколько групп. Рекомендуется использовать GID 65535 или ниже, поскольку более высокий GID может нарушить работу некоторых программ.
Если это так, бег id <username>
покажет gid=<primary group>
:
id <username>
uid=1000(<username>) gid=1000(<username>) groups=1000(<username>),4(adm),24(cdrom),27(sudo)
Если вы хотите, чтобы команда возвращала только имя основной группы, смотрите man id
:
-g, --group print only the effective group ID -G, --groups print all group IDs -n, --name print a name instead of a number, for -ugG
Итак, id -gn <username>
должен дать вам то, что вы хотите.