Passage en full systemd sous archlinux : Test et installation

Salut les animaux !

Voilà, c’est fait ! J’ai eu un peu de temps ce soir et me voici avec un Archlinux full systemd. J’ai encore le temps de vous faire un petit billet, allons-y.

Rq 1 : Ça se serait mal passé que je vous aurais bien fait un bon gros billet troll, mais manifestement, le troll ne prend pas racine ici.

Rq 2 : Les points de vues que j’expose dans cette articles ne concerne que moi. Je ne pense pas avoir, ni le niveau technique ni le reculs nécessaire pour savoir si systemd est une avancé technique nécessaire et intéressante, s’il respecte l’esprit libre etc. Je ne fais que vous transmettre mon point de vue d’utilisateur et vous dire que ça marche chez moi. Si vous voulez faire le pas, je pense qu’il n’y a pas d’hésitations à avoir de ce coté là.

Je me tente un peu à faire ce genre d’article, que je trouve trop peu approfondie. Néanmoins je me permet de tester. Si vous aimez faites le moi savoir.

Etat de l’art du bordel

Here we go ! On commence par un petit résumer un peu plus technique. Je cite directement depuis ce billet publié sur linux.fr dont je vous recommande fortement la lecture, pour le bien de la communauté et du troll constructif (Amen !) :

Sur un système UNIX, le tout premier processus (PID 1) a un rôle particulier. C’est le seul qui est lancé par le noyau ; il doit donc assurer toute l’initialisation du système, le lancement des différents services et des systèmes permettant la connexion des utilisateurs.
Sous GNU/Linux, c’est généralement SysVinit, le système d’initialisation hérité d’UNIX Système V qui assure ce rôle, remplacé par Upstart dans plusieurs distributions.
Hélas, SysVinit reste très basique, peu performant et sujet à de nombreux problèmes. Il n’est pas très adapté à toutes les évolutions modernes que connaît Linux.

Le premier processus serait donc … obsolète ? Super, bon on se la wintouch ou on change ?

Il nous faut donc un mec un peu forte gueule, avec suffisamment d’expérience pour lancer le projet et emmener une partie suffisamment importante de la communauté sans trop ce soucier des victimes collatérales.

Lennart Poettering : Ok, I think I can do that !

Lennart Poettering arrive donc pour foutre son petit bordel (je le connaissais pas, mais il a l’air de bosser sec, si j’en crois cette article de linuxfr, again). Pour résumer, Lennart Poetteringest un développeur Red Hat/Fedora connu pour être remarquablement prolifique. Il est l’auteur de Avahi et Pulseaudio et bien sûr de systemd. Que l’on aime ou pas, ça force le respect.

Le personnage à l’air de pas mal déranger les durs de durs. Il divise donc (normal ? ) la communauté et en emmène une partie avec lui. Voila ce que ça donne :

  • Archlinux fait doucement la transition
  • Ferdora va l’incure par défaut dans la prochaine version
  • OpenSuse, Fulgureware comptent faire de même
  • Debian l’a mit dans unstable (2015-2016 ?)
  • Ubuntu (et tout les derivés) ainsi que Slackware et les trolls font blocus

Outre des avis trop faiblement documentés à mon gout (dans les deux sens), je n’ai pas réussit à trouver de vrais comparatifs (hormis celui de l’auteur : ICI, cela dit je me méfie toujours quand je vois du vert partout).

Les principaux arguments sont :
  • Meilleur gestion des dépendances entre services
  • Chargement en parallèle des services au démarrage
  • Démarrage des services à la demande (eg : cups ne se lance qu’à la réception d’un messge)

Installation sous Archlinux

Comme d’habitude sous Archlinux TOUT est dans le wiki, le forum et le man (si ça ne l’est pas c’est que vous n’avez pas assez cherché).
Pour résumer :
– Mettre à jour les fichiers éclatés :

/etc/rc.conf
/etc/hostname
/etc/vconsole.conf
/etc/locale.conf
/etc/adjtime

– Ajout des modules dans les fichiers etc/modules-load.d/*.conf si ce n’est pas déjà fait. Perso j’ai juste un fichier loop.conf avec loop marqué dedans (pour TrueCrypt).

– Installer systemd

$ sudo pacman -S systemd systemd-arch-units systemd-sysvcompat

Rq : On vous demandera de supprimer les initscripts. C’est le but … Il faut donc évidement dire oui.
Rq : Systemd-syscompat permet de faire le lien vers systemd pour init reboot etc. C’est bien pratique.

– Activer les daemons

Pour moi, cela donne les commandes suivantes :

$ sudo systemctl enable NetworkManager.service
$ sudo systemctl enable cronie.service
$ sudo systemctl start slim.service 

Cette page pourrait fortement vous intéresser.
Rq : À noter que syslog ne semble plus necessaire puisque remplacé par journald

Conclusion

Oui, c’est aussi simple que ça … J’ai relu douze milles fois le Wiki et les forums et je n’ai eu aucun des problèmes soulignés (j’avais vu un bug avec slim et console kit du coup de stressais un peu).

Mais non, tout marche exactement comme avant, aucun problème. Pas de bugs ou incompatibilités à reporter pour le moment.

Voici ce que ça donne au niveau des stats (que je ne comprends pas … mais j’aime bien les stats) :

> 22:48 antitrust@_ { ~ } % systemd-analyze
Startup finished in 2481ms (kernel) + 2172ms (userspace) = 4653ms
> 22:48 antitrust@_ { ~ } % systemd-analyze blame
[…]

Bref, rien de bien magique, j’ai du gagner quelques seconde (3 ou 4, c’est déjà énorme). Tout comprit (avec le lancement de cinnamon et login slim) je dois mettre 30s à démarrer au grand max *YOUPI*.

Je pense que mon DD y ai aussi pour quelque chose (Seagate Momentus XT 500Go 7200tr/min firmware SD28). L’algo semble pas mal gérer les démarrages systemd. Je pense que les gens avec des SSD devrait obtenir de belle performances avec systemd.

Voila, amusez-vous bien.

Source : image et image


15 Responses

  1. noireaude la-vache-libre.com 26 août 2012 / 20 h 31 min

    Pour les trucs kamikazes je m’en charge ne vous inquiétez pas.

    Je sais très bien tout casser :)

  2. A. 26 août 2012 / 20 h 28 min

    < < J'aime pas ton coté conservateur ;) >>

    Moi non plus je ne l’aime pas toujours mais c’est grâce à lui que je ne suis pas en Debian unstable ou en Gentoo et que je peux avoir une vide en dehors de la gestion de mon système ;-)

    Maintenant que j’ai un système « aux petits oignons » (et que je ne suis pas sûr d’arriver à en reconfigurer un autre aussi bien) j’évite les comportements kamikaes (en dehors des VM, j’entends). Ouais, sans doute l’expérience qui joue :-)

  3. 4nti7rust 26 août 2012 / 19 h 48 min

    @A : J’ai probablement beaucoup moins d’expérience que toi et je comprends du coup beaucoup mieux tes remarques. Merci donc pour ta persévérance.

    J’aime pas ton coté conservateur ;)

    Ma machine est aussi la seul que j’ai actuellement … J’ai juste pas eu suffisamment de soucis pour que mes tests me stressent. L’expérience encore je suppose.

  4. A; 26 août 2012 / 19 h 40 min

    Je le prends mal si je veux ! Et d’ailleurs ça va gueuler !!
    Non mais… ;-)

    Bon, sérieusement, je ne suis pas vraiment « gêné » par le passage à systemd et la migration hors du rc.conf. C’est juste que dans MON cas particulier et mon expérience, je suis passé par plein de distribs différentes et je doute encore souvent quand je dois changer une config (alors est-ce que c’est /etc/init.d ? ou /etc/rc.d ? A moins que ça soit systemctl qui, heu, comment il marche lui déjà ?). Donc quand j’ai découvert Arch, le rc.conf hyper-documenté et simple a été ZE bonne surprise pour moi, et je continue à trouver l’idée excellente. Donc oui, je trouve dommage qu’on s’éloigne de cette centralisation mais je devrais attendre quelques semaines pour voir comment la transition va se faire, pour l’instant je déplore comme toi que ça soit un peu « brouillon-dém*rde-toi » :-)

    Que ça soit bien clair : je continue à apprécier Archlinux, je continue à penser que c’est la meilleure distrib (pour moi !) malgré ces changements. Mais j’ai peur que lesdits changements ne soient que le début d’un changement d’approche et j’ai peur de voir vers quoi ça va mener. Mais ça c’est mon côté conservateur qui parle.

    D’un autre côté, quand je réinstallerai Arch sur mon EeePC (j’en peux plus de son Windows XP), je testerai le systemd et toutes ses nouveautés, je n’ai pour l’instant que des systèmes que je ne peux pas sacrifier pour faire des tests… « Ca juste marche » et ça me va comme ça !

    Sans rancune :-)

  5. 4nti7rust 26 août 2012 / 19 h 38 min

    Pas besoin d’un autre pc normalement puisque la doc est sur l’image (tu l’affiche dans un autre terminal). Mais je dois avouer que j’utilise toujours mon tel à coté pour avoir le wiki.

  6. noireaude la-vache-libre.com 26 août 2012 / 19 h 32 min

    Quote : Ça vaut même pas le coup de passer à Archlinux si on sait pas lire une page de wiki (ici ou la)… J’espère que le novice « avancé » comme tu dis sait au moins faire ça.

    C’est pas faux, non plus, faut juste un deuxième pc :)

  7. 4nti7rust 26 août 2012 / 19 h 26 min

    Ça vaut même pas le coup de passer à Archlinux si on sait pas lire une page de wiki (ici ou la)… J’espère que le novice « avancé » comme tu dis sait au moins faire ça.

    Pour ce qui est des AIF (et de la disparition de l’AIF), il manque peut-être quelques éléments d’aide, comme nous en parlions avec @A, et la disparition de toute interface graphique peut troubler les utilisateur, mais il n’y a rien de nouveau par rapport à l’AIF. C’est juste qu’à la place de cliquer sur suivant tu dois aller regarder les étapes dans le manuel fournit avec. Je me plains juste de perdre du temps à faire cette allé-retour.

  8. noireaude la-vache-libre.com 26 août 2012 / 18 h 37 min

    Je peux comprendre le coté pratique de ce fichier unique, mais je ne peux pas comprendre que ce soit un élément bloquant pour l’utilisateur. Ce ne sont que des fichiers d’installation qu’il ne faudra toucher qu’une seule et unique fois, pendant l’installation.

    Le problème est la justement.

    Le novice « avancé » ne passera peut être même plus le stade de l’installation si la manipulation n’est pas un minimum assistée ce qui ne semble plus être le cas avec la suppression d’AIF.

    Enfin c’est ce que j’ai cru comprendre, je confond peut-être.

  9. 4nti7rust 26 août 2012 / 15 h 40 min

    Je dirais que je suis un peu à l’opposé, je vois un truc qui change, je teste directement ! Et je suis très rarement déçu. Systemd est très performant et son intégration a été parfaitement réussit, j’espère ne pas vous avoir dégoûté par le coté un peu technique des explications.

    Cela dit je rappel que nul n’est forcé de faire toutes ces manipulations et le rc.conf ainsi que les initscripts SONT toujours 100% supportés.

    Pour ce qui est de la mutation à la rache, je déplore effectivement l’absence d’une aide à l’écriture de ces fichiers au niveau de l’instal, je pense que ce sera corrigé dans les prochaines images.

    Je peux comprendre le coté pratique de ce fichier unique, mais je ne peux pas comprendre que ce soit un élément bloquant pour l’utilisateur. Ce ne sont que des fichiers d’installation qu’il ne faudra toucher qu’une seule et unique fois, pendant l’installation.

    Ne le prend pas mal @A. mais je suis particulièrement déçus qu’une partie de la communauté soit à ce point là gênée par des changement si insignifiants.

  10. noireaude la-vache-libre.com 26 août 2012 / 12 h 00 min

    Bien entendu que c’est de ta faute :)

    Pour le reste c’est bien ce que j’avais compris en ce qui concerne l’éclatement du fichier qui apparemment déroute même le GNU/Linuxien averti.

    Lui s’en sortira plus ou moins, les débutants eux seront un peu plus paumés en revanche.

    Après je dis ça mais je n’en ai qu’une vague idée pour ne pas m’y être essayé.

    Je ne sais pas si c’est utilisé par défaut sur les nouvelles images et comme tu le précises bien il faut voir ce que ça va donner au final.

    De toute façon côté vieux ronchon je me pose là aussi :)

  11. A. 26 août 2012 / 11 h 53 min

    Ayé, ça va encore être de ma faute ici !

    Bon, je n’aime pas dire ça, mais c’est vrai que c’est pas trop le moment de se lancer dans Arch (à moins d’être motivé et/ou sous LSD) si on connait pas, c’est un peu en mutation pour l’instant…

    Pour la discussion à propos de systemd, j’ai surtout dit que j’avais pas suivi le truc et que je ne voyais pas l’intérêt immédiat. Par contre ça casse (un peu) l’esprit Arch en éparpillant la config dans plusieurs fichiers que je ne connais pas (encore) au lieu de tout concentrer dans le rc.conf (quand on a goûté au rc.conf d’Arch, on peut plus s’en passer). C’est surtout ça qui fait râler le vieux ronchon réac’ et allergique au progrès que je suis au fond de moi :-)
    Ça et le processus de mutation qui est fait un peu à l’arrache, mais je fais confiance à l’équipe Arch pour rectifier le tir dans les semaines/mois à venir.

  12. noireaude la-vache-libre.com 26 août 2012 / 11 h 02 min

    Pour le côté prise de tête je faisais surtout référence à la discussion que vous avez eu avec Mr.A sur systemd.

  13. 4nti7rust 24 août 2012 / 22 h 10 min

    Je vois pas trop de prise de tête ici, c’est juste moi qui ai décidé de forcer la main au système pour tester. Tu n’as en aucun cas besoin de faire cette manipe pour que ça marche.

    Pour ce qui est de l’exotisme, je te l’accorde, tu trouve dans la communauté Archlinux des utilisateur très orientés technique qui détestent ne pas comprendre ce qu’ils font. C’est la raison pour laquelle il n’existe presque aucun GUI (ça cache trop de choses) et c’est la raison pour laquelle c’est toujours les premiers à avoir ce genre de programme qui, je pense, demande une excellente connaissance du fonctionnement du système.

    J’essaye d’ailleurs de rester dans cette esprit dans mes articles sur Arch. Je commence donc toujours par un petit topo technique sur la manip et je mets toujours des liens pour allé plus loin.

    Après évidement si tu ne te retrouve pas dans ce genre de profil, arch risque vite de te dégoûter.

  14. noireaude la-vache-libre.com 24 août 2012 / 20 h 00 min

    Excellent je l’ai lu ce matin dans le tram, par contre plus je te lis moins je suis chaud pour Arch. Ça a l’ai vraiment prise de tête et très exotique :)

Comments are closed.