.deb Pakete aufräumen

Datum

Eine Installation legt über die Nutzungszeit unweigerlich an Paketen zu. Sind es Pakete die man zum testen installierte oder Pakete die einfach nicht mehr gebraucht werden, da sich die Nutzung geändert hat.

Daher gibt es diverse Helfer die hier etwas entrümpeln können.

apt / apt-get autoremove

Entfernt Abhängigkeiten welche nichtmehr benötigt werden.
Beispielsweiße: es wurde das Paket aptitude entfernt mit apt purge aptitude

root@testcontainer:~# apt autoremove
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  aptitude-common libboost-iostreams1.58.0 libcgi-fast-perl libcgi-pm-perl libclass-accessor-perl libcwidget3v5
  libencode-locale-perl libfcgi-perl libhtml-parser-perl libhtml-tagset-perl libhttp-date-perl libhttp-message-perl
  libio-html-perl libio-string-perl liblwp-mediatypes-perl libparse-debianchangelog-perl libsigc++-2.0-0v5
  libsub-name-perl libtimedate-perl liburi-perl libxapian22v5
0 upgraded, 0 newly installed, 21 to remove and 0 not upgraded.
After this operation, 10.5 MB disk space will be freed.
Do you want to continue? [Y/n]

deborphan

Deborphan sucht nach Paketen, welche nichtmehr als eine Abhängigkeit markiert ist. Damit lassen sich vor allem Librarys herausfinden, welche nichtmehr benötigt werden.

Beispiel:

root@testcontainer:~# deborphan
libllvm3.8
libxinerama1
libxtst6
libxxf86dga1
libgl1-mesa-glx
libxcomposite1
libxcb-shape0
libxv1

möglicher Fehler:

root@testcontainer:~# deborphan
deborphan: The status file is in an improper state.
One or more packages are marked as half-installed, half-configured,
unpacked, triggers-awaited or triggers-pending. Exiting.

Lösung: egrep '^Status: |^Package: ' /var/lib/dpkg/status | egrep -B 1 'half-installed|half-configured|unpacked|triggers-awaited|triggers-pending'

Anschließend wird das unvollständige Paket angezeigt, was den start von deborphan behindert.

Beispiel:


Package: nginx
Status: install ok unpacked
--
Package: nginx-core
Status: install ok half-configured
orphaner

Orphaner kommt mit deborphan zusammen, hiermit können Pakete ausgewählt werden, welche anschließend gelöscht werden.

editkeep

Hiermit können Pakete und deren Abhängigkeiten vor dem Anzeigen in deborphaner gesperrt werden. Damit diese nicht irrtümlich gelöscht werden.

debfoster

Mit debfoster werden Pakete mit deren Abhängigkeiten aufgelistet. Anschließend können Optionen übergeben werden, wie mit den Paketen umgegangen werden soll.

root@testcontainer:~# debfoster
git is keeping the following 8 packages installed:
  git-man liberror-perl libperl5.22 patch perl perl-modules-5.22 rename rsync
Keep git? [Ynpsiuqx?], [H]elp:

y – behält das Paket
n – löscht das Paket aber nicht die Abhängigkeiten
p – löscht das Paket und zusätzliche Pakete welche auf dem beruhen, aber nicht alle Librarys
s – überspringt das angezeigt Paket
i – zeigt Informationen über das Paket
u – setzt die vorrangegangene Antwort zurück und ruft die Abfrage zum Paket erneut auf
q – abbrechen, ohne Änderungen an den Paketen
x – speichert die Antworten, löscht markierte Pakete und schließt ohne weitere Fragen das Programm

Leider löscht -n / -p nicht alle Abhängigkeiten der Pakete, weshalb ein apt / apt-get autoremove noch notwendig ist.

Debfoster besitzt eine Liste der Pakete welche man mit „y“ gesichert hat, diese befindet sich unter /var/lib/debfoster/keepers.

Autor
Kategorien Linux, Debian GNU/Linux

PRTG Map