На днях один из пользователей Linux спросил меня, как найти количество суперпользователей (пользователей, имеющих доступ к sudo), которые есть у меня на моем Linux-сервере?
Хороший вопрос, но у меня не было ответа. ЛОЛ!
Итак, я сделал быстрый поиск в Google.
К моему удивлению, это не так сложно. Это всего лишь однострочная команда.
Почему я не знал этого простого трюка?
Для тех, кто задается вопросом, как найти всех пользователей sudo или суперпользователей в вашей системе Linux, читайте дальше.
Вы можете утверждать, что хороший администратор Linux должен знать, сколько суперпользователей и обычных пользователей есть в системе, которую он управляет. Ты прав!
Тем не менее, есть вероятность, что иногда нам нужно предоставить временный доступ к суду нормальному пользователю для установки программного обеспечения или выполнения определенной административной задачи самостоятельно.
Со временем мы можем забыть отозвать доступ к sudo.
Таким образом, это хорошая практика, чтобы знать, сколько супер пользователей в вашей системе время от времени.
Если есть какой-либо забытый или нежелательный доступ к суду, вы можете просто отменить их.
Содержание
- Найти всех пользователей Sudo в Linux-системе
- Пример вывода
- Пример вывода
- Удалить привилегии пользователя sudo
Найти всех пользователей Sudo в Linux-системе
Сначала перечислим всех пользователей в системе.
Для этого запустите:
# awk -F':' '{ print $1}' /etc/passwd
Пример вывода моей системы Ubuntu:
root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
proxy
www-data
backup
list
irc
gnats
nobody
systemd-timesync
systemd-network
systemd-resolve
systemd-bus-proxy
syslog
_apt
lxd
messagebus
uuidd
dnsmasq
sshd
sk
senthil
kumar
ostechnix
Вы также можете использовать следующую команду для перечисления всех пользователей:
# compgen -u
Среди всех пользователей мы найдем только пользователей sudo или super в нашей Linux-системе.
# grep '^ sudo:. * $' / etc / group | cut -d: -f4 sк, itsecforu
Кроме того, вы можете использовать команду «getent» вместо «grep», чтобы получить тот же результат.
# getent group sudo | cut -d: -f4 sк, itsecforu
Как видно из вышесказанного, «sk» и «itsecforu» являются пользователями sudo в моей системе.
В приведенных выше примерах мы перечислили всех пользователей sudo.
Возможно, вам захочется узнать, есть ли у определенного пользователя привилегии sudo или нет.
# sudo -l -U sk
Пример вывода
Matching Defaults entries for sk on ubuntuserver: env_reset, mail_badpass, secure_path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin User sk may run the following commands on ubuntuserver: (ALL : ALL) ALL
Как видите, пользователь с именем «sk» может выполнять все команды.
Итак, он в группе судо.
Давайте проверим другого пользователя.
# sudo -l -U senthil
Пример вывода
User senthil is not allowed to run sudo on ubuntuserver. Oops! The user “senthil” is not allowed to run sudo, so he is just a normal user.
Мы также можем найти, имеет ли пользователь доступ к sudo, выполнив следующую команду:
# sudo -nv
Если вы ничего не получаете в качестве вывода, пользователь все равно имеет доступ к sudo.
Если вы видите вывод, как показано ниже, пользователь не имеет доступа к sudo.
# sudo -nv Sorry, user senthil may not run sudo on ubuntuserver.
Удалить привилегии пользователя sudo
Теперь вы знаете пользователей sudo в вашей Linux-системе. Возможно, вы не захотите получить доступ к некоторым пользователям.
Если вы хотите удалить доступ к sudo для определенного пользователя, вы можете просто запустить:
$ sudo deluser <имя_пользователя> sudo
Пример:
# sudo deluser itsecforu sudo
Пример вывода:
Removing user `itsecforu' from group `sudo' ... Done.
Вышеупомянутая команда удалит пользователя с именем «itsecforu» из группы «sudo», но не из системы.
Другими словами, пользователь «itsecforu» теперь станет обычным пользователем.
Кроме того, вы можете использовать следующую команду для отмены доступа sudo от пользователя:
# sudo gpasswd -d itsecforu sudo
Будьте внимательны при удалении пользователей из группы sudo.
Не удаляйте действительного администратора из группы «sudo».
Убедитесь, что пользователь «itsecforu» действительно удален из группы sudo, используя команду:
# sudo -l -U itsecforu
Пользователь «itsecforu» не может запускать sudo на ubuntuserver.
Да, пользователь«itsecforu»» был удален из группы sudo, и он не может выполнять какие-либо административные задачи.
И это все на данный момент. Надеюсь, вы найдете это полезным.
У нас есть пара серверов, которыми управляет большая группа администраторов. Они обычно входят в систему как пользователи сервиса (скажем, hudson
), а затем переключаются на root
чтобы сделать небольшое исправление. Это означает, что мы часто не можем отобразить изменения, внесенные в человека.
У кого-нибудь есть скрипт для Unix/Linux, который может сказать мне, какой пользователь вошел в систему как root? Вход в систему может быть со всех компьютеров в локальной сети. Удаленный доступ извне локальной сети как root невозможен; Администраторы должны сначала войти в систему с пользователем локальной сети, а затем могут перейти в root (все они используют SSH).
То, что я хотел бы, является сценарием, который следует за удаленными входами в систему (в локальной сети) и печатает имя пользователя в течение определенного времени. Вы можете предположить, что скрипт может войти через ssh на любой компьютер в локальной сети с правами суперпользователя без запроса пароля.
Предыстория: у меня есть скрипт, который сохраняет резервные копии всех файлов, отредактированных пользователем root. Проблема состоит в том, чтобы выяснить, кто действительно внес изменения.
Безопасность не проблема; дело не в том, чтобы найти хакеров, которые могли очистить wtmp
, а в том, чтобы выяснить, кто допустил ошибку, чтобы оставить отзыв.
[РЕДАКТИРОВАТЬ] Некоторые указатели: last
команда помогает:
> last -t 20101029174200 root
root pts/26 :0.0 Wed Oct 20 15:36 - 15:03 (23:27)
wtmp begins Fri Oct 1 16:34:36 2010
Таким образом, root
был авторизован через pts/26
. Кто еще сидел на этом псевдо TTY?
> last -t 20101029174200 pts/26
adigulla pts/26 :0 Mon Oct 25 09:45 still logged in
adigulla pts/26 :0 Fri Oct 22 14:00 - 17:29 (03:29)
adigulla pts/26 :0 Thu Oct 21 15:04 - 16:05 (01:01)
root pts/26 :0.0 Wed Oct 20 15:36 - 15:03 (23:27)
adigulla pts/26 :0.0 Fri Oct 15 15:57 - 15:57 (00:00)
wtmp begins Fri Oct 1 16:34:36 2010
Хм … должно быть я. Так что я могу следить за изменениями пользователя на локальной машине. Если я войду в удаленную машину:
$ last -1 hudson
hudson pts/0 192.168.0.51 Fri Oct 29 17:52 still logged in
Таким образом я получаю PTY и IP-адрес, откуда я пришел. Как я могу сделать подключение с выхода last
для hudson
к пользователю на 192.168.0.51
?
[EDIT2] Также обратите внимание, что мы обычно меняем пользователя с помощью ssh
, а не sudo
или su
. Это позволяет осуществлять единый вход и избегать необходимости сообщать администраторам любые пароли. Если мы хотим предоставить / отозвать доступ к чему-либо, мы просто добавляем / удаляем открытый ключ из учетной записи службы. Я также знаю, что ssh регистрирует в syslog, но сообщения не говорят мне, какой пользователь переключился на root:
sshd[7460]: Accepted publickey for root from ::1 port 36689 ssh2
В дистрибутивах Linux пользовательские привилегии предоставляются путем открытия доступа к root. Наличие таких прав позволяет использовать функциональность операционной системы более широко и выполнять необходимые действия в корневом каталоге.
Давайте детально обсудим, что может суперпользователь в Linux, как настроить root и для чего нужна команда sudo.
Предназначение root-прав в Linux
Права обычного пользователя в Linux крайне ограничены. Он может управлять только своим каталогом и открывать для чтения определенные файлы из корня. Доступ для их изменения или установки программ отсутствует, что делает привилегии суперпользователя крайне важными при настройке ОС и решении разных проблем. Обычный пользователь ограничивается следующим набором прав:
- чтение, запись и изменение любых атрибутов пользовательской папки;
- то же самое и для каталога /tmp;
- выполнение программ в любом месте, где нет ограничений;
- чтение файлов с соответствующим атрибутом для всех пользователей.
При наличии рут-прав у юзера появляется гораздо больше возможностей и расширяются границы взаимодействия с операционной системой. Становятся доступными любые действия со всеми папками и файлами.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Безопасность использования прав суперпользователя
Если с предназначением root-прав в Linux все понятно, то вот к безопасности их использования есть вопросы. В основном, относится это к серверным машинам, поскольку риск взлома домашнего компьютера очень мал, да и кому нужны файлы обычного пользователя, чтобы ради этого затевать процедуру взлома. Если вы используете Linux как обычную операционную систему, работаете с документами и стандартными программами, используйте root для установки приложений и защиты системы от случайных изменений, которые могут внести другие пользователи компьютера.
С серверной частью все гораздо сложнее, поскольку рут как таковой не предоставляет полной защиты. Часто используемые пароли взламываются путем перебора или поиском бэкдора. Поэтому не стоит полагаться исключительно на защиту паролем, если вы владеете файлами сайтов или используете сервер для других целей. Займитесь настройкой файрвола, если это повысит уровень защиты.
Команда sudo и примеры ее использования
Команда sudo тесно связана с root в Linux, поскольку отвечает за передачу прав суперпользователя и позволяет от его имени выполнять команды в Терминале. Существует несколько ее вариаций, использующихся при разных обстоятельствах. Подходит эта команда как для выполнения всего одного действия, так и для передачи прав на всю текущую сессию.
Самый простой пример использования sudo – запуск программы от имени суперпользователя. Для этого вводится:
sudo program \ program – название приложения, которое вы хотите запустить
Еще sudo применяется для установки софта, команда в таком случае обретает вид:
sudo apt install program
Если же вы желаете использовать сразу несколько команд, например, введя sudo cat file.txt | grep text > file.txt, появится ошибка, поскольку при выполнении второй команды права суперпользователя отсутствуют, а значит, запись в файл невозможна. Решается такая ситуация добавлением sudo перед каждым выражением.
В следующем разделе статьи речь пойдет о передаче прав суперпользователя, что тоже реализуемо при помощи sudo. Я рассмотрю два полезных аргумента. Советую ознакомиться с ними, если хотите упростить выполнение действий через Терминал.
Переключение на суперпользователя
Еще раз уточню, что команда sudo идеально подходит для получения необходимых привилегий без переключения учетной записи. Ее можно использовать как для выполнения одного действия, так и нескольких. Если вы желаете временно получить рут-права через эту команду, введите sudo -s или sudo -i. В первом случае домашний каталог остается текущим, а во втором меняется на /root.
Примерно так же работает и команда su, но она обладает дополнительными аргументами, которые следует уточнить:
- -c – позволяет выполнить команду;
- -g – устанавливает группу для пользователя;
- -G – дополнительные группы для юзера;
- —, -l, —login – один из режимов входа, при котором происходит переключение домашнего каталога;
- -p – сохранение переменных окружения;
- -s – выбор оболочки для выхода.
Есть вариант выполнить вход в оболочку под суперпользователем, но он имеет свои неудобства. Он заключается в переключении в доступную виртуальную консоль, что осуществляется комбинацией Ctrl + Alt + F1-F6. Там понадобится ввести логин и пароль root для получения доступа. Главный недостаток этого метода – потеря возможности взаимодействия с графическим интерфейсом операционной системы.
Второй вариант – ввод такого же логина и пароля при входе через графическую форму авторизации. Так вы сразу получите доступ ко всем файлам, даже не надо будет вводить sudo. Однако неопытным пользователям такой метод не подходит, поскольку возникает риск удаления или изменения системных файлов, что иногда приводит к поломке ОС.
Вы уже сами решайте, какой вариант хотите использовать, и готовы ли смириться со всеми ограничениями и недостатками, которые накладывает каждый из них.
Предоставление и отзыв прав суперпользователя
Каждому пользователю в Linux можно предоставить root-права, добавив его в соответствующую группу. Точно так же их можно и отнять, если вдруг это понадобится. Рассмотрю три варианта действий.
Создание нового пользователя с root
Допустим, что вы, единственный юзер в Linux, хотите создать еще одну учетную запись с правами суперпользователя. В таком случае алгоритм действий обретет следующий вид:
- Откройте Терминал и введите команду sudo adduser user (user замените на нужное имя пользователя).
- В консоли появятся инструкции по созданию нового пользователя. Присвойте пароль и подтвердите действие, чтобы завершить создание.
- Добавьте новую учетную запись в группу sudo, введя sudo usermod -aG sudo user (user здесь тоже понадобится заменить).
- Проверьте выполненные действия, переключившись на новую учетную запись через su testuser. Для подтверждения введите пароль (при вводе символы не отображаются на экране).
- Выполните любую команду с sudo и убедитесь, что все прошло успешно.
Для существующей учетной записи
Если учетная запись уже добавлена, в консоли остается ввести только одну команду, чтобы добавить пользователя в группу sudo и разрешить ему получение рут-прав. Сама команда представлена ниже, вам остается только скопировать ее и поменять имя юзера.
sudo usermod -aG sudo user
Используйте предыдущую инструкцию для проверки внесенных изменений.
Откат прав суперпользователя
Если вдруг вы решили, что одна из учетных записей больше не должна состоять в группе sudo, отзовите права, введя команду:
sudo deluser user sudo
Измените user на необходимое имя. Можете переключиться на эту учетную запись и убедиться в том, что теперь команды с sudo она выполнять не может.
Это была вся основная информация о правах суперпользователя в Linux. Вы знаете, что дают такие привилегии, как их правильно использовать и управлять пользователями. В качестве рекомендации скажу, что всегда нужно читать текст ошибок, появляющихся в Терминале, если что-то пошло не так. Это позволит вам быстрее решить проблему без траты времени на поиски в Google.
В отличие от iOS платформа «Андроид» является более открытой и податливой для так называемого глубокого управления. Но и здесь имеются кое-какие ограничения с запретами. Рядовому пользователю система не позволит вмешиваться в свои файлы и экспериментировать с потенциально опасными настройками.
Эти ограничения тоже можно обойти, если открыть Root-доступ на «Андроид», то есть получить права суперпользователя. Подобное вмешательство в систему может негативно отразиться на платформе, особенно если речь идет об экспериментах новичка. Так что стоит несколько раз подумать, прежде чем получить Root-права и доступ к «Андроид». Последствия от неумелых действий могут быть самыми печальными. Но обо всем порядку.
Как получить рут-права?
Из нашей статьи вы узнаете, как получить Root-доступ на «Андроид» и какие инструменты для этого понадобятся. Разберем основные этапы данной процедуры и приведем несколько полезных советов. Последние помогут избежать критичных ошибок.
В качестве «подопытного» мы возьмем один из самых популярных гаджетов среднеценового сегмента – «Ксиоми Нот 3», включить Root-доступ на «Андроид» попробуем именно на нем. Но для начала проведем краткий ликбез, который для новичков явно не будет лишним.
Зачем нужны Root, или права суперпользователя?
Подобные права необходимы для получения полного доступа к системе и ее файлам. Это позволяет модернизировать платформу «Андроид» под ваши нужды для выполнения каких-то специфических задач. Причем речь здесь идет не только о мобильных телефонах и планшетах, но и о других устройствах под управлением этой ОС.
К примеру, если включить Root-доступ для «Андроид» на ТВ-приставке, то вы сможете устанавливать на нее заметно больший перечень приложений: кодеки, менеджеры файлов, игры и прочий ранее недоступный или как-то ограниченный к инсталляции софт.
Возможности рутированного гаджета:
- тонкая настройка интерфейса (шрифты, анимация, иконки, размеры элементов и прочее);
- удаление встроенных разработчиком/производителем приложений;
- бесплатные покупки в игровых приложениях;
- резервное копирование всех файлов, в том числе и системных (для будущих экспериментов с платформой);
- блокировать встроенную рекламу («Алиэкспресс», службы такси и прочее);
- устанавливать программы на карту памяти.
Последствия получения прав администратора
Но перед тем как установить Root-доступ на «Андроид» стоит знать, что вы можете причинить вред не только вашему гаджету, но и добавить себе головной боли.
Возможные последствия получения рут-прав:
- потеря гарантии;
- теряется возможность получения обновлений «по воздуху»;
- есть небольшая вероятность выхода из строя вашего устройства.
Так что, прежде чем включить Root-доступ на «Андроид» сто раз подумайте, а действительно ли вам это нужно? Вполне возможно, что для реализации поставленных задач найдутся какие-то специализированные приложения или другие инструменты, которые не затрагивают системные файлы платформы.
Подготовка
Если вы собираетесь включить Root-доступ на «Андроид», то для начала стоит подготовить свое устройство к этой процедуре. Это позволит избежать потери важных данных, таких как контакты, пароли, рабочие файлы, какие-то заметки и прочее.
Перед рутированием устройства обязательно сделайте резервную копию важной для вас информации на внешний носитель. Эту процедуру можно выполнить как посредством специализированного софта, так и вручную местными средствами.
Создание резервной копии (рассмотрим на «Андроид 6.х»):
- Открываем «Настройки» – «Память и резервные копии».
- Кликаем по пункту «Копирование и восстановление».
- Затем вызываем окно «Резервное копирование».
- Утилита предложит вам выбрать место для сохранения (выбираем внешний накопитель).
- Ставим маячки на тех данных, которые необходимо скопировать.
- Соглашаемся с процедурой и дожидаемся ее окончания.
Также позаботьтесь о том, чтобы ваш гаджет был заряжен как минимум на 80%. Если процесс получения прав суперпользователя прервется по причине севшей батареи, то есть отключения девайса, то вероятность «окирпичивания» вашего устройства вырастает в разы.
Особенности процедуры
Также нелишним будет в настройках разрешить установку приложений из неизвестных источников. Если вы собираетесь включить Root-доступ на «Андроид» через персональный компьютер, то необходимо активировать режим отладки по USB.
Установка из неизвестных источников:
- Открываем «Настойки» – «Отпечатки и безопасность».
- В нижней части списка передвигаем тумблер в активное положение в разделе «Неизвестные источники».
- Перезагружаем гаджет.
Режим отладки по USB:
- Открываем «Настройки» – «О телефоне».
- 6–7 раз кликаем на строке с версией прошивки, пока не появится сообщение «Теперь вы разработчик».
- Опять открываем «Настройки» – «Специальные возможности».
- Выбираем пункт «Для разработчиков».
- Переключаем тумблер в строке «Отладка по USB» в активное положение.
- Перезагружаем гаджет.
Получение прав администратора с мобильного устройства
Для начала разберем, как включить Root-доступ на «Андроид» непосредственно с телефона. Для этого нам понадобится программа от китайских разработчиков KingRoot. Скачать ее можно с официального сайта. Там же, в случае необходимости, можно найти русификатор. Последний выполнен не самым лучшим образом, поэтому лучше обойтись родной – англоязычной версией, потому как особых сложностей здесь не будет.
Данное приложение совместимо практически со всеми популярными марками смартфонов. Разработчик заверяет, что шанс «окирпичивания» устройства при использовании его софта крайне мал – порядка 0,1 %. Судя по отзывам пользователей, так оно и есть: на сотню юзеров только один или два жаловались на полностью испорченный гаджет. Да и то после разбирательств выяснялось, что были нарушены некоторые условия и пункты получения рут-прав.
Процесс рутирования:
- Скачайте приложение на свое устройство и установите его.
- Запустите программу и дождитесь окончания анализа вашего гаджета.
- Если на главном окне есть надпись Root access is unavailable, то нажмите на кнопку Try to Root.
- Дождитесь окончания процесса рутирования (время зависит от производительности устройства).
- Если операция прошла успешно, то появится надпись Root Succeeded.
- Перезагрузите ваше устройство.
Иногда могут возникнуть некоторые проблемы при рутировании, вместо надписи об удачном получении прав администратора программа выдает логи с ошибками. На это часто жалуются обладатели гаджетов от «Самсунга». Бренд и его фирменные прошивки обеспечивают более надежную защиту системы от подобного рода «проникновений», поэтому программу можно попробовать запустить еще раз.
Особенности программы
Дело в том, что утилита использует разные и не всегда совместимые один с другим алгоритмы рутирования. То есть они выполняются поочередно. Повторный запуск программы вполне может быть более успешным.
Также многие задаются вопросом: «А где найти Root-доступ на «Андроиде»?». Для того чтобы узнать, рутировано ваше устройство или нет, достаточно запустить KingRoot и на главном окне должна появится одна из надписей – Root access is unavailable или Root Succeeded. В первом случае права администратора не установлены, а во втором – успешно получены.
Получение прав администратора с ПК
Продвинутые пользователи считают рутирование через персональный компьютер более надежным, да и вероятность успешного получения прав администратора в этом случае выше. Судя по отзывам, программу Kingo Android Root можно назвать самым популярным, а вместе с тем и эффективным инструментом.
Разработчики данного софта занимаются поиском уязвимостей платформы «Андроид», так что дело они свое знают, и какие-то серьезные промашки за ними замечены не были. Найти программу можно на их официальном ресурсе.
Порядок рутирования:
- Подключите мобильное устройство через USB-интерфейс (должна быть включена отладка по USB на телефоне).
- Дождитесь пока программа определит ваш девайс и установит соответствующие драйвера (проверьте соединение с интернетом).
- На мобильном гаджете во всплывающем окне разрешите подключение нажав на кнопку ОК.
- Уже на компьютере должно появиться основное окно с крупной кнопкой ROOT в нижней части.
- Нажмите на нее, дождитесь окончания процесса рутирования (время зависит от производительности вашего мобильного устройства).
- В случае успешного выполнения процедуры появится надпись Root Succeeded!
- Отключите USB-кабель и перезагрузите ваш мобильный гаджет.
Программа работает с большим перечнем смартфонов, планшетов, ТВ-приставок и других устройств под управлением платформы «Андроид». Если же утилита не смогла определить модель вашего девайса или нужных драйверов не нашлось, то в этом случае стоит поискать фирменное приложение от производителя для синхронизации. Найти его можно на официальном сайте бренда. Если же у вас ультрабюджетное noname-устройство из Китая, то лучше получать права администратора первым способом, то есть непосредственно с телефона.
Удаление Root-доступа
Этот раздел также может понадобиться, особенно тем, кто хочет отнести свой гаджет в сервисный центр по гарантии, или если после рутирования появились какие-то серьезные проблемы в работе устройства. Для удаления прав администратора нам понадобится программа SuperSU. Найти ее можно на «Плей Маркете».
Удаление рут-доступа:
- Запустите утилиту и дождитесь, пока она определит модель гаджета и проверит наличие рут-прав.
- Перейдите во вкладку «Настройки».
- Кликнете по пункту «Полное удаление Root».
- Устройство зависнет на некоторое время и после перезагрузится.
- Во всплывающем окне должна появиться надпись, что удаление рут-прав прошло успешно.
🔍 Простой поиск по базе знаний
Чтобы найти UID пользователя (ID пользователя) или GID (идентификатор группы) и другую информацию в Linux/Unix-подобных операционных системах, используйте команду id.
Эта команда полезна для поиска следующей информации:
- Получить имя пользователя и реальный идентификатор пользователя
- Найти UID конкретного пользователя
- Перечислите все группы, к которым принадлежит пользователь
- Показать UID и все группы, связанные с пользователем
- Отображение контекста безопасности текущего пользователя
- Эффективное имя пользователя Linux или Unix и эффективный идентификатор пользователя (UID)
- Имя действующей группы пользователей Linux или Unix и идентификатор эффективной группы (GID)
Цель
Отображает системные идентификаторы указанного пользователя.
Основной синтаксис:
id id [UserNameHere] id [параметры] id [параметры] [имя_пользователя]
По умолчанию команда id показывает имена пользователей и групп и числовые идентификаторы вызывающего процесса, то есть текущего пользователя, который запускает команду id на экране. Если имя пользователя или идентификатор пользователя ([UserNameHere]) указаны в командной строке, отображаются идентификаторы пользователя и группы этого пользователя.
Показать свой собственный UID и GID
Введите команду:
$id
Пример выходов:
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, введите:
id -u {UserNameHere} id -u vasia
Пример выходов:
501
Как найти GID конкретного пользователя?
В этом примере найдите GID пользователя vasia, запустите:
id -g {UserNameHere} id -g vasia
Пример выходов:
20
Как увидеть UID и все группы, связанные с именем пользователя?
В этом примере найдите UID и все группы, связанные с пользователем с именем «root», введите:
id {UserNameHere} id root
Пример выходов:
uid=0(root) gid=0(root) группы=0(root)
Как узнать все группы, к которым принадлежит пользователь…
В этом примере отобразите UID и все группы, связанные (вторичные группы) с пользователем с именем «vasia», запустите:
id -G {UserNameHere} id -G 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 {UserNameHere} id -nu {UserNameHere} id -nG {UserNameHere} id -nG vasia
Пример выходов:
vasia adm cdrom sudo dip plugdev lpadmin sambashare libvirtd lxd
Как отобразить реальный идентификатор вместо эффективного идентификатора для указанного пользователя?
Вы можете показать действительный идентификатор для параметров -g, -G и -u вместо эффективного идентификатора, передав опцию -r:
id -r -g {UserNameHere} id -r -u {UserNameHere} ### [NOTE]########################### ### -r and -G only works on Linux ### ##################################### id -r -G {UserNameHere} id -r -u vasia
Пример выходов:
501
Параметры команды 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