Was ist die minimal kompatible Linux-Kernel-Version, die zum Ausführen von Ubuntu erforderlich ist?

10

Warum älterer Kernel?

Aus irgendeinem Grund könnten Sie gezwungen sein , einen anderen Kernel als den von Ubuntu bereitgestellten auszuführen. Es kann sogar einige Jahre dauern, bis ein Kernel mit bestimmten vorkompilierten Kernelmodulen kompatibel ist. Ihr Xen / Container-basierter VPS-Anbieter kann Sie dazu zwingen, seinen Kernel usw. zu verwenden.

Ich habe diese Frage schon lange, aber das hat sie heute wieder ausgelöst.

In einem solchen Fall wäre es sehr nützlich zu sagen, ob Sie den Kernel für Probleme verantwortlich machen können oder ob Sie sich überhaupt die Mühe machen sollten, in Ihrer Situation eine neuere Version von Ubuntu einzurichten.

Richtlinie, Dokumentation?

Ich bin besonders daran interessiert, welche Ziele die Entwickler / QS in Bezug auf LTS-Releases und neuere Stables, auf denen der LTS-Kernel ausgeführt wird, verfolgen. Einige eng verwandte Fragen:

  • Wie lautet die Richtlinie zur Kompatibilität mit früheren Kernelversionen? ZB werden keine Fehlerberichte akzeptiert, müssen mit allen Kernelversionen bis einschließlich früherer LTS usw. funktionieren.
  • Beispielfall praktisch: Wie wahrscheinlich bin ich in Schwierigkeiten, wenn ich Lucids Kernel auf Precise ausführe?
  • Inwieweit befindet sich Software relativ nahe am Kernel (udev, gvfs, mdadm usw.), der auf einer anderen als der mit der Version gelieferten Version getestet wird?
  • Wie unterscheidet sich die Desktop / Server Edition darin?

Der naheliegendste Ort, um dies zu betrachten, wären die Versionshinweise . Abgesehen von Aktualisierungen / Änderungen des Kernels mit Ubuntu-Geschmack wird hier jedoch nichts über die Kompatibilität mit anderen Kerneln erwähnt, während kernelbezogene Funktionen in anderen Teilen der Hinweise erwähnt werden, z

Software-RAID unterstützt jetzt Bad Block Management (MD).

Kümmert sich Ubuntu einfach nicht um diese Fälle oder fehlt mir eine Ressource dazu? Neben den Versionshinweisen habe ich Google in gewissem Umfang mit Schlüsselwörtern Ubuntu 12.04 minimal kernel version requiredund mehreren Varianten verwendet. Zu diesen Ergebnissen scheint jedoch keine Aussage darüber gemacht zu werden. Ich finde jetzt, dass diese Frage als einzige relevante Ressource auftaucht. Ich fand diese Antwort schwierig, und sie sieht sehr vielversprechend aus, aber es geht um ein bestimmtes Problem / eine bestimmte Umgebung und nicht wirklich um die Server- / Desktop-Nutzung.

Userspace vs Kernel

Ich weiß, dass sich die meisten Userland-Programme nicht um Kernelversionen kümmern sollten, aber es wird komplizierter für VPN-Software oder Anwendungen, die mit Hardware interagieren, wie die oben beschriebene, aber auch für V4L2, Network Manager, Alsa usw.

Debian gegen Ubuntu

Debian ist sich darüber wirklich klar. Bereits für Wheezy wissen wir, dass, wenn Sie sich auf udev verlassen, 2.6.26 erforderlich ist, um ordnungsgemäß aus den Versionshinweisen (in Arbeit) ausgeführt zu werden:

Die udev-Version in wheezy erfordert einen Kernel der Version 2.6.26 oder neuer mit [...]

Was ich nicht verlange

Ich bin mir der Backports für neuere Kernel von neueren Versionen bis zur aktuellen LTS-Version sehr gut bewusst. Diese Frage ist ungefähr das Gegenteil.

Bitte vermeiden Sie Diskussionen wie "Warum sollte man einen älteren Kernel ausführen wollen?" - Manchmal hat man einfach keine Wahl und es geht nicht darum, was wir wollen, sondern wie man mit einer solchen Situation umgehen kann.

gertvdijk
quelle
Ich denke nicht, dass Debian diesbezüglich viel klar ist: Es udevist nur eines von vielen Paketen, und ich glaube nicht, dass Sie eine Antwort pro Paket suchen.
Andrea Corbellini

Antworten:

10

FRAGE: Wie lautet die Richtlinie zur Kompatibilität mit früheren Kernelversionen? ZB werden keine Fehlerberichte akzeptiert, müssen mit allen Kernelversionen bis einschließlich früherer LTS usw. funktionieren.

Ich bin Mitglied des Ubuntu BugControl-Teams und kann sagen, dass nur Fehler in nicht veralteten Ubuntu-Paketen berücksichtigt werden. Wenn Sie Ihren eigenen Kernel installieren oder ein Paket aus einer anderen Distribution verwenden und einen Fehler melden, wird Ihr Fehler ungültig. Siehe diese beiden Aktienantworten:

Außerdem hat das Ubuntu Kernel-Team eine FAQ , die Sie vielleicht interessant finden:

Das Kernel-Team bietet Unterstützung (Sicherheitsupdates usw.) für die Ubuntu-Kernel in allen derzeit aktiven Versionen. Wir unterstützen keine Nicht-Ubuntu-Kernel. Eine vollständige Liste der derzeit aktiven Releases finden Sie auf der Seite Releases. Bei LTS-Versionen (Long Term Support) werden die Desktop-Kernel vor den Server-Kerneln aus dem Support entfernt. Dies wird auf der Seite "Releases" angezeigt.

Dies sagt jedoch nur aus, welche Kernel unterstützt werden , nicht welche als kompatibel angesehen werden .

FRAGE: Praktischer Beispielfall: Wie wahrscheinlich bin ich in Schwierigkeiten, wenn ich Lucids Kernel auf Precise ausführe?

Diese Frage ist ziemlich schwer zu beantworten. Vor allem, weil es wirklich darauf ankommt, welche Anwendungen / Module Sie verwenden werden. Wir können diese Frage auf den "Standard" Ubuntu Desktop oder Server beschränken, aber selbst dann wäre es zu schwierig zu beantworten: Es gibt nicht genügend Dokumentation und die verfügbaren Informationen sind spärlich.

Um beispielsweise zu überprüfen, ob udev von Quantal mit dem Lucid-Kernel kompatibel ist, müssen Sie die Versionshinweise M, N, O, P, Q, Kernel-Änderungsprotokolle und udev-Änderungsprotokolle anzeigen. Fahren Sie dann mit einem anderen Paket fort, z. B. libc, upstart und so weiter. Alle diese Pakete hängen von bestimmten Kernelversionen ab und alle diese Pakete werden nicht direkt von Ubuntu gesteuert (in dem Sinne, dass nicht das Ubuntu-Team über die Kompatibilitätsrichtlinien dieser Pakete entscheidet).

FRAGE: Inwieweit befindet sich Software relativ nahe am Kernel (udev, gvfs, mdadm usw.), der auf einer anderen als der mit der Version gelieferten Version getestet wird?

Das Ubuntu-Testteam und das Ubuntu-Qualitätsteam testen keine Kernel, die nicht von Ubuntu bereitgestellt werden. Der Beweis ist, dass es keine Testfälle oder Testaktivitäten für veraltete Kernel gibt.

FRAGE: Wie unterscheidet sich die Desktop / Server-Edition darin?

Sie unterscheiden sich in keiner Weise. Dies wird teilweise durch die Tatsache bewiesen, dass sowohl die Desktop- als auch die Server-Edition denselben Kernel verwenden.

FRAGE: Kümmert sich Ubuntu einfach nicht um diese Fälle oder fehlt mir eine Ressource dazu?

Ubuntu kümmert sich nicht um diese Fälle. Eine Kernel-Version nicht zu unterstützen, aber mit ihr kompatibel zu sein, wäre nur zusätzliche Arbeit mit wenigen Vorteilen.

Ob es einem gefällt oder nicht, eine der Ubuntu-Praktiken besteht darin, nach vorne zu schauen und zu versuchen, die neuesten Technologien zu unterstützen, anstatt die veraltetesten. Sie finden ein Beispiel dafür, wenn die Ubuntu-CD zugunsten der DVD abgelegt wurde oder wenn Unity 2d aus Quantal entfernt wurde.

Und dies ist meiner Meinung nach der wichtigste Punkt. Ubuntu ist nicht daran interessiert, Software zu vertreiben, die funktioniert , sondern Software, die funktioniert und unterstützt wird . Es gibt wichtige Unterschiede zwischen diesen beiden Begriffen.

Andrea Corbellini
quelle
Gute Antwort. Dann gibt es wohl keine einfache Antwort darauf. Es ist sehr nützlich, auf einige glaubwürdige Referenzen und interessante Informationen hinzuweisen.
Gertvdijk
3

Der einzige offiziell unterstützte Kernel ist der mit dieser Ubuntu-Version gelieferte. Wenn Sie Probleme haben, weil Sie einen anderen Kernel verwenden, sind Sie auf sich allein gestellt. Wenn der Verdacht besteht, dass ein Problem mit der Verwendung eines nicht standardmäßigen Kernels zusammenhängt, werden Sie aufgefordert, mindestens den standardmäßigen Kernel zu testen, um festzustellen, ob er tatsächlich zusammenhängt.

Es gibt zu viele potenzielle Probleme, die sich aus der Verwendung eines älteren Kernels ergeben könnten, um eine genaue Liste darüber zu erhalten, was funktioniert und was nicht. Sie müssen es nur selbst versuchen.

psusi
quelle
1

Ich glaube nicht, dass ältere Kernel für eine Ubuntu-Version in Betracht gezogen werden. ... und warum sollten sie es sein? Der 'erforderliche Kernel' ist einfach derjenige, mit dem ein Release geliefert wird.

Warum sollte man einen älteren Kernel für eine neue Version verwenden wollen, anstatt die ältere Version selbst?

AFAIK, das Kernel-Team schaut eher nach vorne als nach hinten. Sie portieren neuere Kernel aus neueren Versionen zurück, z. B. werden Quantal-Kernel nach Precise zurückportiert, aber nicht umgekehrt.

Mikewas auch immer
quelle
Vielen Dank für Ihre Meinung, aber dies ist keine Antwort auf meine Frage. "Warum sollte man einen älteren Kernel verwenden wollen [...]" - lesen Sie den allerersten Satz meines Q. "Sie portieren neuere Kernel aus neueren Versionen [...] zurück, aber nicht umgekehrt." Ich weiß, aber darum geht es in meinem Q nicht. "Ich glaube nicht, dass ältere Kernel überhaupt in Betracht gezogen werden." Dies wäre hilfreich, wenn Sie eine Quelle angeben könnten.
Gertvdijk
Vielleicht ist die Mailingliste des Kernel-Teams ein besserer Ort für Ihre Anfrage.
Mike, was auch immer
1
Guter Punkt. Ich werde das später tun, wenn keine offensichtliche Antwort "da ist es" gegeben werden kann. Und natürlich poste die Antwort hier zurück. Eine unbeantwortete, positiv bewertete Frage, auf die hier Bezug genommen wird, kann das Team auch zu einer netten und vollständigen Aussage ermutigen. Oh, und das Kernel-Team hat das Kernel-Tag hier bereits abonniert .
Gertvdijk
Ein Grund dafür ist, dass Sie einen Cloud-Hosting-Anbieter verwenden, der für alle Instanzen einen bestimmten Linux-Kernel verwendet, und auf eine Version aktualisieren möchten, die noch nicht unterstützt wird. Offensichtlich nicht ideal; dennoch kann es durchaus der Fall sein.
GreenReaper