systemd中的systemd用户和组

时间:2016-10-19 11:55:46

标签: unix redhat environment systemd

我的服务看起来像这样:

[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

有没有办法将用户和组移动到环境文件中?

1 个答案:

答案 0 :(得分:0)

Systemd不支持用户选项的环境替换。见systemd.exec

您必须提供文字字符串 id