la purge des anciens noyaux ne parvient pas à supprimer les anciens fichiers initrd

14

Je ne peux pas expliquer pourquoi ... Je suppose qu'il n'est pas sûr de simplement les supprimer manuellement, donc des conseils seraient appréciés. Voici un ls de mon répertoire / boot (évidemment, j'exécute le noyau 3.13.0-51):

-rw-r--r-- 1 root root  1164671 Apr 15 09:03 abi-3.13.0-51-generic
-rw-r--r-- 1 root root   165762 Apr 15 09:03 config-3.13.0-51-generic
drwxr-xr-x 5 root root     1024 Apr 30 14:33 grub
-rw-r--r-- 1 root root 22431280 Nov 26 14:16 initrd.img-3.13.0-36-generic.old-dkms
-rw-r--r-- 1 root root 22427261 Nov 26 14:16 initrd.img-3.13.0-37-generic.old-dkms
-rw-r--r-- 1 root root  9098067 Nov 26 18:00 initrd.img-3.13.0-39-generic.old-dkms
-rw-r--r-- 1 root root  9109727 Feb  5 15:22 initrd.img-3.13.0-40-generic.old-dkms
-rw-r--r-- 1 root root  9110419 Jan 18 02:29 initrd.img-3.13.0-43-generic.old-dkms
-rw-r--r-- 1 root root  9109659 Apr  5 23:11 initrd.img-3.13.0-44-generic.old-dkms
-rw-r--r-- 1 root root  9109097 Apr  5 23:01 initrd.img-3.13.0-46-generic.old-dkms
-rw-r--r-- 1 root root  5814104 Apr 30 14:13 initrd.img-3.13.0-48-generic
-rw-r--r-- 1 root root 22483793 Apr 30 13:52 initrd.img-3.13.0-48-generic.old-dkms
-rw-r--r-- 1 root root  9124331 Apr 30 14:28 initrd.img-3.13.0-49-generic.old-dkms
-rw-r--r-- 1 root root 22496134 Apr 30 13:59 initrd.img-3.13.0-51-generic
-rw-r--r-- 1 root root  4112384 Apr 30 12:16 initrd.img-3.13.0-51-generic.old-dkms
drwx------ 2 root root    12288 Aug  4  2014 lost+found
-rw-r--r-- 1 root root   176500 Mar 12  2014 memtest86+.bin
-rw-r--r-- 1 root root   178176 Mar 12  2014 memtest86+.elf
-rw-r--r-- 1 root root   178680 Mar 12  2014 memtest86+_multiboot.bin
-rw------- 1 root root  3389875 Apr 15 09:03 System.map-3.13.0-51-generic
-rw------- 1 root root  5818368 Apr 15 09:03 vmlinuz-3.13.0-51-generic
Christopher Scott
la source
Merde - désolé pour la mise en forme ...
Christopher Scott
Vous pouvez toujours modifier votre message et le mettre en forme en surlignant le texte et en cliquant sur l'icône au-dessus de la zone de texte. ou attendez que quelqu'un d'autre le fasse pour vous.
user68186
Je n'ai jamais eu de fichiers * .old-dkms. Qu'avez-vous fait pour les avoir?
jarno
@jarno Ils sont créés par le DKMS (Dynamic Kernel Management System) de Dell pour les modules non inclus dans le noyau principal. Par exemple nvidia, la bbsswitchsource lors de la compilation peut remplacer, /boot/initrd.imgalors faites une copie de sauvegarde qui peut être restaurée si elle dkmsest utilisée pour désinstaller les modifications. Je travaille aujourd'hui pour mettre à jour mon rm-kernelsscript bash pour les supprimer obsolètes .old-dkms.
WinEunuuchs2Unix
@jarno Selon ma réponse ci-dessous, la révision du script bash n'est plus nécessaire. Les gens ont juste besoin d'un processus manuel unique pour supprimer ceux /boot/*.old-dkmsqui appartiennent aux noyaux supprimés.
WinEunuuchs2Unix

Réponses:

10

Il est sûr de les supprimer manuellement. Il semble également qu'un rapport de bogue a été déposé: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=717584

Je peux rapporter la même chose ici avec le noyau 3.13.0-54 et le noyau 3.13.0-55.

-rw-r--r-- 1 root root 1.2M Jun 17 20:03 abi-3.13.0-55-generic
-rw-r--r-- 1 root root 1.2M Jun 19 05:04 abi-3.13.0-57-generic
-rw-r--r-- 1 root root 162K Jun 17 20:03 config-3.13.0-55-generic
-rw-r--r-- 1 root root 162K Jun 19 05:04 config-3.13.0-57-generic
drwxr-xr-x 5 root root  12K Jul 11 15:54 grub
-rw-r--r-- 1 root root  11M Jul  7 21:37 initrd.img-3.13.0-54-generic.old-dkms
-rw-r--r-- 1 root root  27M Jul  4 13:37 initrd.img-3.13.0-55-generic
-rw-r--r-- 1 root root  27M Jul  4 13:37 initrd.img-3.13.0-55-generic.old-dkms
-rw-r--r-- 1 root root  27M Jul  6 18:28 initrd.img-3.13.0-57-generic
-rw-r--r-- 1 root root 173K Mar 12  2014 memtest86+.bin
-rw-r--r-- 1 root root 174K Mar 12  2014 memtest86+.elf
-rw-r--r-- 1 root root 175K Mar 12  2014 memtest86+_multiboot.bin
-rw------- 1 root root 3.3M Jun 17 20:03 System.map-3.13.0-55-generic
-rw------- 1 root root 3.3M Jun 19 05:04 System.map-3.13.0-57-generic
-rw------- 1 root root 5.6M Jun 17 20:03 vmlinuz-3.13.0-55-generic
-rw------- 1 root root 5.6M Jun 19 05:04 vmlinuz-3.13.0-57-generic
Nicomachus
la source
Merci pour le lien de bug. Après l'avoir examiné, j'ai découvert qu'un correctif avait été fait en amont en avril 2017. Cela m'a évité de réviser un script bash comme je l'ai répondu ci-dessous.
WinEunuuchs2Unix
Oui! En fait, je viens de remarquer ce matin que ces fichiers old-dkms étaient supprimés avec succès maintenant. Belle coïncidence là-bas.
Nicomachus
@ WinEunuuchs2Unix oh, il semble que mon correctif soit parvenu à une version d'Ubuntu. Le rapport de bogue Launchpad respectif est ici . Quelle version de dkms utilisez-vous?
jarno
@jarno Actuellement, je suis en cours d'exécution, 2.2.0.3mais je n'ai aucune idée de la version en cours d'exécution lorsque les initrd.img*.old-dkmsfichiers obsolètes ont été laissés.
WinEunuuchs2Unix
@ WinEunuuchs2Unix dkms 2.2.0.3-1.1ubuntu5.14.04.9 (dans Ubuntu 14.04) ne semble pas avoir le correctif. Même 16.10 utilise la version 2.2.0.3. Je ne sais donc pas ce qui a supprimé les fichiers .old-dkms de votre système.
jarno
3

Vous pouvez exécuter la commande rm /boot/*.old-dkmsavec les privilèges root. Cependant, assurez-vous que les fichiers * .old-dkms supprimés ne sont pas nécessaires aux anciens noyaux que vous avez peut-être installés. Vous pouvez voir une liste de vos noyaux actuellement installés en exécutant dpkg-query -l "linux-image-[0-9]*" | grep -e "^ii".

Devyn Collier Johnson
la source
0

Je prévoyais de modifier mon rm-kernelsscript bash pour supprimer ces anciennes sauvegardes si le noyau a été supprimé avec sudo apt purge *<kernel_version>*. Cependant, lors de la recherche de rapports de bogues, j'ai trouvé que cela avait été corrigé en amont en avril 2017.

Si cela ne vous dérange pas d'exécuter des applications GUI en tant que root, vous pouvez également utiliser pkexec nautiluspour trouver des sauvegardes obsolètes à supprimer:

boot-initrd.img.old-dkms

Sur mon système Nautilus révèle les versions du noyau 4.4.8, 4.9.21et 4.10.10sont installés et peuvent utiliser des .old-dkmssauvegardes. Les copies en surbrillance sont des sauvegardes obsolètes que j'ai supprimées.

REMARQUE: pkexec nécessite la configuration du kit de stratégie. Il est conçu pour remplacer gksuet gksudoque vous verrez référencé plusieurs fois dans les messages historiques.

WinEunuuchs2Unix
la source