Jestem ciekawy, czy mogę wydrukować w pełni rozwiniętą ExecStart/ExecStop
linię poleceń. Rozważ następujący przykład:
ExecStart=/usr/bin/java $OPTS_COMMON $OPTS $OPTS_LOG $OPTS_DEBUG some.class.Start --param1 ${PARAM1} --param2 ${PARAM2}
Mam dość długie wiersze poleceń z wieloma zmiennymi środowiskowymi. Jeśli niektóre zmienne staną się niepoprawne (na przykład przez konfigurację drop-in), usługa może w ogóle się nie uruchomić. Jednak nigdzie nie widzę w pełni rozwiniętej linii z podstawionymi env i staram się dowiedzieć, co jest nie tak.
Nie miałem szczęścia googlować i do tej pory jedyną możliwą możliwością było zmodyfikowanie pliku jednostkowego, aby działał /usr/bin/echo
zamiast samej usługi. Ale to trochę męczące. Lub jeszcze bardziej irytujące rozwiązanie - sprawdzaj każdą zmienną środowiskową jeden po drugim.
Czy jest jakiś sposób, aby zmusić systemd do pokazania mi, co faktycznie próbuje uruchomić?
W pliku * .service w sekcji [Service]
źródło