Поиск по сайту:

И при железных дорогах лучше сохранять двуколку (К. Прутков).

Как использовать команду id в Linux. 5 полезных примеров3 мин для чтения

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 5,00 из 5)
Загрузка...
28 июля 2020
Как использовать команду id в Linux. 5 полезных примеров
Команда id в Linux используется для отображения реального и эффективного идентификатора пользователя и идентификатора группы пользователя.

В этой статье мы покажем вам, как использовать команду id в Linux, с некоторыми из наиболее распространенных и полезных примеров.

 

Команда id в Linux

Это синтаксис команды id:

id [options] [username]

 

Если вы не предоставите имя пользователя, команда отобразит сведения о текущем вошедшем в систему пользователе.

id

 

Вот вывод, который он отображал для нас в Ubuntu Linux.

destroyer@andreyex:~$ id
uid=1000(destroyer) gid=1000(destroyer) groups=1000(destroyer),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),119(lpadmin),130(lxd),131(sambashare)

 

В приведенном выше выводе пользователь destroyer имеет uid 1000 и gid 1000. Это основная группа, к которой пользователь destroyer относится по умолчанию.

Кроме того, пользователь destroyer также является членом некоторых других групп, и эти группы также отображаются в выходных данных.

 

Примеры команды id

Вот наиболее распространенные параметры для команды id:

вариант Описание
-u Распечатать эффективный идентификатор пользователя
-g Распечатать эффективный идентификатор группы
-G Распечатать идентификаторы всех групп, к которым принадлежит пользователь
-n Напечатайте имена вместо идентификаторов (должны сочетаться с -u, -g или -G)
-r Напечатайте реальный идентификатор вместо эффективных идентификаторов (должен сочетаться с -u, -g или -G)

 

Реальный против Эффективного идентификатора пользователя и группы?

Это может сбить вас с толку. Когда создается пользователь, ему дается имя пользователя, идентификатор пользователя (uid), группа по умолчанию, а идентификатор этой группы по умолчанию – это gid для этого пользователя. Это «реальный» идентификатор пользователя и группы.

Поскольку в Linux процессы могут выполняться как другие пользователи и группы, существует также второй набор идентификаторов, называемый эффективными идентификаторами.

В большинстве случаев действительные и эффективные идентификаторы UID и GID совпадают. Но бывают ситуации, когда обычный пользователь должен изменить привилегированный файл. Здесь используется концепция эффективного идентификатора. Наиболее распространенный пример – использование команды passwd для изменения пароля, который изменяет файл /etc/passwd, принадлежащий root.

Читать  Выражение последовательности в Bash (Диапазон)

 

1. Распечатать UID и GID определенного пользователя

Чтобы распечатать uid и gid и все другие идентификаторы группы пользователя, вам просто нужно указать имя пользователя:

id username

 

Вы можете перечислить всех пользователей в вашей системе Linux, чтобы получить желаемое имя пользователя.

 

2. Распечатайте только UID пользователя

Вы можете использовать -uопцию для печати UID в Linux. Как упоминалось ранее, если вы пропустите имя пользователя, в нем отобразится информация о вошедшем в систему пользователе.

id -u userame

 

Имейте в виду, что он отображает только UID, числовое значение, а не имя.

destroyer@andreyex:~$ id -u
1000

 

3. Распечатайте только GID пользователя

Точно так же вы можете использовать опцию -gдля печати GID пользователя. Когда мы говорим GID, это числовой идентификатор группы по умолчанию, к которой принадлежит пользователь.

id -g username

 

Опять же, он будет отображать только числовой идентификатор группы.

destroyer@andreyex:~$ id -g nobody 
65534

 

4. Распечатайте идентификаторы всех других групп, к которым принадлежит пользователь

Пользователь может принадлежать к нескольким группам. Это основная особенность файловой системы Linux. Вы можете использовать команду usermod и добавить ее в группу sudo, чтобы предоставить ей привилегии root.

Вы можете использовать опцию -G для отображения идентификаторов всех групп, к которым принадлежит пользователь.

id -G username

 

Это также отображает только идентификатор.

destroyer@andreyex:~$ id -G destroyer
1000 4 24 27 30 46 119 130 131

 

5. Напечатайте имена вместо числовых идентификаторов

Только числовые идентификаторы могут сбивать с толку. Если вы хотите, чтобы имена, вы можете комбинировать -nопцию -u, -g или -G для отображения имен.

Например, если вы хотите отобразить все группы, к которым принадлежит пользователь, вы можете использовать его следующим образом:

id -nG username

 

Если мы используем предыдущий пример с параметром -n, вот что он показывает:

destroyer@andreyex:~$ id -nG destroyer
destroyer adm cdrom sudo dip plugdev lpadmin lxd sambashare

 

Читать  Проблемы с практикой Python. Приготовьтесь к следующему собеседованию. Шифр Цезаря. Часть 2

Бонусный совет: распечатайте настоящие удостоверения личности

Все приведенные выше примеры отображают действующие идентификаторы. Почти все время это будет настоящий ID.

Тем не менее, если вы хотите убедиться, чтобы получить реальный ID, вы можете комбинировать вариант -r с -u, -g или -G.

Это можно использовать так:

id -ru username

 

Хорошо! Мы думаем, что вы знаете достаточно о команде id сейчас. Если у вас есть вопросы или предложения, не стесняйтесь оставлять комментарии.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Читайте также

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close