• [^] # Re: Je pose la question dans l'autre sens

    Posté par (site web personnel) . En réponse au journal Les problèmes d’un desktop sans systemd ?. Évalué à 10.

    Il y’a d’une part ma faute (je n’arrive pas/n’ai pas envie de me plonger dans systemd/je lis les scripts bash assez intuitivement) et d’une part systemd (je peux pas juste lancer un grep dans le répertoire init pour voir ce qui est censé tourner, je peux pas simplement limiter la horde de process qui tournent sur mon ordi dès le démarrage).

    Je pense que c'est surtout le premier point le problème. Si on veut, on peut très facilement comprendre comment fonctionne systemd. (Par exemple avec ça https://wiki.archlinux.org/title/Systemd)

    je peux pas juste lancer un grep dans le répertoire init pour voir ce qui est censé tourner

    Tout est dans /etc/systemd/system/ (configuration "admin", des liens symboliques) et /usr/lib/systemd/system/ (configuration "développeur", des fichiers)

    ls -l /etc/systemd/system/default.target me dit que par défaut on lance /usr/lib/systemd/system/graphical.target (chez moi, Fedora 36)

    Un cat /usr/lib/systemd/system/graphical.target (ou directement grep -E "(Wants|Requires)" /etc/systemd/system/default.target te dit qu'on a besoin de multi-user.target et display-manager.service (si possible).

    Un ls /etc/systemd/system/graphical.target.wants me dit que mon admin a aussi rajouté 6 autres services voulu par graphical.target. (Je te laisse voir lesquels)

    Et tu peux continuer comme ça a descendre l'arbre de dépendances. (削除) Alors oui, c'est un peu plus compliqué qu'un dossier avec des scripts 10_foo.sh, 50_bar.sh... où tu peux voir rapidement ce qui sera lancé et dans quel ordre. (削除ここまで) Alors oui, c'est plus facile de configurer son système. Il suffit de rajouter un lien symbolique dans /etc/systemd/system/foo.target.wants vers un service pour que le service soit lancé. T'as pas besoins de gérer les dépendances et de renommer tes fichiers avec des nombres pour garder un système globalement cohérent pour être sur que tout se lance dans l'ordre.

    Toute les commandes à base de systemctl, c'est des outils "user-friendly" pour faire les liens et parcourir l'arbre des dépendances à ta place. Mais t'en a pas besoin.

    Si tu veux l'arbre de dépendances : systemctl list-dependencies
    Rajouter un lien symbolique pour mettre un service en dépendance d'une target : systemctl add-requires TARGET UNIT

    je peux pas simplement limiter la horde de process qui tournent sur mon ordi dès le démarrage).

    Tu vires des liens symboliques et c'est bon.
    C'est pas vraiment plus compliquer que virer tout les scripts dans un dossier pour sysVinit. C'est juste que sysVinit tu connais et que systemd non.

    mais j’explore justement le contraire "qu’est-ce qui casse si je touche à le truc".

    Tu te crées une nouvelle target à toi, sans dépendance et tu fais pointer /etc/systemd/system/default.target dessus. Tu devrais vite voir ce qui casse :)

    Matthieu Gautier|irc:starmad