Linux узнать основную группу пользователя

Посмотреть группы пользователя в Linux

Я использую Ubuntu Linux, но данная команда работает в различных дистрибутивах Linux. Поскольку в Linux все имеется файлом, то такая система позволяет регулировать доступ к любому действию в этой операторной системе с помощью установки прав доступа на файлы. Но еще при создании Linux, разработчики постигнули, что этого явно недостаточно. В операционных системах семейства Linux у пользователя имеется основная группа, а также определённое количество дополнительных групп. Это удачное, стратегически обмысленное решение. Понимание групп, к каким принадлежит пользователь в Ubuntu очень важно — т.к. дает понимание того, к каким файлам user имеет доступ. Пользователи и группы пользователей используются на GNU/Linux для управления доступом — то имеется, для управления доступом к системным файлам, каталогам и переферии. Linux предлагает относительно несложные и грубые механизмы контроля доступа по умолчанию.

Список групп пользователя Linux

Вы сможете посмотреть список групп пользователя Linux двумя основными способами. Это команда id, какую мы уже разбирали в статье о том, как узнать id пользователя Linux, и команда groups. Чтобы вывести всю данные о пользователе, используйте id:

Все группы, созданные в системе, находятся в файле /etc/group. Посмотрев содержание этого файла, вы можете узнать список групп linux, которые уже есть в вашей системе. И вы станете удивлены.

Если вы не введете имя пользователя, по умолчанию будет применено ваше имя. К примеру:

frame@ubuntuServ:$ groups
frame adm dialout cdrom floppy audio dip video plugdev lpadmin scanner admin fuse

Вы вдобавок можете проверить какие группы принадлежат другому пользователю, включая root:

frame@ubuntuServ:$ groups root
root : root fuse

Помимо стандартных root и users, здесь есть еще пару десятков групп. Это группы, сделанные программами, для управления доступом этих программ к общим ресурсам. Каждая группа позволяет чтение или запись определенного файла или каталога системы, тем самым регулируя полномочия юзера, а следовательно, и процесса, запущенного от этого пользователя. Здесь можно считать, что пользователь — это одно и то же что процесс, поэтому что у процесса все полномочия пользователя, от которого он запущен.

Читайте также: Как убрать пароль при входе в систему Linux Mint: подробная инструкция с примерами кода.

Читайте также:  Linux find ignore files

Просмотреть список всех групп в Linux

Когда вы хотите просмотреть список всех групп в вашей системе, вы можете использовать бригаду getent:

Этот вывод также покажет вам, какие учетные записи юзеров являются членами групп.

Добавление пользователя в Linux

Добавление пользователя осуществляется при поддержки команды useradd. Пример использоания:

Управление группами юзера в Linux

Управлять группами можно и с помощью графического интерфейса. В KDE есть программа Kuser умышленно предназначенная для этого, в Gnome это выполняется с помощью настроек системы. Кроме того, в известных дистрибутивах есть отдельные инструменты, такие как YaST в OpenSUSE или Настройки Ubuntu. Но с графичным интерфейсом я думаю вы разберетесь. А мы рассмотрим управление группами linux через терминал. Для начала разберемся с файлами, а уже потом с пользователями.

При создании файла ему назначается основная группа юзера который его создал. Это просто например:

Здесь вы можете видеть, что владелец всех папок sergiy и группа также sergiy. Правильно, так как эти пользователи были созданы мной. Но давайте пойдем дальше:

Модифицирование первичной группы пользователя в Linux

Хотя учетная запись пользователя может быть долею нескольких групп, одна из групп всегда является «основной группой», а остальные представляются «вторичными группами». Файлы и папки, созданные пользователем, будут соответствовать первичной команде.

Чтобы изменить основную группу, которой назначен пользователь, запустите бригаду usermod, заменив groupname на имя группы, которую вы хотите сделать основной и username на имя переписной записи пользователя.

usermod -g groupname username

Обратите внимание на -g здесь. При использовании маленькой буквы g вы назначаете основную группу. Когда вы используете верхний регистр -G, как указано реке, вы назначаете новую вторичную группу.

Как видите, всё очень просто. Вы можете дословно с помощью одной команды посмотреть группы пользователей Linux, причём не только для нынешного пользователя, а для всех, кто вас интересует. Если у вас остались вопросы, спрашивайте в комментариях!

Источник

Как посмотреть список групп в Linux

Операционная система Linux – весьма продуманная и грамотная система. Во всех современных устройствах этого «семейства» пользователь может обнаружить основную группу и n-ое количество добавочных групп (их число варьируется и не является константным). Для чего они необходимы на практике? Дополнительные группы обеспечивают доступ к определенным файлам в системе компьютера (иными словами, делают это выборочно), но не дают каждому пользователю прав владельца. То есть, доступ ко всем остальным файлам остается ограниченным. Удачное решение, не правда ли? Пользователю могут быть предоставлены только те файлы, которые способствуют стандартной оптимизации работы, но при всем при этом он не имеет возможности залезть в чужие данные, чтобы внести туда свои коррективы. Из этого можно сделать вывод, что вопрос безопасности и конфиденциальности всех пользователей одного устройства, функционирующего на операционной системе Linux, соблюден на наивысшем уровне. Чтобы эффективно управлять системой, понадобятся определенные навыки системного администрирования. На словах это звучит несколько сложно, но после прочтения этой статьи вы убедитесь в обратном положении вещей, и поймете, насколько быстро и легко можно получить обширное представление о пользовательской среде устройства. Для этого достаточно разобраться с парочкой несложных команд, выучить их, и «на ура» бороздить просторы системы. Из данной статьи вы узнаете, как посмотреть список групп пользователя Линукс. Разумеется, мы предлагаем вашему вниманию несколько альтернативных вариантов поиска нужной информации. Вам остается лишь выбрать наиболее удобный метод, хотя каждый из них будет понятен даже неопытному владельцу ПК.

Читайте также:  Ограничение длины имени файла linux

Узнаем через команду id

Команда idЧтобы найти всю необходимую информацию о пользователях устройства, нужно действовать по старинке. То есть, ввести специальную команду и дождаться соответствующего отклика. На деле это будет выглядеть следующим образом: $ id Команда idДля просмотра списка групп только текущего пользователя нужно применить опцию -G. С ней изначальный вариант потерпит соответствующие видоизменения: $ id -GУзнаем id через параметр -G Просто использовать один лишь аргумент -G неудобно, так как вывод показывает идентификаторы групп, человеку их читать сложно, поэтомы чтобы ознакомиться с наименованиями наличествующих групп, будем использовать дополнительную опцию «n». Для выполнения этой опции нужны дополнительные права. Не хватает прав # id -Gn Наименование группыИногда появляется необходимость ознакомиться со списком групп другого пользователя системы Linux. Чтобы осуществить задуманное, нужно знать его имя, и ввести эти данные в виде добавочной приставки к уже хорошо известной команде: # id -Gn имя_пользователя Для примера, узнаем список групп пользователя «ya». # id -Gn ya Получаем список групп конкретного пользователя

Узнаем через команду groups

А теперь разберемся со вторым способом просмотра информации на устройстве с операционной системой Линукс. Как и всегда, нужные данные будут получены при помощи специальной команды. Она выглядит следующим образом: $ groups Группы текущего пользователя Чтобы посмотреть, какая группа принадлежит конкретному пользователю системы, необходимо указать его имя в виде приставки в исходном варианте команды. Что мы получаем: $ groups имя_пользователя Узнаем список групп у пользователя ya. $ groups ya Получаем список group конкретного пользователя

Хотим обратить ваше внимание на один важный момент: если не прописывать имя другого пользователя в командной строке, система автоматически применит имя текущего пользователя (то есть, ваше имя), ведь устройство определяет того, от кого исходит данный запрос.

Это происходит по умолчанию, и объясняется тем, что утилита с одноименным названием groups запускается в обоих режимах (с указанием имени/без указания имени пользователя). С её помощью можно получить общие данные о пользователях различных категорий: root, системные пользователи и обычные пользователи. Юзер системы может состоять сразу в нескольких группах – это весьма распространенное явление, и удивляться здесь нечему. Эти данные также могут пригодиться в определенных ситуациях, связанных с управлением системой. Представим, что вы оказались именно в такой ситуации. Давайте разберемся, как ознакомиться с нужной информацией. Команда для подсчета количества групп пользователя выглядит следующим образом: $ groups | wc -w

Читайте также:  Linux чем отличается от виндовс

Количество

Заключение

В этой статье представлено несколько стандартных команд, которые позволяют приблизить решение той или иной проблемы. Но ведь не практике все происходит гораздо проще. Пользователь будет действовать ситуационно, а значит, использовать одну конкретную команду (в крайнем случае – несколько базовых команд по очереди). Обе рассматриваемые команды работают по схожему принципу. Различий в них мало, и они незначительные. Но, возможно, кому-то удобнее пойти именно этим путем. Теперь понимаете, насколько всё элементарно? Всего пару кликов, и картина полностью проясняется. Чтобы довести управление системой до автоматизма, нужно лишь подробнее изучить некоторые её параметры, и четко понимать свои цели.

Источник

How to find out what group a given user has?

This appears to be pretty useful as well. It has more verbose output than the ‘groups’ command, so if you need the group id/user id use this!

On Linux/OS X/Unix to display the groups to which you (or the optionally specified user) belong, use:

which is equivalent to groups [user] utility which has been obsoleted on Unix.

On OS X/Unix, the command id -p [user] is suggested for normal interactive.

Explanation on the parameters:

-G , —groups — print all group IDs

-n , —name — print a name instead of a number, for -ugG

-p — Make the output human-readable.

or just study /etc/groups (ok this does probably not work if it uses pam with ldap)

Below is the script which is integrated into ansible and generating dashboard in CSV format.

sh collection.sh #!/bin/bash HOSTNAME=`hostname -s` for i in `cat /etc/passwd| grep -vE "nologin|shutd|hal|sync|root|false"|awk -F':' '' | sed 's/[[:space:]]/,/g'`; do groups $i; done|sed s/\:/\,/g|tr -d ' '|sed -e "s/^/$HOSTNAME,/"> /tmp/"$HOSTNAME"_inventory.txt sudo cat /etc/sudoers| grep -v "^#"|awk ''|grep -v Defaults|sed '/^$/d;s/[[:blank:]]//g'>/tmp/"$HOSTNAME"_sudo.txt paste -d , /tmp/"$HOSTNAME"_inventory.txt /tmp/"$HOSTNAME"_sudo.txt|sed 's/,[[:blank:]]*$//g' >/tmp/"$HOSTNAME"_inventory_users.txt 

My output stored in below text files.

cat /tmp/ANSIBLENODE_sudo.txt cat /tmp/ANSIBLENODE_inventory.txt cat /tmp/ANSIBLENODE_inventory_users.txt 

Источник

Оцените статью
Adblock
detector