Назад | Перейти на главную страницу

Войдите в систему как пользователь в скрипте init.d

Я создал сценарий init.d для управления процессом как службой в RHEL 6.x. В сценарии я использую / sbin / runuser для запуска процесса от имени непривилегированного пользователя. Эта часть скрипта работает нормально.

Скрипт работает как sudo service scriptname operation

например, sudo service httpd restart

Кроме того, я хочу выйти из системы пользователя, выполнившего указанную выше команду. В обычных сценариях bash я использовал по-разному $ USER, $ SUDO_USER и $ logname, чтобы заставить пользователя запустить сценарий. То же самое, похоже, не работает, когда сценарий запускается с использованием исполняемого файла «службы».

Что мне не хватает? Как я могу узнать имя пользователя, выполняющего служебную команду, внутри сценария, запускаемого служебной командой?

Спасибо.

service запускает сценарий инициализации System V в максимально предсказуемой среде, удаление большинства переменных среды и с текущим рабочим каталогом, установленным на /.

LANG, СРОК
Единственные переменные среды, переданные в сценарии инициализации.

Я не совсем понимаю, чего вы хотите достичь, но вы можете попробовать whoami или logname команды.