Главная > Среда и утилиты > logname

logname: Вывод имени пользователя для входа

Команда logname выводит имя пользователя (login name), которое использовалось при первом входе пользователя в систему. В отличие от `whoami`, она показывает исходное имя пользователя, вошедшего в систему, даже после смены привилегий с помощью `su` или `sudo`.

Обзор

Команда `logname` выводит на стандартный вывод имя, которое пользователь использовал для начала сеанса входа в систему. Это имеет тонкое, но важное отличие от `whoami`. В то время как `whoami` выводит имя 'действующего пользователя' (effective user), который в данный момент выполняет команду, `logname` выводит имя 'реального пользователя, вошедшего в систему' (real login user) сеанса. Таким образом, даже после получения привилегий другого пользователя с помощью команд `sudo` или `su`, `logname` будет показывать имя пользователя, изначально вошедшего в систему.

Основные особенности

Основные особенности команды logname:

  • Выводит имя пользователя, начавшего сеанс входа в систему.
  • Работает на основе значения переменной окружения `$LOGNAME`.
  • Используется для проверки реального пользователя, вошедшего в систему.
  • Простая команда с минимальным количеством опций.

Различия между logname и whoami

Обе команды выводят имя пользователя, но показывают разные результаты в ситуациях изменения привилегий.

  • logname: Выводит имя реального пользователя, вошедшего в систему. Не меняется после использования `su` или `sudo`.
  • whoami: Выводит имя действующего пользователя, который в данный момент выполняет команду. После использования `su` или `sudo` выводит измененное имя пользователя, например, `root`.

Основные опции

Команда logname очень проста, поэтому используются только базовые опции справки, такие как `--help` или `--version`.

1) Справка

Сгенерированная команда:

Комбинируйте команды.

Описание:

`logname` Запускает команду.

Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.

Примеры использования

Изучите функциональность команды logname на различных примерах использования.

Проверка имени текущего пользователя

logname

Выводит имя пользователя, вошедшего в систему.

Сравнение имени пользователя после команды su

logname
su
whoami
logname

Сравнивает результаты вывода `whoami` и `logname` после переключения на пользователя `root` с помощью команды `su`. `whoami` выводит `root`, но `logname` выводит имя пользователя, изначально вошедшего в систему.

Установка

logname является частью пакета `coreutils` и поставляется по умолчанию в большинстве дистрибутивов Linux. Отдельная установка не требуется.

Советы и примечания

Здесь собраны важные моменты при использовании команды logname.

Советы

  • В скриптах рекомендуется использовать `whoami` для проверки привилегий пользователя, выполняющего команду, и `logname` для записи реального пользователя, подключившегося к системе.
  • `logname` может использоваться для отслеживания реального пользователя, вошедшего в систему, аналогично выводу команды `w`.

Связанные команды

Функционально схожие или часто используемые команды.


Те же команды в категории