Ist ein passendes Dist-Upgrade nicht mehr nötig?

22

Bevor Ubuntu 18.04 verfügbar war, verwendete ich Ubuntu 16.04. Und ich wurde mit sudo apt-get update, sudo apt-get upgradeund sudo apt-get dist-upgradedas Update und Upgrade - Zeug zu tun. Mit Ubuntu 18.04, wechselte ich zu verwenden aptstatt apt-get. Was für mich seltsam war, ist, dass sudo apt dist-upgradedas keine Auswirkung mehr hat: Ich aktualisiere und aktualisiere mit sudo apt updateund sudo apt upgade, aber wenn ich laufe sudo apt dist-upgrade, passiert nichts mehr im Gegensatz zu dem, als ich verwendet habe sudo apt-get dist-upgrade.
Als ich verwendet habe, wurden sudo apt-get dist-upgradeeinige Pakete entfernt und andere installiert. Aber wenn ich renne sudo apt dist-upgrade, passiert gar nichts. Alles was ich bekomme ist:

sudo apt dist-upgrade 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.  

Und das passiert jedes Mal, seit ich angefangen habe, aptstatt zu verwenden apt-get.
Hat es etwas damit zu tun apt(dh sudo apt upgradeersetzt beides upgradeund dist-upgrade) oder worum geht es genau?

Singrium
quelle
Ich bin gespannt auf die vollständige Antwort, aber dies scheint darauf hinzudeuten, dass Sie korrekt sind: askubuntu.com/questions/81585/…
rm-vanda

Antworten:

29

apt-get upgradevs apt upgradevsapt full-upgrade

apt-get upgradeAktualisiert nur die Apps, Tools und Dienstprogramme. Es wird kein neuer Linux-Kernel des Betriebssystems installiert.

apt upgradeAktualisiert die Apps, Tools und Dienstprogramme und installiert den neuen Linux-Kernel des Betriebssystems. Es werden jedoch niemals alte Pakete entfernt.

apt full-upgradeAktualisiert die Apps, Tools und Dienstprogramme und installiert den neuen Linux-Kernel des Betriebssystems. Es werden auch alte Pakete entfernt, falls dies für das Upgrade erforderlich ist.

Es sieht für mich apt full-upgradegenauso aus wie apt-get dist-upgrade. Dies bedeutet, dass full-upgradenach einem neuen Kernel gesucht und dieser installiert wird, sofern dieser verfügbar ist, und dass alte Pakete entfernt werden, wenn die Entfernung für das Upgrade erforderlich ist.

Kernel sind der grundlegende Teil des Betriebssystems. Aus diesem Grund wird die alte Version des Kernels niemals durch die neue Version ersetzt, wenn Sie apt upgradeoder ausführen apt full-upgrade. Die neue Version des Kernels wird installiert und die vorhandene Version bleibt unverändert. Die Konfiguration im Grub wird während des Aktualisierungsprozesses standardmäßig so geändert, dass von der neuen Version gebootet wird. Wenn der neue Kernel aus irgendeinem Grund nicht funktioniert, kann man vom alten Kernel aus über das erweiterte Grub-Menü booten.

Hinweis: apt full-upgradeEntfernt keine älteren Kernelversionen, da die neueste Version installiert wird. Um diese zu entfernen, muss man verwenden apt autoremove.

Warum sollte der Name von dist-upgradein geändert werden full-upgrade?

  • Wenn Sie apt-getdann verwenden, müssen Sie verwendendist-upgrade
  • Wenn Sie aptdann verwenden, müssen Sie verwendenfull-upgrade

Ich finde das dist-upgradeetwas verwirrend. Beispielsweise wird kein Upgrade von Ubuntu 16.04 auf Ubuntu 18.04 durchgeführt. Es aktualisiert nur den Kernel und andere Dinge in Ubuntu 16.04.

Ich denke full-upgradeist intuitiver als dist-upgrade.

Siehe Was ist "dist-upgrade" und warum wird mehr aktualisiert als "upgrade"? für mehr Details.

Vollständige Offenlegung: Ich bin nur ein Benutzer von Ubuntu. Ich habe mich nicht entschieden, dies zu ändern. Das sind meine persönlichen Ansichten.

Hoffe das hilft

user68186
quelle
1
+1, aber um Pedant zu sein, von der Manpage aptselbst: Entfernt upgrade niemals vorhandene Pakete , während full-upgrade derzeit installierte Pakete entfernt werden, wenn dies für ein Upgrade des gesamten Systems erforderlich ist . apt dist-upgradeSieht auch so aus, als ob es auf meinen Systemen funktioniert (wahrscheinlich aus Gründen der Abwärtskompatibilität).
Herr Shunz
@ MrShunz Ich weiß, das ist, was die Manpage sagt. Es wird auch in der anderen Antwort erwähnt, die ich als Referenz hinzufügen werde.
user68186
apt upgradeund apt-get upgradedie Sache anders behandeln, siehe hiroom2.com/2016/05/20/ubuntu-16-04-debian-8-apt-command/…
mook765
@ mook765 Danke! Ich werde meine Antwort basierend auf Ihrer Referenz bearbeiten.
user68186
2
"Ich denke, das Dist-Upgrade war ein bisschen verwirrend." Ich schwöre, das ist die Untertreibung des Jahrhunderts in Bezug auf apt. Gibt es etwas an Apt, das nicht verwirrend ist ?! Wie hat der Name "apt" oder "aptitude" überhaupt mit Paketverwaltung zu tun? Warum gibt es 3 Apt-Varianten? Warum apt- get ändern mein System? Warum aktualisiert "update" mein System nicht? Warum aktualisiert "upgrade" mein System nicht? Warum sollte es nicht einfach seinen internen Cache aktualisieren, bevor es wie ein normales Betriebssystem automatisch aktualisiert wird? Warum deinstalliert die Bereinigung ein Paket, anstatt es aus dem Cache zu entfernen? etc ....
Mehrdad
15

dist-upgradewurde in Ubuntu von abgelöst full-upgrade.

Ältere Benutzer von Ubuntu erinnern sich, wann dist-upgradetatsächlich regelmäßig Kernel-Pakete installiert wurden. Die Namen der Kernelpakete ändern sich mit der Version, sodass sie nicht mehr für den normalen Gebrauch geeignet sind upgrade. full-upgradewurde hinzugefügt, um diese Anforderung des Ubuntu-Paketflusses sicher zu erfüllen.

Der ursprüngliche Zweck von dist-upgradeist die Migration zwischen Debian-Versionen (ungefähr gleichwertig mit Ubuntu do-release-upgrade). Daher gibt es etwas weniger Schutz vor unerwarteten Konsequenzen. Lesen Sie die vorgeschlagenen Änderungen sorgfältig durch, bevor Sie zustimmen.

Die Verwendung von dist-upgradeanstelle von full-upgradeschadet wahrscheinlich keinem gesunden System. Millionen von Anwendern haben über ein Jahrzehnt viele Fehler aus dem passenden Workflow herausgearbeitet. Es dist-upgradekann jedoch zu unerwarteten Ergebnissen auf einem System mit angehaltenen Paketen oder anderen ungelösten Problemen kommen.

user535733
quelle
+1 für den ursprünglichen Zweck von dist-upgrade. Man müsste mit dem herumspielen sources.list, um es so zu benutzen, denke ich.
user68186