wie wird man den alten Kernel los?

Alles rund um die Installation Eures Linuxsystems, sowie die Updatefunktionen des Systems und das Paketmanagement

Moderator: Moderatoren

Antworten
Bernie
Newbie
Newbie
Beiträge: 22
Registriert: 24. Jul 2005, 13:54
Wohnort: 9°13.5´E/48°49.7´N

wie wird man den alten Kernel los?

Beitrag von Bernie » 23. Aug 2006, 07:34

Hallo zusammen,
habe mit smart ein Kernelupdate durchgeführt. Nun erscheint im Grub-Bootmenue ganz unten auch der alte Kernel. Wenn ich in smart den alten Kernel lösche, ist dann auch der Eintrag im Bootmenue weg, oder führt dies zu weiteren Problemen? Der neue Kernel funktioiert tadellos und ich möchte auch den neuen ATI-Treiber zu meinem neuen default-kernel installieren. Dieser soll dann, wenn ich das richtig verstanden habe, automatisch wenn ein neuer Kernel verfügbar ist ebenfals von der ATI-Seite über rpm-md geupdatet werden?
Hat jemand diesbezüglich schon Erfahrungen sammeln können?

Greetz Bernie
SUSE 10.1; KDE 3.5.1a; P IV@2,67;

Werbung:
Bernie
Newbie
Newbie
Beiträge: 22
Registriert: 24. Jul 2005, 13:54
Wohnort: 9°13.5´E/48°49.7´N

Beitrag von Bernie » 23. Aug 2006, 07:43

edit: ich vergas
von Kernel 2.6.16.13-4 default auf 2.6.16.21-0.13 default upgedatet!
SUSE 10.1; KDE 3.5.1a; P IV@2,67;

Benutzeravatar
admine
Administrator
Administrator
Beiträge: 8744
Registriert: 15. Feb 2004, 21:13
Wohnort: Dresden
Kontaktdaten:

Re: wie wird man den alten Kernel los?

Beitrag von admine » 23. Aug 2006, 14:49

Bernie hat geschrieben: Nun erscheint im Grub-Bootmenue ganz unten auch der alte Kernel. Wenn ich in smart den alten Kernel lösche, ist dann auch der Eintrag im Bootmenue weg,
Und selbst wenn der Eintrag noch da ist, dann kannst du den selbst in der /boot/grub/menu.lst löschen.

Hauptsache ist, du bist dir wirklich sicher was du tust, bevor du den "alten" Kernel löscht ;)
..:: unser Linux-Club-Wiki ::..
-------------------------
..:: Deutsche Mugge ::..
-------------------------

Freecoffee
Guru
Guru
Beiträge: 1750
Registriert: 29. Sep 2004, 17:00
Wohnort: Bayern

Beitrag von Freecoffee » 23. Aug 2006, 16:38

Wenn du den alten Kernel mit smart entfernst, ist hinterher auch der Bootloader-Eintrag weg.
Aber was zum Henker hat das im Grafikkarten-Forum verloren???
Gruß, Freecoffee

traffic
Guru
Guru
Beiträge: 2750
Registriert: 13. Feb 2005, 05:50

Beitrag von traffic » 23. Aug 2006, 16:44

Es hat nichts im Grafikkarten-Forum verloren.

Aber trotzdem: Besonders toll ist der Tipp mit der menu.lst nicht. Mach das nicht. Wenn Du das machst, bleibt der olle Kernel trotzdem in der RPM-Datenbank drin und wird Probleme verursachen.

Lösch ihn aus der RPM-Datenbank. Dazu bitte erst mit

Code: Alles auswählen

rpm -qa | grep kernel
alle installierten Kernels abfragen und das Ergebnis posten!

Damit smart diesen hochgefährlichen Unsinn in Zukunft nicht mehr macht, bitte auf die allerneueste Version updaten und anschließend mit

Code: Alles auswählen

smart config --remove package-flags
alle Multi-Version-Flags löschen.

Achtung: Das bringt nur dann etwas, wenn smart auf die neueste Version aktualisiert ist, sonst kommt der Mist automatisch wieder zurück.

Z-City
Hacker
Hacker
Beiträge: 649
Registriert: 17. Jan 2005, 15:16
Wohnort: Kreis Karlsruhe
Kontaktdaten:

Beitrag von Z-City » 23. Aug 2006, 20:38

[Verschieb nach Kernel-Hacking]

traffic
Guru
Guru
Beiträge: 2750
Registriert: 13. Feb 2005, 05:50

Re: wie wird man den alten Kernel los?

Beitrag von traffic » 23. Aug 2006, 22:44

Nur mal noch eine Klarstellung zu dieser Frage hier:
Bernie hat geschrieben:Dieser soll dann, wenn ich das richtig verstanden habe, automatisch wenn ein neuer Kernel verfügbar ist ebenfals von der ATI-Seite über rpm-md geupdatet werden?
Ja, wenn der alte Kernel aus der RPM-Datenbank entfernt wird und nur der neue drin steht, dann wird das so funktionieren.

Wenn nicht, dann kann es passieren, dass smart beim nächsten Kernel-Update wieder den neuesten Kernel zum alten dazuinstalliert, aber nicht den neuesten ATI-Treiber.

=> Autsch. Warum, dürfte klar sein. ;)

Mit einem alten Kernel in der RPM-Datenbank gibt es keine Möglichkeit zu überprüfen, ob alle Abhängigkeiten vom neuesten Kernel erfüllt sind, sondern es kann nur sichergestellt werden, dass sie von irgendeinem Kernel erfüllt sind.

Also beseitige unbedingt den alten Kernel, und zwar nicht nur aus der menu.lst, sondern auch aus der RPM-Datenbank, und bereinige die smart-Konfiguration, damit es nicht wieder passiert.

Bernie
Newbie
Newbie
Beiträge: 22
Registriert: 24. Jul 2005, 13:54
Wohnort: 9°13.5´E/48°49.7´N

Beitrag von Bernie » 24. Aug 2006, 12:49

@ traffic

habe gestern Abend das smart-package 42.8 draufgespielt. Dürfte das neueste sein. Werde heute Abend mal meine installierten Kernel posten.

@ Freecoffee & Z-City
Meiner Meinung nach gehört mein Post schon hier her, geht es mir doch um den automatischen Update der ATI-fglrx-treiber, und eben hier um das Problem, welches sich durch die Benutzung von SmartPM ergab.
Hätte sicherlich auch im Smart - APT - YUM - YAST-Forum gepasst!

Aber trotz alledem, danke für die rege Beteiligung und die sehr konkreten Hilfestellungen von traffic! :lol:

Bernie
SUSE 10.1; KDE 3.5.1a; P IV@2,67;

Bernie
Newbie
Newbie
Beiträge: 22
Registriert: 24. Jul 2005, 13:54
Wohnort: 9°13.5´E/48°49.7´N

Beitrag von Bernie » 24. Aug 2006, 15:27

@ traffic

hallo, hier ist der Auszug:

Code: Alles auswählen

bvoelke@linux-izrw:~> rpm -qa | grep kernel
kernel-default-2.6.16.21-0.13
kernel-default-2.6.16.13-4
bvoelke@linux-izrw:~>
werde jetzt mit smart den kernel-default-2.6.16.13-4 entfernen und
dann die package-flags ebenfalls-

Bernie
SUSE 10.1; KDE 3.5.1a; P IV@2,67;

traffic
Guru
Guru
Beiträge: 2750
Registriert: 13. Feb 2005, 05:50

Beitrag von traffic » 24. Aug 2006, 15:31

OK, dann einfach den alten Kernel deinstallieren

Code: Alles auswählen

rpm -e kernel-default-2.6.16.13-4
und folgendermaßen die Multi-Version-Flags löschen:

Code: Alles auswählen

smart config --remove package-flags
Anschließend zur Überprüfung nochmal die Ausgabe von

Code: Alles auswählen

smart config --show package-flags
posten.

Bernie
Newbie
Newbie
Beiträge: 22
Registriert: 24. Jul 2005, 13:54
Wohnort: 9°13.5´E/48°49.7´N

Beitrag von Bernie » 24. Aug 2006, 16:31

...so, jetzt wirds irgendwie spannend!

ohne Worte

Code: Alles auswählen

linux-izrw:/home/bvoelke # rpm -e kernel-default-2.6.16.13-4
error: Failed dependencies:
        kernel(fs) = 1562a54678b1506f is needed by (installed) novfs-kmp-default-1.2.0_2.6.16.13_4-10.i586
        kernel(kernel) = 3e632392437173c4 is needed by (installed) novfs-kmp-default-1.2.0_2.6.16.13_4-10.i586
        kernel(mm) = 3d6b445a058e7d3f is needed by (installed) novfs-kmp-default-1.2.0_2.6.16.13_4-10.i586
linux-izrw:/home/bvoelke #

heißt das, dass ich diese Pakete erst auf den neueren Kernel updaten muß, um dann den "alten" mit erfüllten Abhängigkeiten deinstallieren zu können? :roll:
SUSE 10.1; KDE 3.5.1a; P IV@2,67;

traffic
Guru
Guru
Beiträge: 2750
Registriert: 13. Feb 2005, 05:50

Beitrag von traffic » 24. Aug 2006, 16:40

Genau das heißt es, und genau deswegen ist dieser MultiKernel-Kram hochgefährlicher Unsinn: Es bleiben Leichen zurück und der Benutzer hat keine Chance, sie zu erkennen.

Allerdings hast Du Glück: novfs ist ein Modul, das Du garantiert nicht brauchst, also putz es einfach mit weg und gut ist.

Code: Alles auswählen

rpm -e kernel-default-2.6.16.13-4 novfs-kmp-default-1.2.0_2.6.16.13_4-10
smart config --remove package-flags
smart config --show package-flags

Bernie
Newbie
Newbie
Beiträge: 22
Registriert: 24. Jul 2005, 13:54
Wohnort: 9°13.5´E/48°49.7´N

Beitrag von Bernie » 24. Aug 2006, 16:54

so, jetzt denke ich, dass die Geschichte gut ausgeht!

Code: Alles auswählen

linux-izrw:/home/bvoelke # rpm -e kernel-default-2.6.16.13-4
linux-izrw:/home/bvoelke # smart config --remove package-flags

linux-izrw:/home/bvoelke # smart config --show package-flgs
WARNUNG!: Option 'package-flgs' nicht gefunden.

linux-izrw:/home/bvoelke # smart config --show package-flags
{'multi-version': {'kernel-source': [(None, None)], 'java': [(None, None)]}}

linux-izrw:/home/bvoelke #
Was meinst Du, traffic?

Oder soll ich das novfs-Modul ( habe ich upgedatet) trotzdem platt machen?
SUSE 10.1; KDE 3.5.1a; P IV@2,67;

traffic
Guru
Guru
Beiträge: 2750
Registriert: 13. Feb 2005, 05:50

Beitrag von traffic » 24. Aug 2006, 17:06

So ist es wunderbar.
Bernie hat geschrieben:Oder soll ich das novfs-Modul ( habe ich upgedatet) trotzdem platt machen?
Ja oder nein, such Dir was aus...

Wichtig ist nur, dass die alte Version weg ist. Ob Du stattdessen eine neuere Version oder gar keine hast, ist ziemlich wurscht (Du wirst novfs nie brauchen, es beißt aber auch nicht, wenn es da ist, solange die installierte Version die neueste ist).

Benutzeravatar
Gimpel
Guru
Guru
Beiträge: 1983
Registriert: 11. Feb 2004, 13:58
Wohnort: Mjunik .... "no a hoibe, resi!"
Kontaktdaten:

Beitrag von Gimpel » 24. Aug 2006, 17:43

Bernie hat geschrieben:@ Freecoffee & Z-City
Meiner Meinung nach gehört mein Post schon hier her, geht es mir doch um den automatischen Update der ATI-fglrx-treiber, und eben hier um das Problem, welches sich durch die Benutzung von SmartPM ergab.
Hätte sicherlich auch im Smart - APT - YUM - YAST-Forum gepasst!
^^ sehe ich auch so. Hier gehts eher um die Bedienung von rpm und dem smart-zeugs, als um den kernel.. der funktioniert ja offensichtlich, und die graka ist ja auch nicht das problem.

Vielleicht kommt ja mal jemand hier dahinter dass "Update und Installation mi YaST" dem Titel nach überflüssig ist und sogesehen mit zu smart/apt/yum gehört. Ich würde das umbenennen in "Basisinstallation" o.Ä.

moved from kernel-hacking to smart/apt/yum etc
Zuletzt geändert von Gimpel am 24. Aug 2006, 17:47, insgesamt 1-mal geändert.
Bild on AMD Athlon64 X2 5600+|64bit|6GB DDR2 800MHz|nVidia GF 8500GT|2.6.29-rc1-moo1|BTRFS|KDE-4.2 SVN trunk + Compiz++|M-Audio Audiophile 2496
----
Bild

Bernie
Newbie
Newbie
Beiträge: 22
Registriert: 24. Jul 2005, 13:54
Wohnort: 9°13.5´E/48°49.7´N

Beitrag von Bernie » 24. Aug 2006, 17:47

So, dann werde ich demnächst noch mal versuchen, den neuen ATI-Treiber zu installieren.
Hatte nämlich nicht funktioiert!

Vielen Dank für die äusserst effektive Hilfe, im Speziellen an traffic!

Greetz
Bernie :wink:
SUSE 10.1; KDE 3.5.1a; P IV@2,67;

ubo_2001
Newbie
Newbie
Beiträge: 36
Registriert: 30. Dez 2004, 21:36
Wohnort: Gronau(Westfalen)

Beitrag von ubo_2001 » 1. Sep 2006, 22:39

Hallo zusammen,
ich hänge mich an diesen Thread dran, weil
ich das gleiche Problem, wie Bernie habe.
Der einzige Unterschied, ich habe eine NVidia
Grafikkarte, deren Treiber ich über Smart updaten wollte.
Im Bootmenue taucht jetzt auch der zusätzliche
title Vorheriger Kernel -- SUSE LINUX 10.1 auf.
Nur mit diesem Eintrag kann ich mein Suse 10.1 bis zum
Runlevel 5 durchstarten. Wähle ich den anderen Eintrag
aus komme ich nur bis zum Runlevel 3.

Ein fan@linux:~> rpm -qa | grep kernel ergibt folgende Ausgabe:

kernel-source-2.6.16.21-0.13
kernel-source-2.6.16.13-4
kernel-default-2.6.16.21-0.13
kernel-default-2.6.16.13-4

Jetzt komme ich ins Schleudern, denn den Kernel *21-0.13
hatte ich schon vorher drauf. Also ist downgradet worden?
Und der NVidia-Treiber ist trotzdem installiert worden.

Kann ich den 13-4 Kernel nach traffic mit:
rpm -e kernel-default-2.6.16.13-4
und
smart config --remove package-flags
deinstallieren?

Grüße ubo_2001

Suse 10.1 KDE 3.54

Kintobi
Newbie
Newbie
Beiträge: 11
Registriert: 21. Mär 2006, 13:04

Beitrag von Kintobi » 4. Sep 2006, 11:36

Moin, auch wenn der Thread sich in eine etwas andere Richtung bewegt, würde ich gerne etwas zu dem etwas alterem Post von traffic fragen:
traffic hat geschrieben:Genau das heißt es, und genau deswegen ist dieser MultiKernel-Kram hochgefährlicher Unsinn: Es bleiben Leichen zurück und der Benutzer hat keine Chance, sie zu erkennen.
Ist es nicht so, dass die Module für den entsprechenden Kernel sowieso in einem nach dem Kernel benannten Verzeichnis leigen. Deshalb ist es doch eigentlich egal, ob noch alte Module installiert sind, oder?
traffic hat geschrieben:Allerdings hast Du Glück: novfs ist ein Modul, das Du garantiert nicht brauchst, also putz es einfach mit weg und gut ist.

Code: Alles auswählen

rpm -e kernel-default-2.6.16.13-4 novfs-kmp-default-1.2.0_2.6.16.13_4-10
Die Inkonsistenz scheint mir eher durch die Manuelle Paketdeinstallation entstanden zu sein. Offensichtlich hat rpm die Abhängigkeiten nicht richtig geprüft und deshalb nicht gleich die Module zusammen mit dem Kernel rausgeworfen(so wie du es jetzt per Hand vorgeschlagen hast). Ich vermute dass das nicht passiert wäre, wenn man den alten Kernel z.B. mit smartpm rausgeworfen hätte. Aber das ist nur eine Vermutung. Kann das jemand bestätigen?
traffic hat geschrieben:

Code: Alles auswählen

smart config --remove package-flags
smart config --show package-flags
Ich war sehr überrascht, als smart nach

Code: Alles auswählen

smart update
smart upgrade
ohne nachfragen einen neuen Kernel installiert hat. Von debian bin ich einfach anderes gewohnt. Da wird 3x nachgefragt und der alte Kernel bleibt als Bootoption erhalten (falls der neue nicht korrekt läuft). Das finde ich auch eigentlich schöner. Vor allem hat smart dem laufendem Kernel die Module unter dem Hintern weggelöscht. Das finde ich schon etwas bedenklich.
Aber jetzt zu meiner Frage: Wenn man das Kernelupdate über Yast machen möchte und smart sich da raushalten soll, müsste man dann nicht

Code: Alles auswählen

smart flag --set lock kernel-default
die flags so setzen?

Kann jemand mit Sicherheit sagen welche Pakete zum Kernelupdate gehören, und welche nicht?

traffic
Guru
Guru
Beiträge: 2750
Registriert: 13. Feb 2005, 05:50

Beitrag von traffic » 8. Sep 2006, 21:31

- Mit der Verbindung zwischen Kernelversion und Modulen ist das etwas komplizierter. Die Module sind nicht genau einer bestimmten Kernelversion zugeordnet, sondern über Abhängigkeiten, die von der Kernelversion unabhängig sind, mit dem Kernel verbunden. Ob ein Modul zu einem bestimmten Kernel passt, bestimmt nicht die Versionsnummer, sondern die tatsächliche ABI.

- Die Module in den *-kmp-*-Paketen sind nicht in einem nach dem Kernel benannten Verzeichnis. Eigentlich sind sie in überhaupt keinem Verzeichnis, sondern sie werden bei der Installation in ein nach dem Kernel benanntes Verzeichnis verschoben/verlinkt, zu dem sie passen.

- Es ist nicht egal, ob noch alte Kernels oder alte Module installiert sind. Es ist sogar kontraproduktiv, wenn sie installiert sind, weil sie fälschlicherweise Abhängigkeiten erfüllen können. Es kann zum Beispiel passieren, dass ein neuer Kernel reinkommt, aber kein passender Grafiktreiber. Dann installiert smart den neuen Kernel, obwohl der alte Grafiktreiber damit nicht laufen kann, weil der alte Kernel immer noch in der RPM-Datenbank rumschwirrt und die Abhängigkeiten auf dem Papier erfüllt, obwohl sie für den aktuellen Kernel tatsächlich nicht erfüllt sind. Das richtige Verhalten in diesem Fall wäre, dass das Kernel-Update solange zurückgehalten wird, bis ein passender Grafiktreiber verfügbar ist.

- smart löscht dem laufenden Kernel überhaupt keine Module unter dem Hintern weg, sondern zeigt die Transaktion an und führt sie nur nach Bestätigung aus. Es ist tatsächlich eine besondere Eigenart von smart, Pakete auch zu löschen, wenn dies zum Update eines anderen Pakets erforderlich ist; wenn Du es lieber hast, dass das Kernel-Update stattdessen zurückgehalten wird, dann verwende für Kernel-Updates YaST.

- Für smart ist der Kernel ein Paket wie jedes andere auch, es gibt keine Sonderbehandlung für den Kernel. Wenn man smart auf Debian benutzt, ist es genau dasselbe.
openSUSE Factory - GNOME 2.32.1

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste