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

Запустите «sudo -u», не спрашивая пароль текущего пользователя.

Извините, если я пропустил здесь ответ. Но я сделал это в Google и не смог найти прямого ответа.

Я хочу включить apache пользователь для запуска команд от имени другого пользователя, но когда я это сделаю:

echo "PASSWORD" | sudo -u another_user -S echo "X"

Внутри PHP-скрипта, Я получил:

[sudo] password for apache:

В apache у пользователя нет пароля, поэтому я не могу просто вывести его, чтобы запустить sudo. В любом случае я могу включить apache пользователь для запуска sudo для определенного набора команд под another_user аккаунт без пароля?


PS: У меня сейчас есть

apache ALL=(yourhost) /usr/bin/git --git-dir=/* --work-tree=/* pull origin master

на моем sudoers файл.

найдите использование "NOPASSWD" в файле sudoers.

как в:

apache ALL=(yourhost) NOPASSWD:/usr/bin/git --git-dir=/* --work-tree=/* pull origin master

Хорошая это идея или нет, это другой разговор.