J'essaie de mettre en place un nouveau service (sous Debian Jessie) qui doit mettre en place des montages où la configuration réseau est stockée et donc ce service doit se terminer avant le réseautage.service démarre.
J'ai essayé ce qui suit:
[Unit]
Description=mount/repair remaining filesystems (all persistent fs beyond "/")
#Before=network-pre.target
Before=networking.service
[Service]
Type=oneshot
ExecStart=/opt/intermodul-mounts/start.sh
TimeoutSec=0
RemainAfterExit=yes
[Install]
RequiredBy=networking.service
En utilisant systemd-analyze plotje peux voir que mon service démarre, mais networking.servicedémarre environ 3 secondes plus tôt:
Apparemment, ma configuration est erronée, mais j'ai du mal à trouver le problème ... Toute aide grandement appréciée ..
Mise à jour
Je l'ai actuellement résolu en modifiant la configuration du service pour démarrer avant local-fs.targetau lieu de networking.service:
[Unit]
DefaultDependencies=no
Description=mount/repair remaining filesystems (all persistent fs beyond "/")
Before=local-fs.target
[Service]
Type=oneshot
ExecStart=/opt/intermodul-mounts/start.sh
TimeoutSec=0
RemainAfterExit=yes
[Install]
RequiredBy=local-fs.target
Je voudrais quand même comprendre pourquoi ma première configuration n'a pas fonctionné comme prévu ...?
/etc/network/interfacesa des références à des ip-upscripts qui résident dans une autre partition. Cette partition est montée par un script complexe /opt/intermodul-mounts/start.shqui doit être exécuté avant la mise en réseau. Actuellement, les ip-upscripts ne démarrent pas efficacement car ils ne sont pas accessibles au démarrage. L'exécution service networking restartultérieure affiche correctement toutes les interfaces.
