Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?
15.07.2020, 14:03:05

.
Einloggen mit Benutzername, Passwort und Sitzungslänge

Mitglieder
Statistiken
  • Beiträge insgesamt: 670999
  • Themen insgesamt: 54379
  • Heute online: 432
  • Am meisten online: 2287
  • (22.01.2020, 19:20:24)
Benutzer Online

Autor Thema: [gelöst]  Korrekte Deinstallation nicht mehr benötigter Kernel  (Gelesen 4836 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

[gelöst] Re: Korrekte Deinstallation nicht mehr benötigter Kernel
« Antwort #45 am: 23.12.2017, 13:42:16 »
Hi :)
du hast die kernel nicht über die aktualisierungsverwaltung entfernt!?
sonst wäre normalerweise alles weg..

Nein, ich bevorzuge den Weg übers Terminal. Ich bin aber dankbar für die vielen verschiedenen Hinweise. :)

Gruene-Ente

Re: Korrekte Deinstallation nicht mehr benötigter Kernel
« Antwort #46 am: 23.12.2017, 16:42:12 »
habs gerade mal getestet
dpkg -l 'linux-[ihs]*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\([-0-9]*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | tee zu_entfernende_Kernel
cat zu_entfernende_Kernel | xargs sudo apt-get -y purge
rm zu_entfernende_Kernel
Dabei werden bis auf den aktuell laufenden Kernel alle Anderen "ohne Nachfrage" wegen "-y" entfernt. Das "-y" in der Befehlszeile: xargs sudo apt-get -y sollte man sicherheitshalber entfernen.

Stand installierte Kernel vorher:dpkg -l | grep linux-[ghit]
ii  linux-headers-4.4.0-104                      4.4.0-104.127                                all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-104-generic              4.4.0-104.127                                amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-53                       4.4.0-53.74                                  all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-53-generic               4.4.0-53.74                                  amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-104-generic                4.4.0-104.127                                amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-53-generic                 4.4.0-53.74                                  amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-104-generic          4.4.0-104.127                                amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-53-generic           4.4.0-53.74                                  amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
Stand Verzeichnis:ls /lib/modules
4.4.0-104-generic  4.4.0-53-generic

Terminal Ablauf zum Entfernen:
dpkg -l 'linux-[ihs]*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\([-0-9]*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | tee zu_entfernende_Kernel
linux-headers-4.4.0-53
linux-headers-4.4.0-53-generic
linux-image-4.4.0-53-generic
linux-image-extra-4.4.0-53-generic
helmut@K52jc-lm18 ~ $ cat zu_entfernende_Kernel | xargs sudo apt-get -y purge
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Die folgenden Pakete werden ENTFERNT:
  linux-headers-4.4.0-53* linux-headers-4.4.0-53-generic* linux-image-4.4.0-53-generic* linux-image-extra-4.4.0-53-generic*
0 aktualisiert, 0 neu installiert, 4 zu entfernen und 2 nicht aktualisiert.
Nach dieser Operation werden 296 MB Plattenplatz freigegeben.
(Lese Datenbank ... 258654 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von linux-headers-4.4.0-53-generic (4.4.0-53.74) ...
Entfernen von linux-headers-4.4.0-53 (4.4.0-53.74) ...
Entfernen von linux-image-extra-4.4.0-53-generic (4.4.0-53.74) ...
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
run-parts: executing /etc/kernel/postinst.d/dkms 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
Error! echo
Your kernel headers for kernel 4.4.0-53-generic cannot be found at
/lib/modules/4.4.0-53-generic/build or /lib/modules/4.4.0-53-generic/source.
Error! echo
Your kernel headers for kernel 4.4.0-53-generic cannot be found at
/lib/modules/4.4.0-53-generic/build or /lib/modules/4.4.0-53-generic/source.
Error! echo
Your kernel headers for kernel 4.4.0-53-generic cannot be found at
/lib/modules/4.4.0-53-generic/build or /lib/modules/4.4.0-53-generic/source.
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
update-initramfs: Generating /boot/initrd.img-4.4.0-53-generic
Warning: No support for locale: de_DE.utf8
W: mdadm: /etc/mdadm/mdadm.conf defines no arrays.
run-parts: executing /etc/kernel/postinst.d/pm-utils 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
run-parts: executing /etc/kernel/postinst.d/unattended-upgrades 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
run-parts: executing /etc/kernel/postinst.d/zz-update-grub 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
Grub-Konfigurationsdatei wird generiert …
Linux-Abbild gefunden: /boot/vmlinuz-4.4.0-104-generic
initrd-Abbild gefunden: /boot/initrd.img-4.4.0-104-generic
Linux-Abbild gefunden: /boot/vmlinuz-4.4.0-53-generic
initrd-Abbild gefunden: /boot/initrd.img-4.4.0-53-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
Windows 10 (loader) auf /dev/sda1 gefunden
Skipped Windows Recovery Environment (loader) on /dev/sdb1 by user request.
Windows 7 (loader) auf /dev/sdb2 gefunden
erledigt
Löschen der Konfigurationsdateien von linux-image-extra-4.4.0-53-generic (4.4.0-53.74) ...
Entfernen von linux-image-4.4.0-53-generic (4.4.0-53.74) ...
Examining /etc/kernel/prerm.d.
run-parts: executing /etc/kernel/prerm.d/dkms 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
dkms: removing: bbswitch 0.8 (4.4.0-53-generic) (x86_64)

-------- Uninstall Beginning --------
Module:  bbswitch
Version: 0.8
Kernel:  4.4.0-53-generic (x86_64)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

bbswitch.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.4.0-53-generic/kernel/drivers/acpi/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.

depmod....

DKMS: uninstall completed.
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
update-initramfs: Deleting /boot/initrd.img-4.4.0-53-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
Grub-Konfigurationsdatei wird generiert …
Linux-Abbild gefunden: /boot/vmlinuz-4.4.0-104-generic
initrd-Abbild gefunden: /boot/initrd.img-4.4.0-104-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
Windows 10 (loader) auf /dev/sda1 gefunden
Skipped Windows Recovery Environment (loader) on /dev/sdb1 by user request.
Windows 7 (loader) auf /dev/sdb2 gefunden
erledigt
Löschen der Konfigurationsdateien von linux-image-4.4.0-53-generic (4.4.0-53.74) ...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-53-generic /boot/vmlinuz-4.4.0-53-generic
dpkg: Warnung: Während Entfernens von linux-image-4.4.0-53-generic ist Verzeichnis »/lib/modules/4.4.0-53-generic« nicht leer, wird daher nicht gelöscht
die Fehlermeldung:Your kernel headers for kernel 4.4.0-53-generic cannot be found at
/lib/modules/4.4.0-53-generic/build or /lib/modules/4.4.0-53-generic/source.
irritiert mich, /lib/modules/4.4.0-53-generic/build ist vorhanden, was fehlt ist lib/modules/4.4.0-53-generic/source. Wird deshalb das Verzeichnis /lib/modules/4.4.0-53-generic nicht gelöscht?

Stand installierte Kernel danach:dpkg -l | grep linux-[ghit]
ii  linux-headers-4.4.0-104                      4.4.0-104.127                                all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-104-generic              4.4.0-104.127                                amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-104-generic                4.4.0-104.127                                amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-104-generic          4.4.0-104.127                                amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
Stand des Verzeichnisses:
ls /lib/modules
4.4.0-104-generic  4.4.0-53-generic
verstehe ich jetzt nicht, wenn der Kernel gelöscht wurde warum dann nicht /lib/modules/4.4.0-53-generic? Also doch nicht so ganz Top.
Da funktioniert das hier im Bord vorgestellte Script vom LM-User: {°-°} sauberer: https://www.linuxmintusers.de/index.php?topic=41568.msg651574#msg651574
« Letzte Änderung: 23.12.2017, 21:08:38 von kuehhe1 »

Re: Korrekte Deinstallation nicht mehr benötigter Kernel
« Antwort #47 am: 23.12.2017, 18:16:51 »
Off-Topic:
"Ja" sagen nur gegen Unterschrift – sonst: #me too !   :D

Re: Korrekte Deinstallation nicht mehr benötigter Kernel
« Antwort #48 am: 23.12.2017, 20:12:25 »
Ich habe dasgleiche auch beim PC meines Mannes gemacht. Hat 1a geklappt, bin sehr begeistert, zumal bei seinem PC der Platz ja sehr viel begrenzter ist als bei mir.

Re: Korrekte Deinstallation nicht mehr benötigter Kernel
« Antwort #49 am: 23.12.2017, 20:54:16 »
Code: [Auswählen]

dpkg -l 'linux-[ihs]*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\([-0-9]*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | tee zu_entfernende_Kernel
cat zu_entfernende_Kernel | xargs sudo apt-get -y purge
rm zu_entfernende_Kernel
Habe ich zufällig gestern Abend in LMDE2 getestet - natürlich ohne  -y, aber mit -s.
Der einzige vorhandene Kernel wurde rausgeschrieben und sollte gelöscht werden. Super. ::) ;D
« Letzte Änderung: 23.12.2017, 21:00:48 von geobart »

Re: Korrekte Deinstallation nicht mehr benötigter Kernel
« Antwort #50 am: 23.12.2017, 22:04:49 »
tztz, Das ist ja auch nicht für LMDE 2 gedacht.

Ich habe mir das Skript von siduction mal wieder angeschaut. Auch dies fängt wie andere Skripte im Verzeichnis /boot an und sucht nach vmlinuz-*
Zitat
   for v in /boot/vmlinuz-*; do
      Kernel="$(basename $v | sed s/vmlinuz-//)"
Witziger weise kommt dann eine Suche nach dem Metapaket
Zitat
         meta_package="$(echo $(grep-status \
            -F Depends -s Package \
            linux-image-${Kernel}) | cut -d: -f 2)"
Hier wird mittels grep-status die Datei /var/lib/dpkg/status durchsucht nach Paketen, die als Abhängigkeit den gerade untersuchten linux-image-${Kernel}) enthält. Warum nenne ich das witzig? Weil Mint kein Metapaket installiert hat und nur von installierten Paketen die Infos in der Datei /var/lib/dpkg/status landen. Es wird aber linux-image-extra-${Kernel}) gefunden. Das sollte aber auf die Funktionsweise sonst keinen Einfluss haben.
Ausprobiert habe ich es immer noch nicht, da ich mir gerade die Abhängigkeiten des Paketes nicht installieren möchte. Außerdem stört mich, dass für jeden markierte Kernel in der Liste das Entfernen separat gestartet wird. Im extrem Fall von zehn installierten Kerneln und zweien ,die erhalten bleiben, wird GRUB also acht mal erneut konfiguriert. :o


Als hübsche Idee, die den aktiven und ggf einen Vorgänger behält, habe ich etwas zusammengestellt.
dpkg-query -W -f='${Package}\n' > /dev/shm/datei; grep $(grep linux-image-[0-9] /dev/shm/datei | cut -d- -f3-4 | grep -v $(uname -r | cut -d- -f1-2) | sort -V | head -n -1) /dev/shm/datei | xargs apt-get purge --simulateWarum ggf. Vorgänger? Wenn im Einzelfall mehrere Kernel-Linien installiert sind, ist es schwer in wenigen Zeilen eine Automatik zu schreiben, die alles berücksichtigt. Wem das Ergebnis trotzdem gefällt, tauscht am Ende --simulate gegen -y.

Demnächst werde ich noch ein Skript vorstellen, das diesmal nur zum Aufräumen dient und mit dialog, welches bei Mint schon installiert ist, abfragt, was passieren soll. Die pre-alpha läuft schon:
Purge Old Kernels With Dialog
 ──────────────────────────────────────────────────────────────────────────────
         ┌────────────────────Kernel entfernen──────────────────────┐
         │ Der aktive Kernel 4.10.0-42 wird nicht zum Entfernen     │ 
         │ angeboten.                                               │ 
         │                                                          │ 
         │    Welche der nachfolgend gelisteten Kernel sollen       │ 
         │ entfernt werden?                                         │ 
         │ ┌──────────────────────────────────────────────────────┐ │ 
         │ │                   [ ] 4.10.0-40                      │ │ 
         │ │                   [*] 4.8.0-53                       │ │ 
         │ │                                                      │ │ 
         │ │                                                      │ │ 
         │ │                                                      │ │ 
         │ │                                                      │ │ 
         │ │                                                      │ │ 
         │ └──────────────────────────────────────────────────────┘ │ 
         │                                                          │ 
         │                                                          │ 
         ├──────────────────────────────────────────────────────────┤ 
         │             <   OK    >       <Abbrechen>                │ 
         └──────────────────────────────────────────────────────────┘

Re: Korrekte Deinstallation nicht mehr benötigter Kernel
« Antwort #51 am: 23.12.2017, 22:19:25 »
Als hübsche Idee, die den aktiven und ggf einen Vorgänger behält, habe ich etwas zusammengestellt.
Code: [Auswählen]

dpkg-query -W -f='${Package}\n' > /dev/shm/datei; grep $(grep linux-image-[0-9] /dev/shm/datei | cut -d- -f3-4 | grep -v $(uname -r | cut -d- -f1-2) | sort -V | head -n -1) /dev/shm/datei | xargs apt-get purge --simulate
Die hübsche Idee mal so (ohne sudo) eingegeben, Mint 18.3 64 Cinn, seit jetzt wohl 8 Minuten einen blinkenden weißen Block. Abwarten? ;)

Re: Korrekte Deinstallation nicht mehr benötigter Kernel
« Antwort #52 am: 23.12.2017, 23:25:22 »
Tja, das Aus für die hübsche Idee. Wenn schon aufgeräumt ist, dann klemmt's. :'(

Re: Korrekte Deinstallation nicht mehr benötigter Kernel
« Antwort #53 am: 23.12.2017, 23:29:02 »
Die Kernelverwaltung ist schon ein geiles Mint-Tool.. ;) ;D