ubuntuusers.de

apt vs apt-get

Status: Gelöst | Ubuntu-Version: Kubuntu 20.04 (Focal Fossa)
Antworten |

wmf40

Anmeldungsdatum:
28. Juni 2020

Beiträge: 165

Bisher habe ich mein System mit der Befehlsfolge

1
2
3
sudo apt-get update && time sudo apt-get dist-upgrade
sudo apt-get autoremove --purge
sudo apt-get clean

auf dem aktuellen Stand gehalten. Nun wollte ich mir mal ansehen, wie das mit apt funktioniert. Dist-upgrade wurde offenbar durch full-upgrade ersetzt, wobei offenbar auch dist-upgrade mit apt funktioniert (Kompatibilitätsschalter?). Bei autoremove wird offenbar von apt --purge nicht weiter unterstützt. Deshalb stellt sich mir die Frage, ob das autoremove von apt Konfigurationsdateien löscht oder ob hier ein sudo apt purge erforderlich wird?

1
2
3
4
sudo apt update && time sudo apt full-upgrade
sudo apt autoremove
sudo apt purge
sudo apt clean

Wäre das die korrekte neue Befehlsfolge?

DJKUhpisse Team-Icon

Supporter, Wikiteam
Avatar von DJKUhpisse

Anmeldungsdatum:
18. Oktober 2016

Beiträge: 18199

Wohnort: in deinem Browser, hier auf dem Bildschirm

sudo apt autoremove --purge

löscht automatisch installierte Pakete, die nicht mehr gebraucht werden, weil kein anderen Paket davon abhängt und löscht auch deren Konfigurationsdateien.

wmf40

(Themenstarter)

Anmeldungsdatum:
28. Juni 2020

Beiträge: 165

Bei apt-get ist --purge unter Optionen im Zusammenhang mit remove und autoremove aufgeführt:

https://wiki.ubuntuusers.de/apt/apt-get/

Bei apt sind gar keine Optionen aufgeführt:

https://wiki.ubuntuusers.de/apt/apt/

Insofern bin ich von deiner Antwort etwas überrascht. Aus den Manpages bin ich nicht wirklich schlauer geworden. Woher stammt deine Information?

DJKUhpisse Team-Icon

Supporter, Wikiteam
Avatar von DJKUhpisse

Anmeldungsdatum:
18. Oktober 2016

Beiträge: 18199

Wohnort: in deinem Browser, hier auf dem Bildschirm

Eigene Erfahrung.

Ubunux

Avatar von Ubunux

Anmeldungsdatum:
12. Juni 2006

Beiträge: 17329

Es geht noch wilder

apt autopurge

ist auch nirgends dokumentiert und macht imho genau das was

apt autoremove --purge

macht

wmf40

(Themenstarter)

Anmeldungsdatum:
28. Juni 2020

Beiträge: 165

Ok, also ist die abschließende Erkenntnis, dass apt schlecht dokumentiert ist? Hatte mich schon gewundert, dass er bei sudo apt dist-upgrade nicht gemeckert hat, das habe ich auch nirgendwo in der Doku gefunden...

Ubunux

Avatar von Ubunux

Anmeldungsdatum:
12. Juni 2006

Beiträge: 17329

wmf40 schrieb:

Ok, also ist die abschließende Erkenntnis, dass apt schlecht dokumentiert ist?

Zitat aus der Manpage von apt:

Ganz wie apt selbst ist seine Handbuchseite als Endanwenderschnittstelle gedacht und erwähnt als solche nur die am häufigsten benutzten Befehle sowie Optionen. Dies geschieht zum Teil, um keine Informationen an mehreren Stellen zu duplizieren und zum Teil, um Leser nicht mit einem Überfluss an Optionen und Einzelheiten zu überwältigen.

tomtomtom Team-Icon

Supporter
Avatar von tomtomtom

Anmeldungsdatum:
22. August 2008

Beiträge: 55345

Wohnort: Berlin

Ubunux schrieb:

Zitat aus der Manpage von apt:

Ganz wie apt selbst ist seine Handbuchseite als Endanwenderschnittstelle gedacht und erwähnt als solche nur die am häufigsten benutzten Befehle sowie Optionen. Dies geschieht zum Teil, um keine Informationen an mehreren Stellen zu duplizieren und zum Teil, um Leser nicht mit einem Überfluss an Optionen und Einzelheiten zu überwältigen.

Und daher verweist die Manpage dann auch an entsprechenden Stellen auf die Manpages von apt-get, apt-cache etc. pp. 😇

Ubunux

Avatar von Ubunux

Anmeldungsdatum:
12. Juni 2006

Beiträge: 17329

Aber nirgends steht was zu

apt moo

🤓

wmf40

(Themenstarter)

Anmeldungsdatum:
28. Juni 2020

Beiträge: 165

Ubunux schrieb:

Ganz wie apt selbst ist seine Handbuchseite als Endanwenderschnittstelle gedacht und erwähnt als solche nur die am häufigsten benutzten Befehle sowie Optionen. Dies geschieht zum Teil, um keine Informationen an mehreren Stellen zu duplizieren und zum Teil, um Leser nicht mit einem Überfluss an Optionen und Einzelheiten zu überwältigen.

Sowohl zur kompakten Darstellung als auch zum Problem mit duplizierten Informationen gibt es doch heute viel bessere Lösungsmöglichkeiten. Aber das man sich die benötigte Info zu einem Tool nun aus der Doku von anderen Tools zusammensuchen muss und letztendlich nicht sicher sein kann, ob das Tool es unterstützt, und einem letztendlich nur ausprobieren bleibt, finde ich dämlich.

TomLu

Anmeldungsdatum:
23. August 2014

Beiträge: 603

wmf40 schrieb:

Sowohl zur kompakten Darstellung als auch zum Problem mit duplizierten Informationen gibt es doch heute viel bessere Lösungsmöglichkeiten.

Nein, gibt es nicht. Ich halte das Paket-Management-System mit apt (oder auch apt-get) als Frontend für das derzeit beste und sicherste System überhaupt ... solange keine Fremd-Repositories verwendet werden. Bunter Clicker-Kram verbessert es definitiv nicht, sondern reduziert nur wieder die Sicherheit wegen der Verwendung technisch eigentlich unnötiger Komforttools.

wmf40 schrieb:

Aber das man sich die benötigte Info zu einem Tool nun aus der Doku von anderen Tools zusammensuchen muss und letztendlich nicht sicher sein kann, ob das Tool es unterstützt, und einem letztendlich nur ausprobieren bleibt, finde ich dämlich.

Nein, man muss sich nichts zusammensuchen und das Problem befindet sich an ganz anderer Stelle. 'apt' ist das derzeit aktuelle Frontend, apt-get ist die Brücke zur Vergangenheit, mit ähnlichem Zweck wie der systemd-autogen für die fstab oder für sysv-Scripte. Zum einen machen apt und apt-get selber gar nichts, das sind nur Frontends (also Bedienprogramme) im User-Space. Die tatsächliche Arbeit leistet der Paketmanager. Zum zweiten liegt das eigentliche Problem darin begründet, weil sich Betriebssysteme eben kontinuierlich weiter entwickeln, was zum einen zu veralteten Tutorials im nie etwas vergessenden Internet führt, und zum anderen zu Anwendern, die sich am überholten festklammern und totgesagtes weiterverwenden und das auch noch propagieren. Das gibt es zum Beispiel bei

  • sysv → systemd

  • net-tools → iproute2

  • rsyslog → journald

  • apt-get → apt

... letztlich also nichts besonderes. 'apt' ist einfach das modernere Benutzerfrontend zur Bedienung des Paket-Managers. Das Ergebnis ist bei apt und apt-get jedenfalls das gleiche, weil beide exakt das gleiche tun. Man kann sich dessen im Source-Code vergewissern.

$ grep -i doupdate *
apt.cc:      {"update", &DoUpdate, _("update list of available packages")},
apt-get.cc:      {"update", &DoUpdate, _("Retrieve new lists of packages")},

$ grep -i full-upgrade *
apt.cc:      {"full-upgrade", &DoDistUpgrade, _("upgrade the system by removing/installing/upgrading packages")},
apt-get.cc:      {"full-upgrade", &DoDistUpgrade, nullptr},

Meine Empfehlung für die m.M.n. richtige Vorgehensweise wäre:

$ su -  (oder sudo su -)
# apt update
# apt full-upgrade

Das hat sich hier bei tausenden von Läufen über etliche Systeme und mehr als 6 Jahre als absolut sicher und unproblematisch erwiesen.

tomtomtom Team-Icon

Supporter
Avatar von tomtomtom

Anmeldungsdatum:
22. August 2008

Beiträge: 55345

Wohnort: Berlin

sudo su

funktioniert da zwar, ist aber prinzipiell sinnfrei. Das Mittel der Wahl unter Ubuntu wäre

sudo -i

Nur

su

ist unter Ubuntu in Standardkonfiguration nicht nutzbar, da der Nutzer root, zu dem ja bei keiner Angabe eines Nutzers gewechselt werden soll, kein gültiges Passwort hat.

TomLu

Anmeldungsdatum:
23. August 2014

Beiträge: 603

Ja, deswegen hatte ich ja geschrieben: "sudo su -". Aber mit -i und der direkten Ausführung des Kommandos wird auch das Shell-Environment gewechselt. Ich würde es nur nicht mögen, 2 mal nacheinander "sudo" jeweils mit Password einzugeben... das wäre mir zu viel tipperei, weil ich ein anspruchsvolles Password habe. Und wer den PWD-Timeout nicht deaktiviert hat... naja... das halte ich nicht nur für völlig sinnfrei, sondern für fahrlässig... aber das muss man ja jetzt nicht diskutieren... jeder wie er mag 😀

wmf40

(Themenstarter)

Anmeldungsdatum:
28. Juni 2020

Beiträge: 165

TomLu schrieb:

Nein, gibt es nicht. Ich halte das Paket-Management-System mit apt (oder auch apt-get) als Frontend für das derzeit beste und sicherste System überhaupt ... solange keine Fremd-Repositories verwendet werden. Bunter Clicker-Kram verbessert es definitiv nicht, sondern reduziert nur wieder die Sicherheit wegen der Verwendung technisch eigentlich unnötiger Komforttools.

Mir ging es an dieser Stelle gar nicht um apt, sondern um den Aufbau der Doku. Und da ist es heute eigentlich Standard, einen Quickstart und einen ausführlichen Teil zu machen. Gemeinsame Teile kann man an einer Stelle pflegen und reinverlinken.

Man kann sich dessen im Source-Code vergewissern.

Und genau das will ich eigentlich nicht. Ich lese beruflich unter der Woche genug Code, da möchte ich eigentlich nicht anfangen, bei irgendwelchen OS-Sachen auch noch den Code lesen zu müssen.

Meine Empfehlung für die m.M.n. richtige Vorgehensweise wäre:

$ su -  (oder sudo su -)
# apt update
# apt full-upgrade

Das hat sich hier bei tausenden von Läufen über etliche Systeme und mehr als 6 Jahre als absolut sicher und unproblematisch erwiesen.

Ok, ich räume halt noch ganz gern danach auf, weil ich den alten Krempel sowieso nicht mehr brauche.

TomLu

Anmeldungsdatum:
23. August 2014

Beiträge: 603

wmf40 schrieb:

Und genau das will ich eigentlich nicht.

Das ist ja auch eigentlich gar nicht notwendig. Ich hatte das nur zur Schaffung von Klarheit verwendet.

wmf40 schrieb:

Ok, ich räume halt noch ganz gern danach auf, weil ich den alten Krempel sowieso nicht mehr brauche.

Das verstehe ich, weil ich das genauso mache. Deswegen führe ich generell nach dem obigen Upgrade-Beispiel noch das folgende aus:

# apt auto-clean; apt auto-remove 

Antworten |