Ich hoffe, dass jemand mit etwas mehr Wissen etwas zur Vorgehensweise apt-get upgrade
in Ubuntu 16.04 und höher erklären kann.
Das Verhalten, das ich beobachte, ist, dass apt-get upgrade
manchmal keine neuen Kernel-Pakete installiert werden und manchmal:
d. h. aus der Ausgabe:
The following packages have been kept back:
linux-generic linux-headers-generic linux-image-generic linux-tools-generic
ICHTunIch weiß, dass dist-upgrade
diese Pakete installiert werden, wenn ich ein ausführe (also wiederhole diese Antwort nicht :-). Was ich nicht weiß, ist, was die Zurückhaltung dieser Pakete steuert.
Manchmal werden bei einem ein neue Kernel installiert apt-get upgrade
und manchmal werden die Pakete zurückgehalten.
Werden diese Sperren von Canonical selbst vorgenommen oder hängen sie mit Abhängigkeiten von anderen Paketen zusammen?
Antwort1
Der apt-get upgrade
Befehl aktualisiert Pakete nur auf die neuere Version; er installiert kein neues Paket und entfernt auch keines, um ein Paket zu aktualisieren.
Wenn Sie Ihren Kernel aktualisieren, installieren Sie eigentlich einen neuen Kernel. Ubuntu aktualisiert den Kernel nicht, sondern installiert einen neuen, während der alte erhalten bleibt.
Aber warum? Warum installieren wir eine neue Version des Kernels, anstatt ihn auf die letzte Version zu aktualisieren? Die Antwort lautet: aus Stabilitätsgründen.
Man weiß nie, was nach einem Kernel-Upgrade passiert. Vielleicht kann das System nicht mehr gestartet werden oder die Hardware funktioniert nicht mehr richtig. Sie sollten immer die alte Version behalten, damit Sie im Problemfall immer noch eine funktionierende Maschine haben.
Aktualisieren Sie niemals Ihren funktionierenden Kernel.
Sagt SlackwareAnleitung zum Systemupgrade.
Mehr Info
man apt-get
:
Unter keinen Umständen werden aktuell installierte Pakete entfernt oder noch nicht installierte Pakete abgerufen und installiert. Neue Versionen aktuell installierter Pakete, die nicht aktualisiert werden können, ohne den Installationsstatus eines anderen Pakets zu ändern, bleiben in ihrer aktuellen Version.
Wie Sie jedoch wissen, können Sie diese „zurückgehaltenen“ Pakete auch verwenden apt-get dist-upgrade
oder installieren.apt upgrade
$ apt-cache search linux-image-4.4.*-generic | tail -3
linux-image-4.4.0-75-generic - Linux kernel image for version 4.4.0 on 64 bit x86 SMP
linux-image-4.4.0-77-generic - Linux kernel image for version 4.4.0 on 64 bit x86 SMP
linux-image-4.4.0-78-generic - Linux kernel image for version 4.4.0 on 64 bit x86 SMP
sehen Sie? Dies sind unterschiedliche Pakete, daher eine Neuinstallation statt eines Upgrades.