Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Alle Kommandos von apt-get werden im Terminal eingegeben [1]. Allgemein besteht ein apt-get-Befehl aus den Optionsschaltern, dem "command" (Kommando) und gegebenenfalls aus einem oder mehreren Paketnamen. Manche Kommandos benötigen keine Angabe von Paketnamen. Allerdings benötigt apt-get außer im Fall von -h oder --help die Angabe eines Kommandos. Ein Paketname besteht nur aus dem Namen des Pakets ohne Versionsangabe.
Eine Übersicht der auf APT aufsetzenden Programme bzw. graphischen Oberflächen findet sich im Artikel Paketverwaltung.
apt-get benötigt in den allermeisten Fällen Root-Rechte [2].
Die allgemeine Form sieht so aus:
[sudo] apt-get [OPTIONEN] KOMMANDO [PAKET1] [PAKET2]
| Kommandos zu apt-get | |
update | Neueinlesen der Paketlisten |
upgrade | installierte Pakete wenn möglich auf verbesserte Version aktualisieren |
install PAKET(E) | Installation von PAKET(E) |
remove PAKET(E) | Deinstallation von PAKET(E) |
autoremove [PAKET(E)] | Deinstallation ungenutzter Abhängigkeiten [inkl PAKET(E)] |
purge PAKET(E) | wie remove, zusätzlich werden alle globalen Konfigurationen von PAKET(E) entfernt |
source PAKET(E) | Quelltext von PAKET(E) herunterladen, entpacken und Patches anwenden |
build-dep PAKET(E) | zum Erstellen von PAKET(E) notwendigen Abhängigkeiten installieren |
dist-upgrade | wie upgrade, nur können bei dem Vorgang auch Pakete installiert bzw. entfernt werden |
dselect-upgrade | in dselect gemachten Anweisungen folgen |
clean | Leeren des Paketcaches (Entfernen von zur Installation heruntergeladenen Paketen) |
autoclean | wie clean, nur werden ausschließlich Pakete, die nicht mehr in den Quellen verfügbar sind, gelöscht |
check | Überprüfung auf Abhängigkeitsfehler |
markauto PAKET(E) | PAKET(E) als "automatisch installiert" markieren |
unmarkauto PAKET(E) | PAKET(E) als "manuell installiert" markieren |
changelog PAKET(E) | Herunterladen und Anzeige des Changelogs von PAKET(E) |
download PAKET(E) | PAKET(E) herunterladen |
update liest alle in der /etc/apt/sources.list und in /etc/apt/sources.list.d/ eingetragenen Paketquellen neu ein. Hierbei erfolgt eine Prüfung auf die Signatur der Paketlisten. update benötigt keine Angabe von Paketnamen.
Dieser Schritt ist vor einem upgrade, dist-upgrade oder nach dem Hinzufügen einer neuen Quelle zu empfehlen, um die aktuellsten Informationen zu den verfügbaren Paketen zu erhalten.
sudo apt-get [Option(en)] update
upgrade bringt die installierten Pakete auf den neuesten in den Paketquellen verfügbaren Stand. Hierbei werden weder neue Pakete installiert noch durch neue Abhängigkeiten unnötig gewordene Pakete deinstalliert. upgrade benötigt keine Angabe von Paketnamen.
sudo apt-get [Option(en)] upgrade
dist-upgrade bringt die installierten Pakete auf den neuesten in den Paketquellen verfügbaren Stand. Hierbei werden im Gegensatz zu upgrade neue Pakete installiert und durch neue Abhängigkeiten unnötig gewordene Pakete ersetzt, auch wenn dies alte Abhängigkeiten beeinflusst. dist-upgrade benötigt keine Angabe von Paketnamen.
sudo apt-get [Option(en)] dist-upgrade
dist-upgrade führt kein Upgrade auf eine neue Ubuntu-Version durch.
install lädt das Paket bzw. die Pakete inklusive der noch nicht installierten Abhängigkeiten (und eventuell der vorgeschlagenen weiteren Pakete) herunter und installiert diese. Wendet man install auf ein bereits installiertes Paket an, wird dieses unabhängig vom aktuellen Status als "manuell installiert" markiert. install benötigt die Angabe mindestens eines Paketnamens, es können beliebig viele Pakete gleichzeitig angegeben werden. Diese werden durch ein Leerzeichen voneinander getrennt.
sudo apt-get [Option(en)] install PAKET1 [PAKET2]
Es lässt sich auch eine bestimmte verfügbare Version eines Paketes angeben:
sudo apt-get [Option(en)] install PAKET1=VERSION [PAKET2=VERSION]
clean löscht die bereits heruntergeladenen Installationsdateien aus dem Paket-Cache /var/cache/apt/archives/ und gibt so Festplattenspeicher frei. clean benötigt keine Angabe von Paketnamen.
sudo apt-get [Option(en)] clean
autoclean löscht alle heruntergeladenen Paketinstallationsdateien, die aktuell nicht mehr in den Quellen verfügbar sind (Unterschied: clean löscht ausnahmslos alle Installationsdateien). autoclean benötigt keine Angabe von Paketnamen:
sudo apt-get [Option(en)] autoclean
remove deinstalliert ein oder mehrere Paket(e). Die Konfigurationsdateien, die durch die manuelle oder Autokonfiguration des Pakets erstellt wurden, bleiben erhalten. remove benötigt die Angabe mindestens eines Paketnamens. Wenn mehrere Pakete gleichzeitig gelöscht werden sollen, müssen diese durch Leerzeichen voneinander getrennt werden.
sudo apt-get [Option(en)] remove PAKET1 [PAKET2]
autoremove deinstalliert nicht mehr benötigte Pakete, die als Abhängigkeit installiert wurden. autoremove kann auf zwei Arten verwendet werden:
Ohne Angabe eines Paketnamens. Hierbei werden alle zur Zeit nicht mehr benötigten Abhängigkeiten deinstalliert (remove)
Mit Angabe eines oder mehrerer Paketnamen. Hierbei wird zuerst das oder die angegebenen Paket(e) deinstalliert (remove), dann die frei gewordenen Abhängigkeiten deinstalliert.
autoremove benötigt keine Angabe von Paketnamen:
sudo apt-get [Option(en)] autoremove [PAKET1] [PAKET2]
purge kann auf zwei Arten verwendet werden:
Zur Deinstallation eines Pakets inklusive Löschung der globalen Konfiguration. Dies entspricht remove mit dem Parameter --purge
Zum Löschen der globalen Konfiguration eines Pakets nach der Deinstallation mit remove
purge benötigt die Angabe mindestens eines Paketnamens. Sollen mehrere Pakete und ihre globalen Konfigurationsdateien gelöscht werden, werden diese durch Leerzeichen voneinander getrennt. Der gleiche Effekt lässt sich mit dem Kommando remove --purge erzielen.
sudo apt-get [Option(en)] purge PAKET1 [PAKET2]
build-dep installiert die zum Erstellen von Paket aus dem Quelltext nötigen Abhängigkeiten. build-dep benötigt die Angabe mindestens eines Paketnamens.
sudo apt-get [Option(en)] build-dep PAKET1 [PAKET2]
check überprüft die Liste der installierten Pakete auf Abhängigkeitsfehler. check benötigt keine Angabe eines Paketnamens.
sudo apt-get [Option(en)] check
source lädt das Quelltext-Paket des Pakets in das aktuelle Verzeichnis herunter, entpackt es und wendet evtl. vorhandene Patches an. source benötigt die Angabe mindestens eines Paketnamens, aber keine Root-Rechte.
apt-get [Option(en)] source PAKET1 …
help zeigt den Hilfetext an. Er kann auch via Option -h oder --help aufgerufen werden. Eine ausführliche Informationsseite findet man in der Manpage zu apt-get.
apt-get help
dselect-upgrade führt die von dselect gemachten oder manuell markierten Änderungen aus. dselect-upgrade benötigt keine Angabe eines Paketnamens.
sudo apt-get [Option(en)] dselect-upgrade
markauto markiert die übergebenen Pakete als automatisch installiert. markauto benötigt die Angabe mindestens eines Paketnamens.
sudo apt-get [Option(en)] markauto PAKET1 [PAKET2]
Dies gilt jedoch als veraltet, es sollte stattdessen verwendet werden:
sudo apt-mark auto PAKET1 [PAKET2]
unmarkauto markiert die übergebenen Pakete als "manuell installiert". unmarkauto benötigt die Angabe mindestens eines Paketnamens.
sudo apt-get [Option(en)] unmarkauto PAKET1 [PAKET2]
Dies gilt jedoch als veraltet, es sollte stattdessen verwendet werden:
sudo apt-mark manual PAKET1 [PAKET2]
changelog lädt den Änderungsbericht (Changelog) des angegebenen Paket herunter und zeigt ihn an. changelog benötigt sinnvollerweise die Angabe eines Paketnamens, aber keine Root-Rechte.
apt-get [Option(en)] changelog PAKET
download funktioniert erst ab Ubuntu 11.04 und lädt die Installationsdateien des angegebenen Pakets in das aktuelle Verzeichnis herunter. download benötigt die Angabe mindestens eines Paketnamens, aber ebenfalls keine Root-Rechte.
apt-get [Option(en)] download PAKET1 [PAKET2]
Unter älteren Ubuntu-Versionen kann man stattdessen die Option -d (siehe unten) verwenden:
sudo apt-get -d --reinstall install PAKET1 [PAKET2]
Die heruntergeladenen Pakete sind dann im Ordner /var/cache/apt/archives/ zu finden.
apt-get bietet zahlreiche Schalter, um das Verhalten zu beeinflussen.
| Kommandozeilenoptionen zu apt-get | ||
| Lange Option | Kürzel | Beschreibung |
--arch-only | Nur Pakete mit der zum System passenden Architektur werden heruntergeladen. | |
--assume-yes --yes | -y | Interaktive Fragen werden automatisch mit "YES"/"JA" beantwortet |
--compile --build | -b | Den Quelltext kompilieren, nachdem er heruntergeladen wurde. Benutzung in Verbindung mit source. |
--config-file | -c | Die angegebene Konfigurationsdatei benutzen, die die Standardkonfiguration ersetzt. |
--diff-only | Nur das Diff-File eines Patchsets herunterladen. | |
--download-only | -d | Pakete werden nur heruntergeladen, nicht installiert. |
--fix-broken | -f | Fehlende Abhängigkeiten werden nachinstalliert, kaputte Pakete werden eventuell deinstalliert. Es erlaubt die Nutzung von install oder remove ohne Angabe von Paketnamen. |
--fix-missing --ignore-missing | -m | Nicht downloadbare Pakete werden auf "hold" gesetzt. In Verbindung mit --no-download werden nur Pakete im Paket-Cache benutzt. |
--force-yes | Ausnahmslos alle Rückfragen mit "YES"/"JA" beantwortet, auch wenn die Fragen als "kritisch" gekennzeichnet sind. Sehr gefährliche Option! | |
--ignore-hold | Ein Paket wird trotz gesetztem Status "hold" auf die neueste Version gebracht. | |
--install-suggests | Vorgeschlagene Pakete werden mitinstalliert. | |
--list-cleanup | apt löscht nach update gespeicherte Listen aus Quellen, die nicht mehr in der sources.list stehen (standardmäßig aktiv). | |
--no-install-recommends | Empfohlene Pakete werden nicht automatisch installiert. | |
--no-list-cleanup | apt behält nach update die Paketlisten nicht mehr existenter Quellen der sources.list. Nützlich bei häufigem Wechsel des Mirrors. | |
--no-upgrade | Bereits installierte Pakete werden auf dem alten Stand belassen und nicht auf die neueste Version gebracht. In Verbindung mit install ist es so eventuell möglich, alte Abhängigkeiten beizubehalten. | |
--only-upgrade | Ausschließlich bereits installierte Pakete werden auf eine neue Version gebracht, keine neuen Pakete werden installiert. | |
--option | -o | Option: Die angegebene Option benutzen, statt dem in der Standardkonfiguration festgelegten Wert. |
--print-uris | Ausgabe der "download URIs" statt Herunterladen der Quellen bzw Pakete in Verbindung mit update oder install. | |
--purge | Wird in Verbindung mit remove oder autoremove benutzt. Es werden zusätzlich zu den Paketen Konfigurationsdateien gelöscht. | |
--quiet | -q | Programmausgabe ohne Fortschrittsanzeige mit logbarer Ausgabe. Erhöhung des "Stille"-Levels mit -qq möglich. -qq impliziert -y, um einen automatischen Ablauf zu ermöglichen. |
--reinstall | Ein bereits installiertes Paket wird in Verbindung mit install neu aus den Quellen installiert, obwohl es bereits auf der aktuellen Version ist. | |
--show-upgraded | -u | Ausgabe einer Liste aller Pakete, die auf die neueste Version gebracht werden. |
--simulate --just-print --dry-run --recon --no-act | -s | Die angedachten Änderungen werden simuliert, keine Änderung am System. Seit Version ?? ohne Root-Rechte möglich. |
--tar-only | Ausschließlich das TAR-File des Quelltextes herunterladen. | |
--target-release --default-release | -t | Setzt die Priorität für die Quellen des genannten Release-Namens auf 990. |
--trivial-only | Gegenstück zu --assume-yes. Alle Fragen werden mit "NO" beantwortet, so dass nur unkritische Operationen automatisch ausgeführt werden. | |
--verbose-versions | -V | Die Textausgabe der heruntergeladenen Daten wird um die vollen Versionsangaben erweitert. |
Wie bei Shell-Befehlen üblich, lassen sich kurze Optionen zu einem Block zusammenfassen. Beispiel:
apt-get -s -t lucid update
lässt sich zusammenfassen in
apt-get -st lucid update
Durch die Kombinationen von Kommando und Optionen hat man die Möglichkeit, mehrere Aktionen zu bündeln. Zum Beispiel die Deinstallation eines Pakets, der dann nicht mehr benötigten Abhängigkeiten sowie die Löschung der zugehörigen systemweiten Konfiguration des Pakets.
sudo apt-get --purge autoremove PAKET
Viele Anwendungsprogramme legen ihre spezifische Konfiguration durch den Benutzer in dessen Homeverzeichnis ab. Diese Daten werden niemals automatisch gelöscht.
Der Ablauf eines "update"-Vorgangs lässt sich als Skript abbilden und zum Beispiel mit cron aufrufen. Hier werden einige Beispiele je nach gewünschtem Ergebnis gezeigt, die allerdings nur einen kleinen Teil der Möglichkeiten von apt nutzen.
Falls man bei einem selten kontrollierten Rechner die Aktualisierungen vor dem Einspielen zwar einsehen möchte, aber den Zeitaufwand möglichst gering halten will, bietet sich (von diversen Automatismen abgesehen) folgender Ablauf an:
1 2 3 4 | #!/bin/bash
apt-get update
apt-get -d dist-upgrade
apt-get autoclean
|
Hier werden zuerst die Paketlisten auf den neuesten Stand gebracht, dann vorhandene Aktualisierungspakete heruntergeladen und schließlich in den Quellen nicht mehr vorhandene Pakete aus dem Cache gelöscht, um Speicherplatz zu sparen. Dieser Ablauf kann automatisiert werden, so dass bei der nächsten Anmeldung die nötigen Pakete für einen "update"-Vorgang bereits vorliegen.
Zusätzlich zum zuvor beschriebenen Verfahren kann man auch sicherheitskritische Aktualisierungen sofort einspielen:
1 2 3 4 5 | #!/bin/bash apt-get update apt-get -yt $(lsb_release -cs)-security dist-upgrade apt-get -d dist-upgrade apt-get autoclean |
Zusätzlich kann man unkritische Aktualisierungen auch automatisch einspielen und nur noch diejenigen Pakete manuell aktualisieren, die eine Nachfrage stellen:
1 2 3 4 5 | #!/bin/bash apt-get update apt-get -yt $(lsb_release -cs)-security dist-upgrade apt-get --trivial-only dist-upgrade apt-get autoclean |
Tipps zum Umgang mit der Paketverwaltung finden sich im Artikel Paketverwaltung/Tipps.
APT
Übersichtsseite
apt-pinning - Festsetzen der Prioritäten von APT
apt - Kommandozeilenprogramm zum Verwalten und Durchsuchen von Paketen
Advanced Packaging Tool - Wikipedia
APT - Wartung u. Aktualisierung
(PDF) - 28 Seiten, 4,2 MB. Auszug aus dem "debian handbook", Kapitel 6, v. 14.11.2011
Packstation - Paketverwaltung auf der Kommandozeile
- Artikel aus EasyLinux 11/2005
apt-fast - Shellwrapper für apt-get und aptitude, um Pakete schneller herunterzuladen
cron - Zeitgesteuerte automatische Ausführung von Skripten
cron-apt - Automatisierung der Aktualisierungsprozesse
dpkg - Debian-Paketmanager
Aktualisierungen - Problematische Version deinstallieren
Recovery Modus - apt-get im Wiederherstellungsmodus anwenden
apt-get, apt-cache lässt sich schon lange mit apt abkürzen
- Blog-Beitrag
Diese Revision wurde am 27. April 2016 20:18 von noisefloor erstellt.
2004 – 2017 ubuntuusers.de • Einige Rechte vorbehalten