Введение
Операционная система Linux использует надежную систему разрешений, основанную на идентификаторах пользователей и групп. Понимание того, как просматривать и интерпретировать эти идентификаторы, имеет основополагающее значение для администрирования системы и управления безопасностью. Эта лабораторная работа посвящена освоению команды id, мощной утилиты для отображения информации о пользователях и группах в Linux.
Изучив использование команды id, вы сможете идентифицировать себя в системе, группы, к которым вы принадлежите, и проверять разрешения для других пользователей. Эти навыки составляют основу для более продвинутых концепций безопасности Linux и управления разрешениями.
Отображение идентификатора пользователя
В Linux у каждого пользователя есть уникальный идентификатор пользователя (UID) и он принадлежит как минимум к одной группе с идентификатором группы (GID). В этом шаге вы узнаете, как отобразить информацию о вашей собственной идентификации пользователя.
Сначала откройте свой терминал и убедитесь, что вы находитесь в каталоге проекта:
cd ~/project
Теперь используйте команду id без каких-либо аргументов, чтобы отобразить информацию о вашей собственной идентификации пользователя:
id
Эта команда отображает ваш текущий идентификатор пользователя (UID), ваш основной идентификатор группы (GID) и любые дополнительные группы, к которым вы принадлежите. Вывод будет выглядеть примерно так:
uid=5000(labex) gid=5000(labex) groups=5000(labex),27(sudo),121(ssl-cert),5002(public)
Давайте разберем этот вывод:
uid=5000(labex)- Это показывает ваш идентификатор пользователя (5000) и имя пользователя (labex)gid=5000(labex)- Это показывает ваш основной идентификатор группы (5000) и имя группы (labex)groups=5000(labex),27(sudo),121(ssl-cert),5002(public)- Это перечисляет все группы, к которым вы принадлежите, включая их идентификаторы и имена
Идентификатор пользователя (UID) и идентификатор группы (GID) - это числовые значения, используемые системой Linux внутри для отслеживания разрешений. Имена в скобках являются удобочитаемыми эквивалентами этих числовых идентификаторов.
Проверка идентификатора другого пользователя
В Linux системным администраторам часто необходимо проверять идентификацию и членство в группах других пользователей. В этом шаге вы узнаете, как просмотреть информацию об идентификации другого пользователя.
Скрипт установки создал другого пользователя с именем npc для этого упражнения. Вы можете просмотреть информацию об идентификации этого пользователя, указав имя пользователя в качестве аргумента для команды id:
id npc
Вывод будет выглядеть примерно так:
uid=5001(npc) gid=5001(npc) groups=5001(npc)
Это показывает, что пользователь npc имеет:
- Идентификатор пользователя (UID): 5001
- Основной идентификатор группы (GID): 5001
- Членство в группе: только основная группа
npc
Обратите внимание, что этот пользователь принадлежит к меньшему количеству групп, чем ваша учетная запись. В Linux обычные пользователи часто имеют ограниченное членство в группах по сравнению с административными пользователями. Количество групп, к которым принадлежит пользователь, напрямую влияет на то, к каким файлам он может получить доступ и какие операции он может выполнять в системе.
Использование опций команды ID
Команда id поставляется с несколькими полезными опциями, которые позволяют отображать определенные части информации об идентификации пользователя. В этом шаге вы изучите эти опции.
Отображение только идентификатора пользователя
Чтобы отобразить только идентификатор пользователя (UID) без какой-либо другой информации, используйте опцию -u:
id -u
Вывод будет просто числом, например:
5000
Это ваш числовой идентификатор пользователя без какого-либо форматирования или дополнительной информации.
Отображение только основного идентификатора группы
Аналогично, чтобы отобразить только ваш основной идентификатор группы (GID), используйте опцию -g:
id -g
Вывод будет числом, представляющим ваш основной идентификатор группы:
5000
Отображение имен вместо чисел
Вы можете объединить вышеуказанные опции с опцией -n, чтобы отображать имена вместо числовых идентификаторов:
id -un
Это выведет ваше имя пользователя:
labex
Аналогично, чтобы отобразить имя вашей основной группы:
id -gn
Вывод:
labex
Эти опции особенно полезны в shell-скриптах, где вам необходимо захватывать и использовать определенную информацию об идентификации программно.
Изучение членства в группах
В Linux права доступа пользователя часто определяются членством в группах. В этом шаге вы узнаете, как просматривать и понимать членство в группах более подробно.
Перечисление всех групп, в которых вы состоите
Вы можете использовать команду groups для отображения всех групп, в которых состоит ваш пользователь:
groups
Вывод будет списком имен групп:
labex sudo ssl-cert public
Это более простой вид по сравнению с командой id, поскольку он показывает только имена групп без их идентификаторов.
Отображение только информации о группах с ID
В качестве альтернативы вы можете использовать команду id с опцией -G для отображения всех идентификаторов групп:
id -G
Вывод:
5000 27 121 5002
И с опцией -Gn для отображения всех имен групп:
id -Gn
Вывод:
labex sudo ssl-cert public
Проверка членства в группах для другого пользователя
Вы также можете проверить, к каким группам принадлежит другой пользователь:
groups npc
Вывод:
npc : npc
Или с помощью команды id:
id -Gn npc
Вывод:
npc
Понимание членства в группах имеет решающее значение для администрирования системы Linux, поскольку оно определяет права доступа к файлам и другие системные привилегии.
Резюме
В этой лабораторной работе вы узнали, как использовать команду id и связанные с ней утилиты для отображения и интерпретации информации о пользователях и группах в Linux. Теперь вы знаете, как:
- Отображать собственную информацию о пользователе и группе с помощью команды
id - Проверять информацию об идентификации других пользователей
- Использовать различные опции с командой
idдля отображения определенных частей информации об идентификации - Изучать членство в группах с помощью команд
idиgroups
Эти навыки составляют важную основу для понимания управления пользователями и разрешениями в Linux. Продолжая свое путешествие в Linux, вы обнаружите, что эти команды неоценимы для устранения проблем с разрешениями, настройки доступа к файлам и управления учетными записями пользователей.



