- Как просмотреть список пользователей и групп в Linux?
- Просмотр пользователей
- Просмотр пользовательских групп
- Просмотр активных пользователей
- Заключение
- Похожие записи:
- Как посмотреть список групп в Linux
- Узнаем через команду id
- Узнаем через команду groups
- Заключение
- Список групп пользователя Linux
- Список групп пользователя Linux
- Выводы
Как просмотреть список пользователей и групп в Linux?
Одной из важнейших задач в системном администрировании является управление пользователями. Не менее важно также иметь чёткое представление и о самих пользователях. Точнее, об их учётных записях в системе. Администраторам приходится очень часто выяснять и проверять информацию о пользователях в разных ситуациях. О том, как это делается в системах Linux и будет рассмотрено в данной статье.
Просмотр пользователей
Учётные записи в системах Linux – это универсальные компоненты. Которые представляют собой как реальных пользователей, так и виртуальных. Последние предназначены для функционирования системных сервисов Linux, являющихся неотъемлемыми составляющими системы. Или же это могут быть служебные, дополнительно добавленные в систему сервисы, предназначенные для расширения её функционала.
Независимо от того, каким пользователям (реальным или виртуальным) принадлежат учётные записи, вся основная информация о них хранится в файле /etc/passwd. Каждая учётная запись в этом файле представлена одной строкой, разделённой на поля символами двоеточия. Например, просмотреть этот файл можно командой less:
$ less /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync . . . games:x:5:60:games:/usr/games:/bin/sh
Имя пользователя (учётной записи) содержится в первом поле. Поэтому, чтобы упростить восприятие вывода, когда нужно получить например, только список имён пользователей, можно использовать соответствующие инструменты, например команду cut (или аналогичные sed или awk):
$ cut -d : -f 1 /etc/passwd root daemon bin sys sync . . . games
Конечно, для того, чтобы различать принадлежность некоторых учётных записей к реальным или виртуальным пользователям, необходим некоторый опыт администрирования Linux или UNIX. Например, в приведённом выводе пользователь root – это суперпользователь. А пользователи daemon, bin, sys и sync – учётные записи, от имени которых работают системные сервисы.
Вообще, изначально по устоявшимся соглашениям, по-умолчанию в системах Linux принято придерживаться определённых правил для наименования учётных записей, обслуживающих системные или служебные процессы и/или сервисы. Так, например, для работы веб-сервера Apache обычно используется учётная запись www-data. Это очень важно для обеспечения и контроля безопасности системы. Таким образом легко разделять привилегии по функциональному признаку для пользователей. Такие же соглашения действуют и для наименования системных или служебных процессов. Тот же Apache обычно представляется процессами httpd или apache.
Просмотр пользовательских групп
Аналогично учётным записям, информация о всех группах пользователей хранится в одном файле /etc/group :
$ less /etc/group root:x:0: daemon:x:1: bin:x:2: sys:x:3: adm:x:4: tty:x:5: disk:x:6:
Первое, на что нужно обратить внимание, это то, что имена многих групп идентичны именам некоторых имеющихся в системе пользователей. И это не просто совпадение. Дело в том, что таким образом реализуется механизм частных пользовательских групп (UPG) в системе. Он заключается в том, что для пользователя создаётся одноимённая закрытая группа. Которая назначается этому пользователю как основная. Этот механизм позволяет использовать в системе общие каталоги (и вообще ресурсы) без вреда для безопасности. Для этого существует такой полезный инструмент в системе прав доступа как бит setgid. Смысл этого бита в том, что в каталоге, для которого он установлен, можно создавать файлы, принадлежащие тому же владельцу, что и сам каталог с битом setgid.
Просмотр активных пользователей
Информацию о том, какие пользователи активны в данный момент времени в системе позволяют команды «w» и «who». Первая по-умолчанию выводит более подробные данные о пользователях, например:
$ w 11:45:24 up 6:34, 2 users, load average: 0.33, 0.10, 0.07 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 rrcs-72-43-115-1 19:15 38.00s 0.33s 0.33s -bash demoer pts/1 rrcs-72-43-115-1 19:37 0.00s 0.47s 0.00s w
В первой строке указаны время старта системы, продолжительность её работы, количество активных пользователей, а также данные о средней загруженности системы за прошедшие 1, 5 и 15 минут. Далее следует список активных пользователей и используемых ими командах/процессах. Более подробно о работе команды «w» можно узнать на страницах интерактивного руководства, используя команду man w.
Заключение
В заключение стоит еще раз отметить, насколько легко при помощи простых команд можно получить подробное представление о пользовательской среде системы. При этом составить картину о действиях самих пользователей в данный момент времени. А также определить принадлежность групп и учётных записей. Важно понимать, что без умения находить информацию о пользователях нереально полноценно и гибко ими управлять. Что является важнейшей частью системного администрирования.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Похожие записи:
Как посмотреть список групп в Linux
Операционная система Linux – весьма продуманная и грамотная система. Во всех современных устройствах этого «семейства» пользователь может обнаружить основную группу и n-ое количество добавочных групп (их число варьируется и не является константным). Для чего они необходимы на практике? Дополнительные группы обеспечивают доступ к определенным файлам в системе компьютера (иными словами, делают это выборочно), но не дают каждому пользователю прав владельца. То есть, доступ ко всем остальным файлам остается ограниченным. Удачное решение, не правда ли? Пользователю могут быть предоставлены только те файлы, которые способствуют стандартной оптимизации работы, но при всем при этом он не имеет возможности залезть в чужие данные, чтобы внести туда свои коррективы. Из этого можно сделать вывод, что вопрос безопасности и конфиденциальности всех пользователей одного устройства, функционирующего на операционной системе Linux, соблюден на наивысшем уровне. Чтобы эффективно управлять системой, понадобятся определенные навыки системного администрирования. На словах это звучит несколько сложно, но после прочтения этой статьи вы убедитесь в обратном положении вещей, и поймете, насколько быстро и легко можно получить обширное представление о пользовательской среде устройства. Для этого достаточно разобраться с парочкой несложных команд, выучить их, и «на ура» бороздить просторы системы. Из данной статьи вы узнаете, как посмотреть список групп пользователя Линукс. Разумеется, мы предлагаем вашему вниманию несколько альтернативных вариантов поиска нужной информации. Вам остается лишь выбрать наиболее удобный метод, хотя каждый из них будет понятен даже неопытному владельцу ПК.
Узнаем через команду id
Чтобы найти всю необходимую информацию о пользователях устройства, нужно действовать по старинке. То есть, ввести специальную команду и дождаться соответствующего отклика. На деле это будет выглядеть следующим образом: $ id Для просмотра списка групп только текущего пользователя нужно применить опцию -G. С ней изначальный вариант потерпит соответствующие видоизменения: $ id -G Просто использовать один лишь аргумент -G неудобно, так как вывод показывает идентификаторы групп, человеку их читать сложно, поэтомы чтобы ознакомиться с наименованиями наличествующих групп, будем использовать дополнительную опцию «n». Для выполнения этой опции нужны дополнительные права. # id -Gn Иногда появляется необходимость ознакомиться со списком групп другого пользователя системы Linux. Чтобы осуществить задуманное, нужно знать его имя, и ввести эти данные в виде добавочной приставки к уже хорошо известной команде: # id -Gn имя_пользователя Для примера, узнаем список групп пользователя «ya». # id -Gn ya
Узнаем через команду groups
А теперь разберемся со вторым способом просмотра информации на устройстве с операционной системой Линукс. Как и всегда, нужные данные будут получены при помощи специальной команды. Она выглядит следующим образом: $ groups Чтобы посмотреть, какая группа принадлежит конкретному пользователю системы, необходимо указать его имя в виде приставки в исходном варианте команды. Что мы получаем: $ groups имя_пользователя Узнаем список групп у пользователя ya. $ groups ya
Хотим обратить ваше внимание на один важный момент: если не прописывать имя другого пользователя в командной строке, система автоматически применит имя текущего пользователя (то есть, ваше имя), ведь устройство определяет того, от кого исходит данный запрос.
Это происходит по умолчанию, и объясняется тем, что утилита с одноименным названием groups запускается в обоих режимах (с указанием имени/без указания имени пользователя). С её помощью можно получить общие данные о пользователях различных категорий: root, системные пользователи и обычные пользователи. Юзер системы может состоять сразу в нескольких группах – это весьма распространенное явление, и удивляться здесь нечему. Эти данные также могут пригодиться в определенных ситуациях, связанных с управлением системой. Представим, что вы оказались именно в такой ситуации. Давайте разберемся, как ознакомиться с нужной информацией. Команда для подсчета количества групп пользователя выглядит следующим образом: $ groups | wc -w
Заключение
В этой статье представлено несколько стандартных команд, которые позволяют приблизить решение той или иной проблемы. Но ведь не практике все происходит гораздо проще. Пользователь будет действовать ситуационно, а значит, использовать одну конкретную команду (в крайнем случае – несколько базовых команд по очереди). Обе рассматриваемые команды работают по схожему принципу. Различий в них мало, и они незначительные. Но, возможно, кому-то удобнее пойти именно этим путем. Теперь понимаете, насколько всё элементарно? Всего пару кликов, и картина полностью проясняется. Чтобы довести управление системой до автоматизма, нужно лишь подробнее изучить некоторые её параметры, и четко понимать свои цели.
Список групп пользователя Linux
В операционных системах семейства Linux у пользователя есть основная группа, а также определённое количество дополнительных групп. Это удачное, стратегически продуманное решение. С помощью этих групп можно давать пользователю доступ к нужным файлам в системе, не давая ему прав владельца этими файлами и не открывая для них общий доступ.
Более подробно про использование групп читайте в статье группы в Linux, а в этой заметке мы поговорим о том, как посмотреть список групп пользователя Linux.
Список групп пользователя Linux
Вы можете посмотреть список групп пользователя Linux двумя основными способами. Это команда id, которую мы уже разбирали в статье о том, как узнать id пользователя Linux, и команда groups. Чтобы вывести всю информацию о пользователе, используйте id:
Чтобы вывести только список групп текущего пользователя, необходимо использовать опцию -G:
Команда выводит идентификаторы групп, если вы хотите получить их имена, то необходимо добавить опцию -n:
Если надо узнать список групп для определённого пользователя, просто передайте его имя в качестве параметра:
Следующий вариант просмотра списка групп — команда groups:
И точно также можно узнать группу пользователя Linux, передав его имя команде:
Ещё можно посчитать количество групп, в которых состоит пользователь Linux:
Выводы
Как видите, всё очень просто. Вы можете буквально с помощью одной команды посмотреть группы пользователей Linux, причём не только для текущего пользователя, а для всех, кто вас интересует. Если у вас остались вопросы, спрашивайте в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.