Problème avec le paquet module-init-tools pendant un upgrade
Lors d'un upgrade (changement de version d'une distribution), il n'est pas rare d'avoir des problèmes, par exemple avec un paquet et ses dépendances, ou encore aptitude ou apt qui n'arrive pas à upgrader un paquet. Malheureusement; j'ai été confronté à ce second cas, j'ai upgradé une debian etch vers une lenny sur une machine et j'ai eu le droit à un upgrade pas fini à cause du paquet module-init-tools. Ce paquet a une priorité "importante" mais n'est pas installé par defaut. Mais il vaut mieux ne pas avoir ce paquet cassé si il est installé !
Ce paquet posait donc quelques problèmes (assez importants d'ailleurs), voici le type d'erreur que je recevais :
Setting up module-init-tools (3.4-1) ...
dpkg-divert: rename involves overwriting `/sbin/lsmod' with.
different file `/sbin/lsmod.Lmodutils', not allowed.
dpkg: error processing module-init-tools (--configure):.
subprocess post-installation script returned error exit status 2.
dpkg: dependency problems prevent configuration of initramfs-tools:.
initramfs-tools depends on module-init-tools; however:.
Package module-init-tools is not configured yet..
dpkg: error processing initramfs-tools (--configure):.
dependency problems - leaving unconfigured
J'ai lu quelques reports de bugs à ce sujet, mais aucune réponse dans les reports ne résoud vraiment le problème... J'ai donc testé quelques trucs (à mes risques et périls !) et j'ai finalement trouvé une solution, plus ou moins propre mais qui fonctionne et qui ne laisse pas de traces après.
La solution est de supprimer le fichier lsmod.Lmodutils dans /sbin/. Mais après avoir supprimé lsmod.Lmodutils, j'ai eu le droit aux mêmes erreurs avec les fichiers /sbin/rmmod.Lmodutils et /sbin/modprobe.Lmodutils, supprimez-les également. Refaites ensuite un aptitude (ou apt) upgrade, tout devrait revenir à la normale et l'upgrade devrait se termnier.
A l'occasion, je rapporterai ce bug sur bugs.debian.org, la correction du bug pourrait peut-être aider d'autres administrateurs à l'avenir à ne pas le rencontrer.