Entfernen von Metapaketen mittels apt und aptitude
 

Definition von Metapaketen

Metapakete enthalten selbst keine Software, sondern definieren nur durch Abhängigkeiten eine Liste von anderen Paketen. Installiert man das Metapaket, werden automatisch alle durch Abhängigkeiten definierten Pakete mit allen direkten und indirekten Abhängigkeiten installiert. Somit ist es möglich eine Liste von Paketen in einem Rutsch zu installieren.

Da Metapakete selbst keinerlei Daten enthalten, können sie gefahrlos deinstalliert werden. Allerdings werden damit auch sämtliche Pakete die durch das Metapaket installiert wurden als "überflüssig" gekennzeichnet und man läuft Gefahr durch ein apt-get autoremove Pakete zu verlieren, die man eigentlich behalten wollte.


Ein kleines Beispiel

Möchte man das Paket kate loswerden, welches Teil des Metapakets kdebase (Die Basis-Installation von KDE, sozusagen das KDE-Grundsystem mit allen dazu erforderlichen Paketen) ist, verweigert apt die Deinstallation, da es von kdebase benötigt wird. Also muß man das Metapaket kdebase loswerden. Dazu deinstalliert man mit apt-get remove kdebase das Metapaket. Dadurch werden aber sämtliche KDE-Komponenten als nicht mehr benötigt gekennzeichnet, und ein anschließendes apt-get autoremove (worauf apt nach der Deinstallation hinweist), entfernt den KDE-Desktop komplett.

Die Lösung

Die Lösung ist simpel: Man entfernt mit
# apt-get remove kdebase
das Metapaket und ändert mit dem Befehl
# aptitude keep-all
den Status sämtlicher noch verbliebenen Pakete von Deinstallieren auf Installiert.