Запустите службу удаленно по запросу http - PullRequest
0 голосов
/ 24 августа 2018

У меня есть сервис systemd "myservice", работающий как пользователь www-data. Я хочу запустить / остановить / перезапустить этот сервис по запросу http. Проблема в том, что я получаю ошибку из-за отсутствия аутентификации:

Не удалось перезапустить myservice.service: требуется интерактивная аутентификация. Подробности смотрите в системных журналах и «systemctl status myservice.service».

Сначала я запрашиваю скрипт php, вызывая restartService.sh:

$exec_command = "../restartService.sh";

restartService.sh - только одна команда:

systemctl restart myservice.service

Владелец и группа restartService.sh являются ww-data:

-rwxr-xr-x 1 www-data  www-data    41 Aug 24 12:42 restartService.sh

Есть предложения по решению?

1 Ответ

0 голосов
/ 24 августа 2018

Вы можете использовать конфигурацию sudo , чтобы дать пользователю www-data разрешение на запуск systemctl restart yourservice без разрешения на запуск любых других команд от имени пользователя root.

...