Je suis au courant du fil suivant et soi-disant une réponse . Sauf qu'une réponse n'est pas une réponse au sens générique. Il indique quel était le problème dans un cas particulier, mais pas en général.
Ma question est: existe-t-il un moyen de déboguer les cycles de commande de manière générique ? Par exemple: existe-t-il une commande qui décrira le cycle et qu'est-ce qui relie une unité à une autre?
Par exemple, je dois suivre journalctl -b
(veuillez ignorer la date, mon système n'a pas de RTC avec lequel synchroniser l'heure):
Jan 01 00:00:07 host0 systemd[1]: Found ordering cycle on sysinit.target/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on local-fs.target/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on cvol.service/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on basic.target/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on sockets.target/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on dbus.socket/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on sysinit.target/start
Jan 01 00:00:07 host0 systemd[1]: Breaking ordering cycle by deleting job local-fs.target/start
Jan 01 00:00:07 host0 systemd[1]: Job local-fs.target/start deleted to break ordering cycle starting with sysinit.target/start
où cvol.service (celui qui a été introduit et qui rompt le cycle) est:
[Unit]
Description=Mount Crypto Volume
After=boot.mount
Before=local-fs.target
[Service]
Type=oneshot
RemainAfterExit=no
ExecStart=/usr/bin/cryptsetup open /dev/*** cvol --key-file /boot/***
[Install]
WantedBy=home.mount
WantedBy=root.mount
WantedBy=usr-local.mount
Selon journalctl, cvol.service veut basic.service, sauf que ce n'est pas le cas, du moins pas évidemment. Existe-t-il une commande qui démontrerait d'où provient ce lien? Et en général, y a-t-il une commande, qui trouverait les cycles et montrerait l'origine de chaque lien dans le cycle?