«

»

juil 07

Petite leçon d’utilisation d’Archlinux : Ne jamais forcer une mise à jour…

Il est une règle d’or sur Archlinux : il ne faut jamais forcer la main à pacman. S’il veut pas faire une mise à jour, faut l’écouter. D’ailleurs, c’est vrai pour les autres distributions.

L’exemple parfait est une énorme connerie que j’ai fait cet après-midi. Une nouvelle version de test de la glibc 2.16 était disponible. Or une des nouveautés de cette version, c’est le remplacement de /lib par un lien symbolique vers /usr/lib, surement pour une raison lié à systemd.

Ayant un logiciel qui avait installé des liens dans le répertoire /lib, la mise à jour a raté, car un logiciel y avait laissé des petits… J’ai commis l’erreur de forcer la mise à jour, ce qui m’a planté en beauté le système, le noyau ne retrouvant plus ses petits.

J’ai commis une deuxième erreur : ouvrir un bug alors que j’avais fait la connerie. Après une remontée de bretelles justifiée, ayant eu une meilleure idée, celle de poster sur la liste arch-general, j’ai eu la solution par Tom Gundersen. Petite note préliminaire : à n’appliquer que si vous ne pouvez pas faire autrement. Je ne garantis pas qu’elle fonctionnera partout.

Je la donne ici, histoire de pouvoir être utile à des personnes ayant le même problème. Il faut avoir une clé ou un CD-RW avec une ISO d’archlinux, l’idéal étant une archboot récente. On démarre dessus, et on quitte l’installateur.

Il faut monter la partition root – dans mon cas /dev/sda5 – sous /mnt


mount /dev/sda5 /mnt

Ensuite, on entre dans /mnt, et on vire /lib.


cd /mnt
rm -rf /lib

Et enfin, on applique le lien qui permet de solutionner le problème.


ln -sf /usr/lib lib

Et tout ce merdier à cause d’un paquet – je pensais au début à yaourt, mais finalement, non, c’était kvm-git (vilain paquet !) qui m’avait laissé quelques règles dans /lib/udev :/

En tout cas, j’en ai été bon pour une sacrée claque et une frayeur que je ne suis pas prêt d’oublier. Morale de l’histoire : ne pas forcer une mise à jour, et lire les notes de publications avec minutie. Même si je sens que le passage de la glibc 2.16 sur Archlinux en version stable ne sera pas de tout repos.

Lien Permanent pour cet article : http://www.terranux.net/?p=858