2016-10-19 10 views
0

У меня есть сервис, который выглядит примерно так:Systemd пользователя и группы в environmentfile

[Unit] 
Description=someApplication 
... 
[Service] 
EnvironmentFile=/path/to/environment.file 
Type=simple 
User=$APPLICATION_USER 
Group=$APPLICATION_GROUP 
ExecStart=/bin/bash -c "$APPLICATION_HOME/app.sh $APPLICATION_OPTS" 
PIDFile=$APPLICATION_HOME/application.pid 
... 

в моем environment.file у меня есть

APPLICATION_USER=test_user 
APPLICATION_GROUP=test_group 
APPLICATION_HOME=/opt/application 
APPLICATION_OPTS= -d test 

Если я пытаюсь запуска этого я получаю сообщение " Unit application.service вступил в состояние отказа. " если я перемещу свойства для пользователя и группы в службу, в которой он работает.

Рабочий пример:

[Unit] 
Description=someApplication 
... 
[Service] 
EnvironmentFile=/path/to/environment.file 
Type=simple 
User=test_user 
Group=test_group 
ExecStart=/bin/bash -c "$APPLICATION_HOME/app.sh $APPLICATION_OPTS" 
PIDFile=$APPLICATION_HOME/application.pid 

Есть ли способ, чтобы переместить пользователя и группу в файл окружения?

ответ

0

Systemd не поддерживает замену окружающей среды для Пользователь и Группа Опции. См systemd.exec

Вы должны предоставить буквального строку или идентификатор

+0

я фигурировал, но должен был быть уверен :) Спасибо за помощь! – Magnusev