No puede usar variables en el comando real. systemd.servicio:
El comando a ejecutar debe ser un nombre de ruta absoluto. Puede contener espacios, pero los caracteres de control no están permitidos.
Es posible que desee envolverlo en un comando de shell (que hace la expansión de parámetros):
ExecStart=/bin/bash -c '/${TESTEXTSERVICESFILES}/syslog/bin/nxlog -c ${TESTCONFDATA}/syslog/nxlog.conf'
En lugar de Environment=
, usa EnvironmentFile=
, para definir múltiples variables de entorno.
[Service]
Type=simple
EnvironmentFile=/etc/sysconfig/customsyslog
ExecStart=/bin/echo ${TESTEXTSERVICESFILES}/syslog/bin/nxlog $TESTCONFDATA
/etc/sysconfig/customsyslog
contendría key=value
par, por ejemplo,
TESTEXTSERVICESFILES=/opt/test/extservices
TESTCONFDATA=/storage/test/conf