Я пишу сценарий init, который должен выполнять одну команду как пользователь, отличный от root. Вот как я это делаю в данный момент:
sudo -u username command
Как запустить команду в качестве конкретного пользователя в сценарии инициализации?
Как правило, это работает, как ожидалось на Ubuntu/Debian, но на RHEL скрипт, который выполняется как command
зависаний.
Есть ли другой способ запустить команду в качестве другого пользователя?
(Обратите внимание, что я не могу использовать функции инициализации lsb, поскольку они недоступны на RHEL/Centos 5.x.)
Обратите внимание, что этот вопрос о чем-то создан исключительно администратором (обычно, демон, который работает как некий пользователь в целях безопасности). Немного отличается случай, когда пользователи настраивают свои собственные команды для запуска при загрузке с помощью своего пользователя crontab. См. Http://askubuntu.com/questions/260845/run-a-command-as-user-at-boot-time-ubuntu-12-04 –