Je suis curieux de savoir si je peux imprimer une ExecStart/ExecStop
ligne de commande entièrement développée . Prenons l'exemple suivant:
ExecStart=/usr/bin/java $OPTS_COMMON $OPTS $OPTS_LOG $OPTS_DEBUG some.class.Start --param1 ${PARAM1} --param2 ${PARAM2}
J'ai des lignes de commande assez longues avec beaucoup de variables d'environnement impliquées. Si certaines variables deviennent erronées (par exemple par une configuration sans rendez-vous), le service peut ne pas démarrer du tout. Cependant, je ne vois nulle part une ligne entièrement élargie avec des envs substitués et j'ai du mal à découvrir ce qui ne va pas.
Je n'ai pas eu de chance sur Google et jusqu'à présent, la seule possibilité que j'ai trouvée est de modifier le fichier d'unité pour qu'il fonctionne /usr/bin/echo
au lieu du service lui-même. Mais c'est un peu fatigant. Ou encore une solution plus ennuyeuse - vérifiez chaque variable d'environnement une par une.
Existe-t-il un moyen de forcer systemd à me montrer ce qui est réellement tenté d'être exécuté?
Dans le fichier * .service de la section [Service]
la source