- UID и GID: что это такое и какую роли они играют в дистрибутивах Linux
- UID или User ID
- GID или Group ID
- Как можно узнать UID и GID?
- Можно ли изменить UID и GID?
- Подведем итоги
- 📑 Команда id — найти UID пользователя или GID
- синтаксис команды id
- Показать свой собственный UID и GID
- Как найти UID конкретного пользователя?
- Как найти GID конкретного пользователя?
- Как увидеть UID и все группы, связанные с именем пользователя?
- Как узнать все группы, к которым принадлежит пользователь…
- Отображать имя вместо UID / GID
- Параметры команды id
- Смотрите также
- Как узнать id пользователя Linux
- Как узнать id пользователя в Linux
- Выводы
UID и GID: что это такое и какую роли они играют в дистрибутивах Linux
Если вы откроете терминал и введете там команду stat, указав после нее имя файла или папки, то в «выхлопе» получите такую информацию об объекте, как размер, права доступа, время создания или изменения.
Среди всего прочего в полученной информации будут указаны такие параметры, как UID и GID. Если о правах доступа, способах создания и изменения файлов и папок мы говорили в предыдущих заметках на канале, то вот про UID и GID поговорим в сегодняшнем материале.
Информация будет изложена в простом и понятном виде, для того, чтобы суть мог понять каждый, кто интересуется тем, как работают дистрибутивы Linux.
UID или User ID
Это уникальный идентификатор, назначенный каждому пользователю в системе. Он используется для определения тех, кто владеет файлами и каталогами и какие права доступа у них есть. UID может быть любым числом в диапазоне от 0 до 65535. В большинстве дистрибутивов Linux UID 0 зарезервирован для суперпользователя (root).
GID или Group ID
Это идентификатор группы, назначенный каждой группе пользователей в системе. Он используется для управления доступом к файлам и каталогам, к которым имеют доступ несколько пользователей. Каждый пользователь может принадлежать к нескольким группам, и каждая группа имеет свой GID. Как и UID, GID может быть любым числом в диапазоне от 0 до 65535.
Как можно узнать UID и GID?
UID и GID хранятся в системных файлах, таких как /etc/passwd и /etc/group. Чтобы посмотреть содержимое этих файл можно воспользоваться командой cat, указав после путь до нужного файла.
Вторым способом узнать эти идентификаторы является использование команды id с указанием имени пользователя после.
Когда пользователь входит в систему, ему назначается его UID и GID, и эти идентификаторы используются для определения его прав доступа к файлам и каталогам в системе.
Можно ли изменить UID и GID?
UID и GID могут быть изменены администратором системы. Это может потребоваться, например, для создания нового пользователя или группы, или для изменения прав доступа к существующим файлам и каталогам. Для изменения UID пользователя используйте команду chown со следующим синтаксисом:
Например, чтобы изменить UID пользователя «john» на 1001, выполните следующую команду:
Для изменения GID группы используйте команду chgrp со следующим синтаксисом:
Например, чтобы изменить GID группы «developers» на 1002, выполните следующую команду:
sudo chgrp 1002 developers
Подведем итоги
Поскольку в этой статье мы коснулись темы того, что такое UID и GID, то разумнее будет в следующем материале поговорить про то, как можно создавать новых пользователей и группы. И тогда же коснемся того, могут ли разные пользователи/группы иметь одинаковый UID/GID.
Чтобы не пропустить этот материал и множество других и интересных заметок, лучше подписаться на канал, если вы еще этого не сделали.
📑 Команда id — найти UID пользователя или GID
Чтобы найти UID пользователя (ID пользователя) или GID (идентификатор группы) и другую информацию в Linux/Unix-подобных операционных системах, используйте команду id.
Эта команда полезна для поиска следующей информации:
- Получить имя пользователя и реальный идентификатор пользователя
- Найти UID конкретного пользователя
- Перечислите все группы, к которым принадлежит пользователь
- Показать UID и все группы, связанные с пользователем
- Отображение контекста безопасности текущего пользователя
- Эффективное имя пользователя Linux или Unix и эффективный идентификатор пользователя (UID)
- Имя действующей группы пользователей Linux или Unix и идентификатор эффективной группы (GID)
Отображает системные идентификаторы указанного пользователя.
синтаксис команды id
id id [UserNameHere] id [параметры] id [параметры] [имя_пользователя]
По умолчанию команда id показывает имена пользователей и групп и числовые идентификаторы вызывающего процесса, то есть текущего пользователя, который запускает команду id на экране. Если имя пользователя или идентификатор пользователя ([UserNameHere]) указаны в командной строке, отображаются идентификаторы пользователя и группы этого пользователя.
Показать свой собственный UID и GID
uid=1000(vasia) gid=1000(vasia) группы=1000(vasia),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),130(sambashare),132(libvirtd),134(lxd)
Как найти UID конкретного пользователя?
В этом примере найдите UID пользователя vasia, введите:
Как найти GID конкретного пользователя?
В этом примере найдите GID пользователя vasia, запустите:
Как увидеть UID и все группы, связанные с именем пользователя?
В этом примере найдите UID и все группы, связанные с пользователем с именем «root», введите:
uid=0(root) gid=0(root) группы=0(root)
Как узнать все группы, к которым принадлежит пользователь…
В этом примере отобразите UID и все группы, связанные (вторичные группы) с пользователем с именем «vasia», запустите:
1000 20 12 61 79 80 81 98 33 100 204 398 399
Отображать имя вместо UID / GID
По умолчанию команда id отображает число для опций -G, -g и -u. Вы можете заставить команду id отображать имя UID или GID вместо номера для опций -G, -g и -u, передав опцию -n следующим образом:
id -ng id -nu id -nG id -nG vasia
vasia adm cdrom sudo dip plugdev lpadmin sambashare libvirtd lxd
Как отобразить реальный идентификатор вместо эффективного идентификатора для указанного пользователя?
Вы можете показать действительный идентификатор для параметров -g, -G и -u вместо эффективного идентификатора, передав опцию -r:
id -r -g id -r -u ### [NOTE]########################### ### -r and -G only works on Linux ### ##################################### id -r -G id -r -u vasia
Параметры команды id
Опция | Назначение | OS |
-g | Показать только эффективный идентификатор группы | ALL |
-G | Показать все идентификаторы группы | ALL |
-u | Показать только эффективный идентификатор пользователя | ALL |
-n | Показать имя вместо числа, для -u или -g | ALL |
-r | Показать действительный идентификатор вместо действующего, с -u или -g | ALL |
-Z | Показать только контекст безопасности текущего пользователя SELinux | SELinux |
-A | Показать идентификатор пользователя аудита процесса и другие свойства аудита процесса | Только Unix-like. |
Смотрите также
man id — Страница руководства по команде id
- Методы монтирования дисков в Linux
- Введение в диспетчер логических томов (LVM)
- Локальное туннелирование с помощью SSH: несколько примеров
- Альтернативы SSH, которые в некоторых случаях лучше оригинала
- Полный набор лучших и современных консольных программ для Linux
- Установка ZoneMinder на Ubuntu 22.04 (Linux Mint 21) и nginx
- Устанавливаем GIMP в Ubuntu 22.04 (Linux Mint 21)
- Устанавливаем qBittorrent в Linux Ubuntu/Mint
- Исправляем ошибку — network unreachable resolving ‘./NS/IN’: 2001:503:c27::2:30#53
- Установка remmina из ppa в Ubuntu 22.04 или Mint 21
- Исправляем: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg)
- Что такое зомби-процесс в Linux?
- Хитрости командной строки Bash, которые помогут вам работать быстрее
- Команда ls в Linux — подробно и с примерами
- Команда mkdir в Linux — подробно и с примерами
- Список непечатаемых символов Linux, MacOS или Windows
- Команда chmod в Linux — подробно и с примерами
- Команда cat и примеры её использования в Linux
- Как установить приложение Yarock Music Player
- Запуск нескольких команд Linux одной составной командой
- Файловый менеджер nnn
- Версия системы и версия ядра Ubuntu/Mint
- Запуск команд на удаленном сервере через SSH
- Цветовые схемы и внешний вид MC (midnight commander)
- Переключение кодировок в MC
- Шпаргалка по горячим клавишам для файловых панелей MC (midnight commander)
- Ошибка NO_PUBKEY. Как найти GPG-ключ и добавить его в базу apt системы Ubuntu
- Установка драйвера wifi Asus wl-167g v3 (rtl8192) для Ubuntu 16.04 и 18.04
- Как настроить wifi из командной строки в Ubuntu
- Изменение имени сетевого интерфейса в Ununtu/Mint
- nmon — удобный инструмент для мониторинга Linux систем
- Ошибка: 502 bad gateway — connect() to unix:/run/php/php-fpm.sock failed (11: Resource temporarily unavailable)
- Команда history или работа с историей введенных команд
- Шпаргалка по архиватору 7z (7-Zip) в Linux Ubuntu/Mint
- Преобразование видео от 1080p до 720p с наименьшими потерями с использованием ffmpeg
- Как посмотреть все доступные шрифты в терминале (CLI)?
- Команда id — найти UID пользователя или GID
- Лучшие рекомендации по повышению безопасности для серверов OpenSSH
- Разрешения файлов директории .SSH
- Настройка Nginx FastCGI Cache для сокращения времени отклика сервера WordPress
- Как получить реальный IP-адрес пользователя в nginx за обратным прокси-сервером nginx
- Чем отличается прямой прокси от обратного прокси
- Руководство по iptables (Iptables Tutorial 1.1.19)
- Настройка автозапуска скриптов в Linux Ubuntu/Mint
- Устанавливаем оболочку bash про умолчанию
- SOCS5 прокси сервер DANTE — установка и настройка
- Сервис online настройки параметров сервера nginx
- nmblookup — аналог команды Windows nbtstat для Linux.
- Inxi — программа вывода информации о системе и железе в Linux
- dnstop — мониторинг и анализатор DNS-трафика
Как узнать id пользователя Linux
Иногда возникает необходимость узнать id пользователя Linux. Это может понадобиться, если вы хотите вручную добавить группу для пользователя или вам нужно выполнить другие операции с файлами /etc/passwd или /etc/shadow.
В этой небольшой заметке мы поговорим о том, как посмотреть id пользователя с помощью различных команд в Linux.
Как узнать id пользователя в Linux
Самый простой способ посмотреть идентификатор текущего пользователя — использовать команду id, она выводит не только сам UID, но и идентификатор группы пользователя, а также основные группы этого пользователя:
Первым выводится именно id пользовтеля. Если вам нужно узнать информацию о другом пользователе, вы можете передать его имя в параметры утилиты:
Когда необходимо вывести только id пользователя:
Если вам надо узнать только id группы определенного пользователя, то используйте опцию -g:
Есть ещё несколько способов посмотреть id. Например, для текущего пользователя его можно найти в переменной окружения UID:
Ещё один вариант — утилита getent:
getent passwd имя_пользователя
Или смотрим содержимое файла /etc/passwd с помощью команды grep:
grep имя_пользователя /etc/passwd
Здесь первый цифровой параметр — это сам id, а второй, который расположен за двоеточием, — это GID.
Выводы
В этой небольшой статье мы рассмотрели, как узнать id пользователя Linux. Если у вас остались вопросы, спрашивайте в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.