Suite au passage au noyau 3.6.4, je n'ai plus de son sur mon système (j'utilise ALSA, pas PulseAudio). Après une recherche sur Internet, j'ai trouvé ce message :
https://bbs.archlinux.org/viewtopic.php?pid=1184951
qui semble correspondre à mon problème, et dont la résolution passe par l'utilisation de systemd pour booter. Bref, comme il va falloir y passer, je me suis dis que c'était l’occasion. Mon rc.conf est à jour et "éclaté" comme il faut. J'édite donc le menu.lst de mon grub pour ajouter init=/usr/lib/systemd/systemd à la ligne du kernel et reboot. Et là, c'est le drame : plusieurs messages [FAILED] défilent, je n'ai pas le temps de noter les premiers. Ceux que je peux lire m'indiquent que systemd n'arrive pas à monter mes partages samba. Ça ne me semble pas vraiment grave. Par contre, systemd finit par s’arrêter sur :
avec comme erreur "timed out waiting for device /dev/mapper/array\2xdroot.device", et me lance un "emergency shell", débutant par une dizaine de nouvelles lignes d'erreurs me parlant de "Dependancy failed" sur divers services systemd. (D'ailleurs quand je tape reboot ou shutdown -r now dans ce shell, systemd n'arrive pas à rebooter et me sort un message d'erreur parlant de timeout sur /dev/initctl, c'est bien fait...).[...]
[OK] Mounted /boot
[OK] Reached target Sound Card
Bref, /dev/mapper/array-root c'est mon raid logiciel, déclaré ainsi dans /etc/fstab :
Le chiffrement (qui ne concerne pas le raid) se passe au niveau de l'initramfs, avec "encrypt" et "lvm2" dans les HOOKS de /etc/mkinitcpio.conf. Le chiffrement ne semble pas poser de problème, le mot de passe est bien demandé avant systemd (directive "cryptdevice" dans le menu.lst de grub). Je passe donc les détails de lvm concernant "vgroup" ici.# all vgroup is encrypted
/dev/mapper/vgroup-root / ext4 defaults 0 1
/dev/mapper/vgroup-home /home ext4 rw,nosuid,nodev,exec,auto,nouser,async 0 0
/dev/mapper/vgroup-swap none swap sw 0 0
# TODO: encrypt /tmp in ramfs
/dev/mapper/vgroup-tmp /tmp ext4 rw,nosuid,nodev,exec,auto,nouser,async 0 0
UUID=84b11fac-30fa-4c33-bb8d-b5fef0345aea /boot ext4 rw,nosuid,nodev,noexec,auto,nouser,async 0 0
# RAID
/dev/mapper/array-root /media/raid ext4 rw,exec,auto,nouser,async,nosuid,nodev 0 0
En ce qui concerne le raid, voilà mon fichier /etc/mdadm.conf :
J'ai donc un physical device lvm "/dev/md0" qui contient un logical device "/dev/array/root", ce qui donne le /dev/mapper/array-root qu'on retrouve dans /etc/fstab. Tout ça marche très bien depuis quelques années. Mon système est entièrement à jour et fonctionne sans aucun autre problème quand je n'ai pas à booter avec systemd.ARRAY /dev/md0 level=raid5 num-devices=4 metadata=0.90 spares=1 UUID=9acd4937:dae98ffe:7eb49b9a:eebb9f5f
J'ai suivis les pistes données ici https://bbs.archlinux.org/viewtopic.php?id=146982 sans succès.
Mes questions :
- Une idée de pourquoi systemd ne monte pas correctement le raid ?
- Comment puise-je faire enregistrer les messages de boot de systemd quelque part pour pouvoir tous les lire ?
Maintenant, le paragraphe philosophique :
Je trouve qu'ArchLinux a complétement perdu son principe "KISS" avec le temps, j'aimais bien la simplicité d'avoir toute la configuration dans rc.conf, comme j'aimais bien l'utilisation d'un système de boot éprouvé, fiable et simple. Suite à mon problème, j'ai effectué des recherches sur Internet et pu lire de nombreux autres problèmes divers et variés liés à systemd (pour donner un exemple, celui de quelqu'un qui passe à systemd, ça marche, une semaine plus tard il met à jour systemd et sa machine ne boot plus). Aujourd'hui, avec systemd, je n'ai aucune idée de comment bootera mon système, si un jour il arrive à booter, même si je ne suis pas contre le changement et que je veux bien apprendre comment ça marche. Le nombre de problèmes qu'apporte systemd par rapport au faible gain de performance (quelques secondes gagnées au démarrage, parfois) me confirme dans l'idée qu'ArchLinux aurait du refuser l'utilisation de ce bloatware. Debian est plus KISS qu'ArchLinux, actuellement.
Merci.