Paketeverwaltung per Konsole

Die ist ein Auszug aus http://wiki.ubuntuusers.de/Paketverwaltung_Konsole

aptitude oder apt-get?

Man kann sowohl den Befehl ‚aptitude‘, als auch ‚apt-get‘ zur Paketverwaltung nutzen. Es ist jedoch zu empfehlen, ‚aptitude‘ zu verwenden.

Warum? aptitude hat gegenüber apt-get einige Vorteile, z. B.

  • aptitude merkt sich die installierten Pakete und die Abhängigkeiten. Wenn ein Paket deinstalliert wird, welches mit aptitude installiert worden ist, und es Pakete gibt, die ebenfalls von diesem Paket abhängig sind, so erscheint eine Meldung. Entweder man entscheidet sich dann, dieses Paket beizubehalten oder die anderen Pakete, die man dann wohl ebenfalls nicht mehr benötigt, werden ebenfalls deinstalliert (für mit apt-get oder dpkg installierte Pakete gibt es diesen Komfort nicht).
  • empfohlene oder vorgeschlagene Pakete lassen sich über die Optionen –with-recommends bzw. –with-suggests gleich mit installieren.

Paketquellen bearbeiten

Die Liste der Paketquellen befindet sich in der Datei

/etc/apt/sources.list

, die mit einem Texteditor bearbeitet werden kann. Standardkonforme Paket-CDs werden mit dem folgenden Befehl hinzugefügt:

sudo apt-cdrom add

Paketquellen, die nicht benötigt werden, können mit einem # am Zeilenanfang deaktiviert werden. Dies gilt nicht für CD-ROMs, die nicht reaktivierbar sind, sondern erneut hinzugefügt werden müssen.

Paketlisten aktualisieren

Die Paketlisten aus dem Internet werden mit dem folgenden Befehl aktualisiert:

sudo aptitude update

Paket(e) installieren

Zur Installation eines oder mehrerer Pakete dient

sudo aptitude install Paketname [Paketname]

Abhängigkeiten werden automatisch mitinstalliert.

Sämtliche Pakete neu installieren

dpkg --get-selections | grep "\binstall" | awk '{print $1}' > /tmp/dpkg.log

sucht alle installierten Pakete und speichert diese in /tmp/dpkg.log

 

xargs -n1 apt-get -y --reinstall install < /tmp/dpkg.log

nimmt einen Eintrag aus /tmp/dpkg.log (n1) und installiert dieses Paket erneut.

Systemupdate durchführen

Der folgende Befehl bringt alle Pakete auf den neuesten in den Paketquellen verfügbaren Stand:

sudo aptitude upgrade

Paket(e) entfernen

Konfiguration beibehalten

Zur Deinstallation eines oder mehrerer Pakete dient

sudo aptitude remove Paketname [Paketname]

Abhängige Pakete werden automatisch mitentfernt. Mittels aptitude zuvor als Abhängigkeit mitinstallierte Pakete werden ebenfalls entfernt, wenn sie nicht anderweitig benötigt werden. Dies gilt ausschließlich für mit aptitude installierte Pakete.

Konfiguration mit löschen

Zur Deinstallation eines oder mehrerer Pakete dient

sudo aptitude purge Paketname [Paketname]

Dies sollte man nur nutzen, wenn man sicher ist, die Konfiguration nicht später einmal wieder gebrauchen zu können. Die Konfigurationen automatisch mitentfernter Pakete werden nicht angetastet.

Wenn man sicher ist, dass man nun alle alten Konfigurationen löschen und nicht einzeln angeben will, kann man mit diesen Befehlen alle übriggebliebenen Konfigurationen automatisch löschen.

COLUMNS=200 dpkg -l | grep ^rc | awk '{print $2}' | xargs dpkg --purge

Ein Paket samt aller Abhängigkeiten entfernen

dpkg -r $(apt-cache show gimp | sed -n '/Depends:/s/^.*://;s/,//gp')

Überflüssige Pakete automatisch entfernen

sudo apt-get autoremove

Überflüssige Kernel automatisch entfernen

Getestet auf Ubunut Server 10.4, 12.04, 14.04 und 16.04.1:

dpkg -l linux-* | awk '/^ii/{ print $2}' | grep -v -e `uname -r | cut -f1,2 -d"-"` | grep -e [0-9] | xargs sudo apt-get -y purge

Pakete suchen

Pakete können mit dem folgenden Befehl gesucht werden:

aptitude search Paketname

Wird bei einem Installationsbefehl ein nicht existierender Paketname angegeben, werden Alternativen aufgelistet. Die Eingabe von Paketnamen lässt sich außerdem durch Aktivierung der erweiterten (Bash-Vervollständigung) wesentlich erleichtern.

Es kann auch nach bestimmten Eigenschaften gesucht werden. Alle Suchmöglichkeiten werden in

/usr/share/doc/aptitude/README

gelistet. Beispiel:

aptitude search ~Ddepends:gtk~dscanner'!~dvirus'

Sucht nach Paketen, die von *gtk* abhängen und in deren Beschreibung „scanner“, aber nicht „virus“ vorkommt.

Paketinformationen anzeigen

Informationen zu Status, Herkunft, Betreuer, Abhängigkeiten u.a. eines Paketes lassen sich wie folgt anzeigen:

sudo aptitude show Paketname

Einzelne .deb-Pakete installieren

Ein einzelnes Debian-Paket kann mit dem folgenden Befehl installiert werden:

sudo dpkg -i