Proposition Scénario #29205
plantage du reconfigure après mise à jour de noyau
0%
Demandes liées
Historique
#1 Mis à jour par Thierry Bertrand il y a plus de 4 ans
Lors de Maj-Auto, il arrive que la suppression d'ancien noyau provoque ce type d'erreur :
Purge des fichiers de configuration de linux-modules-extra-4.15.0-52-generic (4.15.0-52.56) ... Purge des fichiers de configuration de linux-image-4.15.0-52-generic (4.15.0-52.56) ... rmdir: impossible de supprimer '/lib/modules/4.15.0-52-generic': Le dossier n'est pas vide
Le soucis c'est qu'apt génère une erreur qui remonte au reconfigure, qui plante...
Pire, sur un amon, le serveur se retrouve en mode openbar !
#2 Mis à jour par Daniel Dehennin il y a plus de 4 ans
Vous déployez un module par DKMS ou autre à tout hasard ?
#3 Mis à jour par Daniel Dehennin il y a plus de 4 ans
Je viens de l’avoir sur un scribe mais cela ne fait pas planter la commande reconfigure
qui continue correctement :
------------------------------------------- Début de configuration ------------------------------------------- ------------------------------------------- Préparation pour reconfigure ------------------------------------------- Restart Systemd service creoled [ OK ] ------------------------------------------- Gestion des paquets ------------------------------------------- Suppression des paquets Suppression des anciens noyaux et fichiers d'en-tête associés. Action remove pour root Lecture des listes de paquets… Construction de l'arbre des dépendances… Lecture des informations d'état… Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires : linux-modules-4.15.0-68-generic linux-modules-4.15.0-69-generic Veuillez utiliser « apt autoremove » pour les supprimer. Les paquets suivants seront ENLEVÉS : linux-headers-4.15.0-69* linux-headers-4.15.0-69-generic* linux-image-4.15.0-69-generic* linux-modules-extra-4.15.0-69-generic* 0 mis à jour, 0 nouvellement installés, 4 à enlever et 0 non mis à jour. Après cette opération, 267 Mo d'espace disque seront libérés. (Lecture de la base de données... 214655 fichiers et répertoires déjà installés.) Suppression de linux-headers-4.15.0-69-generic (4.15.0-69.78) ... Suppression de linux-headers-4.15.0-69 (4.15.0-69.78) ... Suppression de linux-modules-extra-4.15.0-69-generic (4.15.0-69.78) ... Suppression de linux-image-4.15.0-69-generic (4.15.0-69.78) ... /etc/kernel/postrm.d/initramfs-tools: update-initramfs: Deleting /boot/initrd.img-4.15.0-69-generic /etc/kernel/postrm.d/zz-update-grub: Sourcing file `/etc/default/grub' Sourcing file `/etc/default/grub.d/eole.cfg' Création du fichier de configuration GRUB… Image Linux trouvée : /boot/vmlinuz-4.15.0-71-generic Image mémoire initiale trouvée : /boot/initrd.img-4.15.0-71-generic Image Linux trouvée : /boot/vmlinuz-4.15.0-70-generic Image mémoire initiale trouvée : /boot/initrd.img-4.15.0-70-generic Found memtest86+ image: /memtest86+.elf Found memtest86+ image: /memtest86+.bin fait (Lecture de la base de données... 180407 fichiers et répertoires déjà installés.) Purge des fichiers de configuration de linux-modules-extra-4.15.0-69-generic (4.15.0-69.78) ... Purge des fichiers de configuration de linux-image-4.15.0-69-generic (4.15.0-69.78) ... rmdir: impossible de supprimer '/lib/modules/4.15.0-69-generic': Le dossier n'est pas vide Installation des paquets Vérification des paquets pour le conteneur root: eole-antivirus-pkg python-crontab eole-dhcp-pkg eole-fichier-primaire-pkg eole-fichier-common-pkg eole-web-pkg eole-bareoswebui-pkg eole-mysql-pkg eole-spamassassin-pkg eole-adminer-pkg eole-annuaire-pkg eole-courier-pkg eole-cups-pkg eole-proftpd-pkg eole-sympa-pkg eole-controle-vnc-pkg eole-exim-pkg eole-exim-auth-pkg eole-ejabberd-pkg eole-scribe-backend esbl-ocs-pkg eole-eoe-apps eole-eop-apps eole-websockify-pkg glpi glpi-plugin-ocsinventoryng roundcube-apps Action install pour root Pas de paquet pour l'action install […]
C’est une machine virtuelle qui n’a pas de module additionnelle.
Il est probable que cela soit dû à la non suppression du paquet linux-modules-4.15.0-69-generic
.
#4 Mis à jour par Daniel Dehennin il y a plus de 4 ans
J’ai testé avec le patch suivant :
diff --git a/creole/fonctionseole.py b/creole/fonctionseole.py
index ec4e21c5..ca122389 100644
--- a/creole/fonctionseole.py
+++ b/creole/fonctionseole.py
@@ -145,6 +145,10 @@ def get_kernel_to_remove():
to_keep = installed_kernels[-2:]
# tous les headers installés
installed_kernels.extend(get_version_filtered_pkgs(prefix='linux-headers'))
+ # tous les modules installés
+ installed_kernels.extend(get_version_filtered_pkgs(prefix='linux-modules'))
+ # tous les extra modules installés
+ installed_kernels.extend(get_version_filtered_pkgs(prefix='linux-modules-extra'))
# le noyau courant
to_keep.append('linux-image-{0}'.format(get_current_kernel()))
# l'éventuel noyau personnalisé
@@ -154,7 +158,13 @@ def get_kernel_to_remove():
# les headers correspondants aux noyaux à conserver
headers_to_keep = [k.replace('image', 'headers') for k in to_keep]
headers_to_keep.extend([h.replace('-generic', '') for h in headers_to_keep])
+ # les modules correspondants aux noyaux à conserver
+ modules_to_keep = [k.replace('image', 'modules') for k in to_keep]
+ # les extra modules correspondants aux noyaux à conserver
+ extra_modules_to_keep = [k.replace('image', 'modules-extra') for k in to_keep]
to_keep.extend(headers_to_keep)
+ to_keep.extend(modules_to_keep)
+ to_keep.extend(extra_modules_to_keep)
# on fait la différence
to_remove = list(set(installed_kernels) - set(to_keep))
return to_remove
J’ai réinstallé des vieux noyaux et modules et cela supprime bien tout, seulement cela n’empêche pas le message
[…] Suppression de linux-modules-4.15.0-66-generic (4.15.0-66.75) ... Suppression de linux-modules-4.15.0-68-generic (4.15.0-68.77) ... Suppression de linux-modules-4.15.0-69-generic (4.15.0-69.78) ... (Lecture de la base de données... 178630 fichiers et répertoires déjà installés.) Purge des fichiers de configuration de linux-modules-4.15.0-66-generic (4.15.0-66.75) ... dpkg: avertissement: lors de la suppression de linux-modules-4.15.0-66-generic, le répertoire « /lib/modules/4.15.0-66-generic » n'était pas vide, donc il n'a pas été supprimé Purge des fichiers de configuration de linux-modules-extra-4.15.0-66-generic (4.15.0-66.75) ... Purge des fichiers de configuration de linux-modules-extra-4.15.0-69-generic (4.15.0-69.78) ... Purge des fichiers de configuration de linux-image-4.15.0-66-generic (4.15.0-66.75) ... Purge des fichiers de configuration de linux-modules-4.15.0-68-generic (4.15.0-68.77) ... Purge des fichiers de configuration de linux-modules-4.15.0-69-generic (4.15.0-69.78) ... dpkg: avertissement: lors de la suppression de linux-modules-4.15.0-69-generic, le répertoire « /lib/modules/4.15.0-69-generic » n'était pas vide, donc il n'a pas été supprimé Purge des fichiers de configuration de linux-image-4.15.0-69-generic (4.15.0-69.78) ... Installation des paquets […]
Cela ne semble vraiment pas être la cause de plantage, APT considère que le répertoire devrait être vide et fait un rmdir
dessus mais comme le paquet -modules-extra
correspondant à la version n’est pas encore supprimé il ne peut pas. Le répertoire sera effectivement supprimé lors de la purge du paquet *-modules-extra*
.
Je ne pense pas ce que cela soit la raison du plantage de votre reconfigure.
#5 Mis à jour par Daniel Dehennin il y a plus de 4 ans
Je confirme que cela ne doit pas être la raison du plantage, les scripts postrm
utilisent bien un || true
afin de ne pas faire planter le script si le rmdir
ne fonctionne pas :
root@scribe:~# rgrep rmdir /var/lib/dpkg/info/linux-*.postrm /var/lib/dpkg/info/linux-image-4.15.0-70-generic.postrm: rmdir --ignore-fail-on-non-empty /usr/lib/linux/triggers /var/lib/dpkg/info/linux-image-4.15.0-70-generic.postrm: rmdir /lib/modules/$version || true /var/lib/dpkg/info/linux-image-4.15.0-71-generic.postrm: rmdir --ignore-fail-on-non-empty /usr/lib/linux/triggers /var/lib/dpkg/info/linux-image-4.15.0-71-generic.postrm: rmdir /lib/modules/$version || true
#6 Mis à jour par Daniel Dehennin il y a plus de 4 ans
- Lié à Tâche #29272: Les modules et extra modules des anciens noyaux ne sont pas supprimés ajouté
#7 Mis à jour par Daniel Dehennin il y a plus de 4 ans
J’ai fait une tâche rapide pour la suppression des paquets non pris en compte #29272.
#8 Mis à jour par Joël Cuissinat il y a environ un an
- Tracker changé de Scénario à Proposition Scénario
- Statut changé de Nouveau à Classée sans suite