
id — это утилита командной строки, которая выводит реальные и эффективные идентификаторы пользователей и групп.
Использование id Команда
Синтаксис команды id следующий:
id [ OPTIONS ] [ USERNAME ]
Если имя пользователя не указано, команда id отображает информацию о текущем вошедшем в систему пользователе.
При вызове без параметров id выводит реальный идентификатор пользователя ( uid ), реальный идентификатор основной группы пользователя ( gid ) и реальные идентификаторы дополнительных групп ( groups ), к которым принадлежит пользователь. Эффективный идентификатор пользователя, идентификатор группы и идентификаторы дополнительных групп выводятся только в том случае, если они отличаются от реальных.
id
uid=1000(linuxize) gid=1000(linuxize) groups=1000(linuxize),4(adm),27(sudo),998(docker)
Если SELinux включен, то id также выводит контекст безопасности пользователя ( context ):
uid=1000(linuxize) gid=1000(linuxize) groups=1000(linuxize) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
Чтобы получить информацию о другом пользователе, передайте имя пользователя или идентификатор пользователя в качестве аргумента команды id :
id mark
uid=1001(mark) gid=1001(mark) groups=1001(mark),998(docker)
Если в системе существует пользователь с именем, совпадающим с предоставленным идентификатором, приоритет имеет поиск по имени. При использовании идентификатора пользователя в качестве аргумента добавьте к нему символ + , чтобы избежать интерпретации идентификатора как имени.
Например, если у вас есть пользователь с именем 1010 и другой пользователь с ID 1010 , то при вводе id 1010 команда отобразит информацию о пользователе с именем 1010 Чтобы получить информацию о пользователе с ID 1010 , введите id +1010 .
Параметры команды id
Команда id принимает несколько параметров, позволяющих отображать только определённую информацию. Это полезно при использовании id в скриптах оболочки.
Чтобы вывести только эффективный идентификатор пользователя, используйте опцию -u ( --user ):
id -u
1000
Параметр -g ( --group ) указывает id выводить только эффективный идентификатор группы:
id -g
1000 4 27 998
Используйте опцию -G ( --groups ), чтобы вывести эффективные идентификаторы всех групп, к которым принадлежит пользователь :
id -G
1000
Для печати имён вместо чисел используйте опцию -n , --name . Эта опция может использоваться только в сочетании с опциями -u , -g и -G .
id -un
linuxize
Выполнение команды id с параметрами -un дает тот же результат, что и выполнение whoami , а вывод id -Gn эквивалентен выводу команды groups .
Опцию -r ( --real ) можно использовать в сочетании с -u , -g и -G для вывода реальных, а не эффективных значений:
id -ur
Чтобы вывести только контекст безопасности процесса, который обычно является контекстом безопасности пользователя, используйте опцию -Z ( --context ):
id -Z
unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
Если SELinux отключен , id выводит сообщение об ошибке:
id: --context (-Z) works only on an SELinux-enabled kernel
Опция -z ( --zero ) указывает id разграничивать выходные элементы символом NUL, а не пробелом:
id -znG
linuxizeadmsudodocker
Это может быть полезно при передаче вывода команде, которая может анализировать переводы строк.
Заключение
Команда id выводит информацию о заданном пользователе или о текущем вошедшем в систему пользователе, если в качестве аргумента не указано имя пользователя или идентификатор.
Если у вас есть вопросы, не стесняйтесь оставлять комментарии.
Связанные руководства