Tengo curiosidad por saber si puedo imprimir la ExecStart/ExecStop
línea de comandos completamente expandida . Considere el siguiente ejemplo:
ExecStart=/usr/bin/java $OPTS_COMMON $OPTS $OPTS_LOG $OPTS_DEBUG some.class.Start --param1 ${PARAM1} --param2 ${PARAM2}
Tengo líneas de comando bastante largas con muchas variables de entorno involucradas. Si algunas de las variables se vuelven incorrectas (por ejemplo, mediante la configuración directa), es posible que el servicio no se inicie en absoluto. Sin embargo, no veo una línea completamente expandida con envs sustituidos en ningún lado y lucho por descubrir qué está mal.
No tuve suerte buscando en Google esto y hasta ahora la única posibilidad que encontré es modificar el archivo de la unidad para que se ejecute en /usr/bin/echo
lugar del servicio en sí. Pero eso es un poco agotador. O incluso una solución más molesta: compruebe cada variable de entorno una por una.
¿Hay alguna forma de obligar a systemd a mostrarme lo que realmente se intenta ejecutar?
En el archivo * .service en la sección [Servicio]
fuente