Как просмотреть информацию о пользователе, такую как идентификатор и группу, в Linux

12 set 2022 2 min di lettura
Как просмотреть информацию о пользователе, такую как идентификатор и группу, в Linux
Indice dei contenuti

Введение

id — это утилита командной строки, которая печатает реальные и эффективные идентификаторы пользователей и групп.

Идентификатор синтаксиса команды

Синтаксис команды id следующий:

id [OPTIONS] [USERNAME]

Если имя пользователя не указано, команда id отображает информацию о текущем зарегистрированном пользователе.

При вызове без каких-либо параметров id выводит реальный идентификатор пользователя ( uid ), реальный идентификатор основной группы пользователя ( gid ) и реальные идентификаторы дополнительных групп ( groups ), к которым принадлежит пользователь. Фактический идентификатор пользователя, идентификатор группы и дополнительные идентификаторы групп печатаются только в том случае, если они отличаются от реальных.

id
uid=1000(noviello) gid=1000(noviello) groups=1000(noviello),4(adm),27(sudo),998(docker)

Если SELinux включен, id также выводит контекст безопасности пользователя ( context ):

uid=1000(noviello) gid=1000(noviello) groups=1000(noviello) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

Чтобы получить информацию о другом пользователе, передайте имя пользователя или идентификатор пользователя в качестве аргумента команде id:

id alice
uid=1000(alice) gid=1000(alice) groups=1000(alice)

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

Например, если у вас есть пользователь с именем 1010 и другой пользователь с идентификатором 1010, ввод команды с id 1010 отобразит информацию о пользователе с именем 1010. Чтобы получить информацию о пользователе с идентификатором 1010, введите id +1010.

Параметры команды идентификатора

Команда 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
noviello

Выполнение команды id с параметрами -un дает тот же вывод, что и whoami, а вывод id -Gn эквивалентен выводу команды groups.

Параметр -r, ( --real ) можно использовать в сочетании с -u, -g и -G для печати true вместо фактических значений:

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
novielloadmsudodocker

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

Вывод

Команда id выводит информацию о конкретном пользователе или о пользователе, вошедшем в систему в данный момент, если в качестве аргумента не указано имя пользователя или идентификатор.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.