Не удается запустить службу с пользователем, у которого нет пароля
Поэтому я ищу способ запустить системную службу во время загрузки, чтобы работать как обычный пользователь.
Я создал служебный файл /etc/systemd/system/my-service.service
как root, а затем, когда я попытался запустить службу как обычный пользователь: service my-service start
Мне дали возможность выбрать пользователя для запуска службы, но затем меня попросили ввести пароль. Однако я специально не установил пропуск для этого пользователя, и для аутентификации я использую только закрытый ключ. Сервис, который я создал, мне просто нужно выполнить команду под конкретным пользователем, а не root. Какие у меня есть варианты?
2 ответа
Вам нужен root-доступ для запуска сервисов, даже если они настроены для работы от имени пользователя.
Так:
sudo service my-service start
Ваш пользователь нуждается в доступе к sudo, хотя... для первого пользователя, который настроен на Ubuntu, это обычно имеет место по умолчанию. Затем вам нужно будет ввести пароль вашего собственного пользователя (не тот, под которым работает служба).
Вы также можете настроить /etc/sudoers
чтобы позволить вашему пользователю запускать команду без запроса пароля.
Вы должны получить доступ к /etc/sudoers
файл и добавьте следующую строку:
user ALL=NOPASSWD:/etc/systemd/system/my-service.service
Это позволит пользователю запускать / останавливать / перезапускать сервис без запроса пароля.