Zum Inhalt springen

Aptitude: Unterschied zwischen den Versionen

Aus Foxwiki
Die Seite wurde neu angelegt: „== aptitude == <tt>aptitude</tt> verfolgt eine etwas andere Philosophie als <tt>dselect</tt>. * Es wird streng nach installierten, nicht installierten, virtuellen Paketen und Paketen, die in einer neueren Version vorliegen, unterschieden. * Innerhalb dieser vier Gruppen werden alle Pakete in einer Baumstruktur dargestellt, die auch die Verzeichnisstruktur innerhalb des Debian Archives darstellt, also beispielsweise: <tt>main/admin</tt> oder <tt>non-US/non…“
 
 
(34 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
== aptitude ==
{{DISPLAYTITLE:aptitude}}
<tt>aptitude</tt> verfolgt eine etwas andere Philosophie als <tt>dselect</tt>.
 
* Es wird streng nach installierten, nicht installierten, virtuellen Paketen und Paketen, die in einer neueren Version vorliegen, unterschieden.
'''aptitude''' - Terminalbasierte Paketverwaltung
* Innerhalb dieser vier Gruppen werden alle Pakete in einer Baumstruktur dargestellt, die auch die Verzeichnisstruktur innerhalb des Debian Archives darstellt, also beispielsweise: <tt>main/admin</tt> oder <tt>non-US/non-free</tt>.
 
== Beschreibung ==
aptitude ist eine Paketverwaltung mit einigen nützlichen Merkmalen wie beispielsweise eine an mutt erinnernde Syntax für die Paketauswahl, eine dselect ähnelnde Speicherung der Nutzeraktionen, die Möglichkeit zum Herunterladen und Anzeigen des Debian-Changelogs der meisten Pakete sowie einen Befehlszeilenmodus ähnlich dem von apt-get
 
Aptitude ist außerdem Jahr-2000-kompatibel, nicht fettend, selbstreinigend und stubenrein


Sie können einzelne Teile der Struktur aufklappen und in den einzelnen Bereichen Pakete auswählen.
== Installation ==
sudo apt aptitude


[[Image:Grafik3.png|right]]
== Anwendungen ==
[[File:aptitude01.png|mini|400px]]
aptitude verfolgt eine etwas andere Philosophie als [[dselect]]
* Es wird streng nach installierten, nicht installierten, virtuellen Paketen und Paketen, die in einer neueren Version vorliegen, unterschieden
* Innerhalb dieser vier Gruppen werden alle Pakete in einer Baumstruktur dargestellt, die auch die Verzeichnisstruktur innerhalb des Debian Archives darstellt, also beispielsweise: main/admin oder non-US/non-free


Bei <tt>aptitude</tt> decken sich die meisten Tastaturbelegungen mit <tt>dselect</tt>.
Sie können einzelne Teile der Struktur aufklappen und in den einzelnen Bereichen Pakete auswählen


Tastaturbelegungen ähnlich [[dselect]]
{|| class="wikitable sortable"
{|| class="wikitable sortable"
|-
|-
|| '''PFEIL-UNTEN '''
|| '''PFEIL-UNTEN '''
|| Bewegt den Auswahlbalken zum nächsten Eintrag.
|| Bewegt den Auswahlbalken zum nächsten Eintrag
|-
|-
|| '''PFEIL-OBEN '''
|| '''PFEIL-OBEN '''
|| Bewegt den Auswahlbalken zum vorherigen Eintrag.
|| Bewegt den Auswahlbalken zum vorherigen Eintrag
|-
|-
|| '''RETURN '''
|| '''RETURN '''
|| Klappt ein Verzeichnis auf/zu.
|| Klappt ein Verzeichnis auf/zu
|-
|-
|| '''^'''
|| '''^'''
|| Springt zum Verzeichnis, zu dem das Paket gehört.
|| Springt zum Verzeichnis, zu dem das Paket gehört
|-
|-
|| '''+'''
|| '''+'''
|| Markiert ein Paket zur Installation.
|| Markiert ein Paket zur Installation
|-
|-
|| '''-'''
|| '''-'''
|| Markiert ein Paket zum Löschen.
|| Markiert ein Paket zum Löschen
|-
|-
|| '''i'''
|| '''i'''
|| Zeigt die Beschreibung des Pakets an.
|| Zeigt die Beschreibung des Pakets an
|-
|-
|| '''d'''
|| '''d'''
|| Zeigt die Abhängigkeiten des Pakets an.
|| Zeigt die Abhängigkeiten des Pakets an
|-
|-
|| '''v'''
|| '''v'''
|| Zeigt die verfügbaren Versionen des Pakets an.
|| Zeigt die verfügbaren Versionen des Pakets an
|-
|-
|| '''u'''
|| '''u'''
|| Aktualisiert die Liste der verfügbaren Pakete.
|| Aktualisiert die Liste der verfügbaren Pakete
|-
|-
|| '''g'''
|| '''g'''
|| Startet die Installation der ausgewählten Pakete.
|| Startet die Installation der ausgewählten Pakete
|-
|-
|}
|}
Die verschiedenen Hintergrundfarben innerhalb des Programms haben folgende Bedeutung:


; Hintergrundfarben
Bedeutung der verschiedenen Hintergrundfarben
{|| class="wikitable sortable"
{|| class="wikitable sortable"
|-
|-
|| '''schwarz'''
|| '''schwarz'''
|| „Normalzustand“ eines Pakets.
|| "Normalzustand" eines Pakets
* Beim nächsten Installationsdurchlauf wird dieses Paket nicht verändert.
* Beim nächsten Installationsdurchlauf wird dieses Paket nicht verändert
* Fett geschriebene Pakete sind bereits installiert.
* Fett geschriebene Pakete sind bereits installiert
|-
|-
|| '''rot'''
|| '''rot'''
|| Das Paket ist in einem unbrauchbaren Zustand oder kann nicht installiert werden.
|| Das Paket ist in einem unbrauchbaren Zustand oder kann nicht installiert werden
|-
|-
|| '''blau'''
|| '''blau'''
|| Das Paket wird mit einer neueren Programmversion aktualisiert.
|| Das Paket wird mit einer neueren Programmversion aktualisiert
|-
|-
|| '''weiß'''
|| '''weiß'''
|| Dieses Paket könnte aktualisiert werden, es wurde aber auf dem aktuellen Stand fixiert (hold).
|| Dieses Paket könnte aktualisiert werden, es wurde aber auf dem aktuellen Stand fixiert (hold)
|-
|-
|| '''grün'''
|| '''grün'''
|| Das Paket wird installiert.
|| Das Paket wird installiert
|-
|-
|| '''magenta'''
|| '''magenta'''
|| Das Paket wird gelöscht.
|| Das Paket wird gelöscht
|-
|-
|}
|}
Neben einer Benutzeroberfläche bietet <tt>aptitude</tt> auch die Möglichkeit, verschiedenste Aktionen auf der Kommandozeile auszuführen.
* Die Syntax ist dabei wie folgt definiert:


  # aptitude [Optionen] <Aktion> ...
=== Aktionen ===
Neben einer Benutzeroberfläche bietet aptitude auch die Möglichkeit, verschiedenste Aktionen auf der Kommandozeile auszuführen
 
; Syntax
  # aptitude [Optionen] <Aktion> ..
 
Wird beim Aufruf von aptitude auf der Komandozeile keine Aktion angegeben, so startet aptitude im interaktiven Modus
 
; Aktionen beim Start
{|| class="wikitable sortable"
|-
|| '''install '''
|| Installiere/aktualisiere Pakete
|-
|| '''remove '''
|| Entferne Pakete
|-
|| '''purge '''
|| Entferne Pakete und ihre Konfiguration
|-
|| '''hold '''
|| Pakete auf den Status "halten" setzen
|-
|| '''unhold '''
|| Entfernt den Status "halten" des angegebenen Paketes
|-
|| '''markauto '''
|| Pakete als automatisch installiert markieren
|-
|| '''unmarkauto '''
|| Pakete als manuell installiert markieren
|-
|| '''update '''
|| Neue Listen neuer/aktualisierbarer Pakete laden
|-
|| '''upgrade '''
|| Sicheres Upgrade durchführen
|-
|| '''dist-upgrade '''
|| Upgrade durchführen, dabei - wenn notwendig - Pakete installieren/entfernen
|-
|| '''search '''
|| Pakete nach Namen oder Ausdruck suchen
|-
|| '''show '''
|| Gibt detaillierte Informationen zu dem Paket aus
|-
|| '''clean '''
|| Heruntergeladene Pakete löschen
|-
|| '''autoclean '''
|| Alte heruntergeladene Pakete löschen
|-
|| '''download '''
|| Die .deb-Datei eines Pakets herunterladen
|-
|}


Wird beim Aufruf von <tt>aptitude</tt> auf der Komandozeile keine Aktion angegeben, so startet <tt>aptitude</tt> im interaktiven Modus.
=== Optionen ===
Hier zunächst ein Beispiel für eine einfache Installation eines Pakets ohne die empfohlenen Pakete


Aktionen beim Start von <tt>aptitude</tt> können sein:
# aptitude install --without-recommends minicom
Reading Package Lists... Done
Building Dependency Tree
Reading extended state information
Initializing package states..
Done
Reading task descriptions..
Done
The following NEW packages will be installed
  minicom
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded
Need to get 280kB of archives
After unpacking 922kB will be used
Writing extended state information... Done
Get:1 ftp://ftp.de.debian.org sarge/main minicom 2.1-7 [280kB]
86% [1 minicom 241920/280kB 86%]


===  Aktionen ===
Es wird ausschließlich das Paket minicom installiert
* Dies Verhalten entspricht dem Kommando apt-get install minicom


{|| class="wikitable sortable"
# apt-get install minicom
Reading Package Lists... Done
Building Dependency Tree... Done
Recommended packages
lrzsz
The following NEW packages will be installed
minicom
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded
Need to get 280kB of archives
After unpacking 922kB of additional disk space will be used
Get:1 ftp://ftp.de.debian.org sarge/main minicom 2.1-7 [280kB]
88% [1 minicom 247680/280kB 88%]
..
 
Das Paket empfiehlt aber auch das Paket lrzsz, das normalerweise durch aptitude automatisch mitinstalliert wird
 
# aptitude install minicom
Reading Package Lists... Done
Building Dependency Tree
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
The following NEW packages will be automatically installed
  lrzsz
The following NEW packages will be installed
  lrzsz minicom
0 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded
Need to get 373kB of archives. After unpacking 1111kB will be used
Do you want to continue? [Y/n/?]
..
 
== Aufruf ==
=== Optionen ===
Darüber hinaus versteht aptitude die folgenden Optionen beim Aufruf auf der Kommandozeile
* Es ist nicht zwingend notwendig, aptitude mit dem Frontend zu verwenden
{|| class="wikitable sortable options"
|-
|| -h
|| Eine kurze Hilfe zu aptitude
|-
|| -s
|| Aktionen simulieren, aber nicht wirklich durchführen
|-
|-
|| <tt>'''install</tt> '''
|| -d
|| Installiere/aktualisiere Pakete.
|| Pakete nur herunterladen, nichts installieren oder entfernen
|-
|-
|| <tt>'''remove</tt> '''
|| -P
|| Entferne Pakete.
|| Zur Bestätigung nachfragen
|-
|-
|| <tt>'''purge</tt> '''
|| -y
|| Entferne Pakete und ihre Konfiguration.
|| Annehmen, dass die Antwort zu einfachen Ja/nein-Fragen "ja" ist
|-
|-
|| <tt>'''hold</tt> '''
|| -F format
|| Pakete auf den Status „halten“ setzen.
|| Format für die Suchergebnisse angeben
|-
|-
|| <tt>'''unhold</tt> '''
|| -O order
|| Entfernt den Status „halten“ des angegebenen Paketes.
|| Wie die Suchergebnisse sortiert werden sollen
|-
|-
|| <tt>'''markauto</tt> '''
|| -w breite
|| Pakete als automatisch installiert markieren.
|| Die Breite für die Formatierung der Suchergebnisse
|-
|-
|| <tt>'''unmarkauto</tt> '''
|| -f
|| Pakete als manuell installiert markieren.
|| Aggressiv versuchen, kaputte Pakete trotzdem zu installieren
|-
|-
|| <tt>'''update</tt> '''
|| -V
|| Neue Listen neuer/aktualisierbarer Pakete laden.
|| Anzeigen, welche Version eines Pakets installiert wird
|-
|-
|| <tt>'''upgrade</tt> '''
|| -D
|| Sicheres Upgrade durchführen.
|| Abhängigkeiten automatisch veränderter Pakete anzeigen
|-
|-
|| <tt>'''dist-upgrade</tt> '''
|| -Z
|| Upgrade durchführen, dabei - wenn notwendig - Pakete installieren/entfernen.
|| Größenveränderung der einzelnen Pakete anzeigen
|-
|-
|| <tt>'''search</tt> '''
|| -t release
|| Pakete nach Namen oder Ausdruck suchen.
|| Release, aus dem Pakete installiert werden sollen
|-
|-
|| <tt>'''show</tt> '''
|| --with(out)-recommends,
|| Gibt detaillierte Informationen zu dem Paket aus.
|| Beeinflusst, ob oder ob nicht Empfehlungen (Vorschläge) wie starke Abhängigkeiten gehandhabt werden
|-
|-
|| <tt>'''clean</tt> '''
|| -S fname
|| Heruntergeladene Pakete löschen.
|| die erweiterten Aptitude-Statusinformationen aus der Datei fname laden
|-
|-
|| <tt>'''autoclean</tt> '''
|| -u
|| Alte heruntergeladene Pakete löschen.
|| Neue Paketlisten beim Start laden
|-
|-
|| <tt>'''download</tt> '''
|| -i
|| Die <tt>.deb</tt>-Datei eines Pakets herunterladen.
|| Installationslauf am Anfang durchführen
|-
|-
|}
|}


Darüber hinaus versteht <tt>aptitude</tt> die folgenden Optionen beim Aufruf auf der Kommandozeile.
Eine sehr nützliche Option von aptitude ist die Möglichkeit, zu einem Paket auch die empfohlenen (recommended) Pakete zu installieren
* Es ist nicht zwingend notwendig, <tt>aptitude</tt> mit dem Frontend zu verwenden.
* Hierbei werden die beiden Optionen install und --with[out]-recommends kombiniert
 
Beachten Sie, dass dies nur bei noch nicht installierten Paketen funktioniert und nicht bei Paketen, von denen bereits Teile installiert sind
 
=== Argumente ===
=== Umgebung ===
=== Rückgabewert ===
== Konfiguration ==
=== Dateien ===
== Sicherheit ==
== Dokumentation ==
=== Man-Page ===
=== Info-Pages ===


=== Optionen ===
== Siehe auch ==
== Links ==
=== Projekt ===
=== Weblinks ===


{|| class="wikitable sortable"
 
[[Kategorie:APT]]
[[Kategorie:Linux/Befehl]]
{{DEFAULTSORT:aptitude}}
 
 
= TMP =
== aptitude ==
aptitude ist eine Erweiterung der Paketverwaltung APT (Advanced Packaging Tool) welche auf allen Debian-basierten Systemen, und damit auch Ubuntu, zum Einsatz kommt. Es handelt sich, wie bei apt-get, um eine reine Konsolenanwendung, bietet aber eine grafische Oberfläche auf ncurses Basis.
 
Im Gegensatz zu apt-get führt aptitude über Änderungen der installierten Pakete "genauer" Buch, so dass nicht mehr benötigte Pakete automatisch erkannt und deinstalliert werden. Die Installationsgeschichte wird in ein Log geschrieben, wodurch später angezeigt werden kann, wann oder warum ein Paket installiert wurde.
 
Bei Ubuntu gehört aptitude bis zur Version 10.10 zur Standardinstallation, wurde aber aus platztechnischen Gründen von der Installations-CD genommen. In der Server-Variante ist aptitude nach wie vor installiert.
 
=== Installation ===
aptitude kann über das Paket
sudo apt-get install aptitude
installiert werden.
 
Des Weiteren kann man noch das (englische) Handbuch zu aptitude installieren. Dies ist über das Paket
sudo apt-get install aptitude-doc-en
verfügbar.
 
=== Bedienung ===
Wie oben bereits erwähnt, kann man aptitude entweder über die Kommandozeile oder die grafische Oberfläche in der Konsole bedienen. Wie bei der Paketverwaltung üblich, werden Root-Rechte für Schreibvorgänge, wie Paketinstallationen zwingend benötigt. Die allgemeine Syntax lautet:
sudo aptitude BEFEHL PAKET
 
Ruft man das Programm ohne Befehl und Paket auf, erscheint automatisch die grafische Version.
 
Die grafische Version startet zwar auch ohne Root-Rechte, allerdings kann man dann nur suchen bzw. die Liste der installierten Pakete anschauen; man kann aber keine Pakete entfernen, installieren und weitere .
 
==== Grafische Oberfläche ====
[[Image:Grafik64.png|top]]
 
Die Pakete werden vorsortiert und hierarchisch in Form einer aufklappbaren Ordnerstruktur dargestellt.
 
In der grafischen Oberfläche werden die Pakete je nach "Zustand" verschiedenfarbig dargestellt:* '''schwarz''' : Paket wird nicht verändert
* '''rot''' : Paket ist kaputt oder kann nicht installiert werden
* '''blau''' : Paket wird aktualisiert
* '''weiß''' : Paketversion bleibt erhalten, kann aber aktualisiert werden
* '''grün''' : Paket wird installiert
* '''magenta''' : Paket wird gelöscht
 
aptitude kann komplett über die Tastatur gesteuert werden. Alle Funktionen sind aber auch über die entsprechenden Pull-Down Menüs erreichbar, zu denen man mittels Strg + T gelangt. Im Folgenden sind einige Tasten erklärt:
 
{|
|-
| colspan="2" | '''Übersicht Tasten '''
|-
| | '''Taste '''
| | '''Funktion'''
|-
| | '''↓ + ↑ '''
| | Auswahlbalken bewegen
|-
| | '''⏎ '''
| | Verzeichnis auf- und zuklappen
|-
| | '''/ '''
| | Suchen
|-
| | '''N '''
| | Weitersuchen
|-
| | '''L '''
| | Suchen, alle Pakete, auf die das Suchkriterium nicht zutrifft werden aber ausgeblendet
|-
| | '''I '''
| | Paketinformationen anzeigen
|-
| | '''D '''
| | Abhängigkeiten anzeigen
|-
| | '''U '''
| | Paketquellen updaten
|-
| | '''⇧ + U '''
| | alle verfügbaren Updates installieren
|-
| | '''+ '''
| | Paket zur Installation vormerken
|-
| | '''- '''
| | Paket zum Löschen vormerken
|-
| | '''<nowiki>= </nowiki>'''
| | Paketversion halten
|-
| | '''G '''
| | Start der Installation/Deinstallation
|-
| | '''? '''
| | Hilfe anzeigen, d.h. alle verfügbaren Tasten und deren Funktion
|-
|-
|| <tt>'''-h</tt> '''
| | '''⇧ + Q '''
|| Eine kurze Hilfe zu <tt>aptitude</tt>.
| | aptitude beenden
|-
|-
|| <tt>'''-s</tt> '''
|}
|| Aktionen simulieren, aber nicht wirklich durchführen.
Die Suche von aptitude kennt auch weiterführende Suchfunktionen wie Verknüpfungen, Suche in der Beschreibung und weitere . Dazu ein paar Beispiele:* <tt>?name(linux)</tt> - sucht nach allen Paketen, die Linux im Namen haben
* <tt>?description(python)</tt> - sucht nach allen Paketen, die Python in der Beschreibung haben
* <tt>?and(?name(linux),?description(python)</tt> - sucht nach allen Paketen, die Linux im Namen und Python in der Beschreibung haben
* <tt>?installed</tt> - sucht nach allen installierten Paketen
* <tt>?installed(?not(?automatic))</tt> - sucht nach allen installierten Paketen ohne ''markauto'' Tag
 
Eine komplette Übersicht bietet das aptitude-Handbuch.
 
==== Konsole ====
Ruft man aptitude mit einer Option bzw. Paketnamen auf, so wird die Aktion ohne Start der grafischen Oberfläche direkt ausgeführt. Die allgemeine Syntax lautet
 
sudo aptitude BEFEHL OPTION PAKETNAME(N)
 
Wichtig ist, dass der Befehl vor dem/den Paketnamen steht. Eine Option ist in vielen Fällen nicht notwendig. Wird mehr als ein Paketname angegeben, wird die entsprechende Aktion auf alle genannten Pakete angewendet.
 
Im Folgenden sind einige gängige Befehle aufgeführt. Teilweise sind diese identisch mit denen von apt-get und haben i.d.R. auch den gleichen Effekt.
 
{|
|-
|-
|| <tt>'''-d</tt> '''
| colspan="2" | '''Übersicht Befehle Kommandozeile '''
|| Pakete nur herunterladen, nichts installieren oder entfernen.
|-
|-
|| <tt>'''-P</tt> '''
| | '''Befehl '''
|| Zur Bestätigung nachfragen.
| | '''Funktion '''
|-
|-
|| <tt>'''-y</tt> '''
| | <tt>'''install</tt> '''
|| Annehmen, dass die Antwort zu einfachen Ja/nein-Fragen „ja“ ist.
| | installiert das Paket, die Abhängigkeiten werden direkt mit aufgelöst
|-
|-
|| <tt>'''-F format</tt> '''
| | <tt>'''remove</tt> '''
|| Format für die Suchergebnisse angeben.
| | löscht das Paket, die Konfigurationsdateien bleiben aber erhalten
|-
|-
|| <tt>'''-O order</tt> '''
| | <tt>'''purge</tt> '''
|| Wie die Suchergebnisse sortiert werden sollen.
| | löscht das Paket inklusive aller Konfigurationsdateien
|-
|-
|| <tt>'''-w breite</tt> '''
| | <tt>'''hold</tt> '''
|| Die Breite für die Formatierung der Suchergebnisse.
| | erzwingt, dass das Paket in der aktuell installierten Version gehalten wird, d.h. es werden keine Updates dafür installiert
|-
|-
|| <tt>'''-f</tt> '''
| | <tt>'''forbid-version</tt> '''
|| Aggressiv versuchen, kaputte Pakete trotzdem zu installieren.
| | verbietet die Installation einer bestimmten Paketversion, diese muss hinter dem Paketnamen mittels <tt><nowiki>=</nowiki></tt> angehängt werden, also beispielsweise <tt>xserver-xorg=1.7.7+2~broken-4</tt>
|-
|-
|| <tt>'''-V</tt> '''
| | <tt>'''safe-upgrade</tt> '''
|| Anzeigen, welche Version eines Pakets installiert wird.
| | Es wird ein Update der Pakete durchgeführt, die aktualisiert werden können, ohne dass andere Pakete hinzugefügt oder entfernt werden müssen. Dies ist der "normale" Befehl, um innerhalb eines Releases ein Update durchzuführen.
|-
|-
|| <tt>'''-D</tt> '''
| | <tt>'''full-upgrade</tt> '''
|| Abhängigkeiten automatisch veränderter Pakete anzeigen.
| | aktualisiert alle Pakete, installiert neue und entfernt ggf. nicht mehr benötigte; dies ist der Befehl für ein Upgrade zwischen zwei Ubuntu-Versionen (entspricht bei <tt>apt-get</tt> dem <tt>dist-upgrade</tt>)
|-
|-
|| <tt>'''-Z</tt> '''
| | <tt>'''show</tt> '''
|| Größenveränderung der einzelnen Pakete anzeigen.
| | zeigt Informationen zum Paket an
|-
|-
|| <tt>'''-t release</tt> '''
| | <tt>'''why</tt> '''
|| Release, aus dem Pakete installiert werden sollen.
| | zeigt an, welche Pakete von diesem abhängen
|-
|-
|| <tt>'''--with(out)-recommends</tt>, '''
| | <tt>'''why-not</tt> '''
|| Beeinflusst, ob oder ob nicht Empfehlungen (Vorschläge) wie starke Abhängigkeiten gehandhabt werden.
| | zeigt an, warum ein Paket nicht installiert werden kann, also welche Konflikte existieren
|-
|-
|| <tt>'''-S fname</tt> '''
| | <tt>'''clean</tt> '''
|| die erweiterten Aptitude-Statusinformationen aus der Datei <tt>fname</tt> laden.
| | leert den Paketcache, kann u.U. sehr viel Festplattenplatz frei machen
|-
|-
|| <tt>'''-u</tt> '''
| | <tt>'''autoclean</tt> '''
|| Neue Paketlisten beim Start laden.
| | leert den Paketcache für alle Pakete aus den eingetragenen Quellen, kann u.U. sehr viel Festplattenplatz frei machen
|-
|-
|| <tt>'''-i</tt> '''
| | <tt>'''build-dep</tt> '''
|| Installationslauf am Anfang durchführen.
| | installiert die nötigen Quellpakete um das spezifizierte Paket kompilieren zu können (verfügbar seit Ubuntu 8.10)
|-
|-
|}
|}
Eine Option, die hier für <tt>install</tt> erwähnt werden soll, ist <tt>-R</tt>. Dadurch werden nur die direkten Abhängigkeiten mit installiert und nicht auch die Empfehlung, was unter Ubuntu per Voreinstellung passiert, aber Global über den Schlüssel <tt>APT::Install-Recommends</tt> bestimmt werden kann.
==== Pakete suchen ====
Pakete können mit dem folgenden Befehl gesucht werden:
aptitude search SUCHBEGRIFF1 SUCHBEGRIFF2 ...
Wird bei einem Installationsbefehl ein nicht existierender Paketname angegeben, werden Alternativen aufgelistet. Die Eingabe von Paketnamen lässt sich außerdem durch Aktivierung der Shell-Autovervollständigung wesentlich erleichtern.
Es kann auch nach bestimmten Eigenschaften gesucht werden. Alle Suchmöglichkeiten werden in '''/usr/share/doc/aptitude/README''' gelistet. So sucht


Eine sehr nützliche Option von <tt>aptitude</tt> ist die Möglichkeit, zu einem Paket auch die empfohlenen (recommended) Pakete zu installieren.
aptitude search ~Ddepends:gtk~dscanner'!~dvirus'
* Hierbei werden die beiden Optionen <tt>install</tt> und <tt>--with[out]-recommends</tt> kombiniert.


Beachten Sie, dass dies nur bei noch nicht installierten Paketen funktioniert und nicht bei Paketen, von denen bereits Teile installiert sind.
zum Beispiel nach Paketen, die von '''gtk''' abhängen und in deren Beschreibung "scanner", aber nicht "virus" vorkommt. Es können also auch Reguläre Ausdrücke zur Suche genutzt werden.


Hier zunächst ein Beispiel für eine einfache Installation eines Pakets ohne die empfohlenen Pakete:
==== Defekte Pakete reparieren ====
Wenn ein Paket, das nicht zur separaten Installation gedacht ist, eigentlich weitere Pakete benötigt oder in anderer Weise nicht in die bestehende Installation passt, werden bei der nächsten Verwendung "kaputte Pakete" gemeldet. Diese muss man reparieren lassen. Der Befehl


# aptitude install --without-recommends minicom
sudo aptitude -f install
Reading Package Lists... Done
 
Building Dependency Tree
führt entweder zur Installation weiterer Pakete oder zur Entfernung des installierten Pakets. aptitude macht dabei Vorschläge zur Lösung des Problems, die man akzeptieren oder ablehnen kann.
Reading extended state information
 
Initializing package states...
Falls die defekten Pakete bekannt sind, kann auch folgender Befehl das Problem lösen:
Done
 
Reading task descriptions...
sudo aptitude -f install PAKETNAME1 PAKETNAME2
Done
 
The following NEW packages will be installed:
Wobei PAKETNAME1 bzw. PAKETNAME2 und weitere durch die Namen der bekannten defekten Pakete ersetzt wird.
  minicom
 
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
===== Achtung! =====
Need to get 280kB of archives.
Auch wenn aptitude eine gewisse Intelligenz besitzt, so ist die erste vorgeschlagene Lösung nicht immer die beste. D.h. man sollte die Vorschläge immer sorgsam lesen und dann entscheiden, ob diese sinnvoll sind oder nicht!
After unpacking 922kB will be used.
 
Writing extended state information... Done
==== Paketverwaltung unbrauchbar ====
Get:1 ftp://ftp.de.debian.org sarge/main minicom 2.1-7 [280kB]
Sollte die Paketverwaltung nach einem <tt>upgrade</tt> bzw. <tt>dist-upgrade</tt> unbrauchbar werden, so kann einer der folgenden Befehle helfen:
86% [1 minicom 241920/280kB 86%]
 
Nach einem Update der bestehenden Installation:
 
sudo aptitude safe-upgrade -f
 
Nach einem Versions-Upgrade auf eine neue Ubuntu-Version:
 
sudo aptitude full-upgrade -f
 
Nach beiden Befehlen sollte auf jeden Fall noch
 
sudo dpkg --configure -a
 
aufgerufen werden.
 
==== Konfigurationsdaten nachträglich löschen ====
sudo aptitude purge '~c'
 
löscht die Konfigurationsdaten von bereits deinstallierten Paketen.
 
==== Tags vergeben ====
Tags sind zusätzliche Eigenschaften für lokal installierte Pakete. Zum Kompilieren eines Programms werden beispielsweise viele "-dev"-Pakete benötigt. Viele sind anschließend als manuell installiert markiert, werden aber nach erfolgreicher Kompilierung nicht mehr benötigt, allerdings auch nicht automatisch wieder entfernt. Wenn man den Installationszeitraum noch weiß, kann der Blick ins Log helfen, aber das ist nicht sehr praktisch.
 
Vergibt man aber schon bei der Installation beispielsweise das Tag "<programmname>kompilierung" an die betreffenden Pakete, so sieht man auch im Nachhinein leicht, warum ein bestimmtes Paket installiert wurde, und kann gegebenenfalls alle Pakete mit dem Tag entfernen.
 
Beispiel:
 
sudo aptitude install --add-user-tag freeorionkompilierung graphviz-dev libalut-dev libboost1.35-dev libdevil-dev liblog4cpp5-dev libsdl-mixer1.2-dev libsdl1.2-dev python2.5-dev
sudo aptitude remove '?user-tag(freeorionkompilierung)'
 
=== Paketzustand speichern ===
Will man den Zustand aller installierten Pakete, der Caches, der Paketlisten und APT-, sowie aptitude-Einstellungen zu einem Zeitpunkt speichern oder wiederherstellen, kann man dazu den Mechanismus, der eigentlich für reproduzierbare Bugreports gedacht ist, nutzen:* Backup anlegen:
 
sudo aptitude-create-state-bundle DATEINAME * Backup direkt ins System einspielen:
 
sudo tar xvf DATEINAME -C /
 
=== Überflüssige Pakete ===
aptitude entfernt nicht benötigte Pakete automatisch. Wenn aber nicht nur aptitude zur Paketinstallation verwendet wurde, helfen die Pakete debfoster und deborphan , deren Gebrauch im Debian Anwenderhandbuch beschrieben ist. Das Paket '''deborphan''' enthält eine Benutzerschnittstelle (orphaner), die die Bedienung vereinfacht.
 
=== Automatische Sicherheitsupdates ===
Hier empfiehlt es sich, mit einem Editor folgende neue Textdatei anzulegen:


Es wird ausschließlich das Paket <tt>minicom</tt> installiert.
{|
* Dies Verhalten entspricht dem Kommando <tt>apt-get install minicom</tt>.
|-
|| <nowiki>#!/bin/sh</nowiki>
date >> /var/log/aptitude-security-updates
aptitude update >> /var/log/aptitude-security-updates
aptitude safe-upgrade -y -t $(lsb_release --short --codename)-security >> /var/log/aptitude-security-updates
|-
|}
und diese unter dem Namen '''aptitude-security-updates''' im Verzeichnis '''/etc/cron.daily''' abzuspeichern. Danach muss man die Ausführrechte mit


# apt-get install minicom
chmod 775 aptitude-security-updates
Reading Package Lists... Done
Building Dependency Tree... Done
Recommended packages:
lrzsz
The following NEW packages will be installed:
minicom
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 280kB of archives.
After unpacking 922kB of additional disk space will be used.
Get:1 ftp://ftp.de.debian.org sarge/main minicom 2.1-7 [280kB]
88% [1 minicom 247680/280kB 88%]
...


Das Paket empfiehlt aber auch das Paket <tt>lrzsz</tt>, das normalerweise durch <tt>aptitude</tt> automatisch mitinstalliert wird.
im Terminal setzen. Zukünftig wird dadurch täglich automatisch auf Sicherheitsupdates überprüft und - falls vorhanden - diese ohne Nachfrage installiert. Protokolliert wird dies in der Datei '''/var/log/aptitude-security-updates'''.


# aptitude install minicom
Ein ausgeklügelter Mechanismus wird von unattended-upgrades bereitgestellt.
Reading Package Lists... Done
Building Dependency Tree
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
The following NEW packages will be automatically installed:
  lrzsz
The following NEW packages will be installed:
  lrzsz minicom
0 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 373kB of archives. After unpacking 1111kB will be used.
Do you want to continue? [Y/n/?]
...

Aktuelle Version vom 13. September 2025, 14:15 Uhr


aptitude - Terminalbasierte Paketverwaltung

Beschreibung

aptitude ist eine Paketverwaltung mit einigen nützlichen Merkmalen wie beispielsweise eine an mutt erinnernde Syntax für die Paketauswahl, eine dselect ähnelnde Speicherung der Nutzeraktionen, die Möglichkeit zum Herunterladen und Anzeigen des Debian-Changelogs der meisten Pakete sowie einen Befehlszeilenmodus ähnlich dem von apt-get

Aptitude ist außerdem Jahr-2000-kompatibel, nicht fettend, selbstreinigend und stubenrein

Installation

sudo apt aptitude

Anwendungen

aptitude verfolgt eine etwas andere Philosophie als dselect

  • Es wird streng nach installierten, nicht installierten, virtuellen Paketen und Paketen, die in einer neueren Version vorliegen, unterschieden
  • Innerhalb dieser vier Gruppen werden alle Pakete in einer Baumstruktur dargestellt, die auch die Verzeichnisstruktur innerhalb des Debian Archives darstellt, also beispielsweise: main/admin oder non-US/non-free

Sie können einzelne Teile der Struktur aufklappen und in den einzelnen Bereichen Pakete auswählen

Tastaturbelegungen ähnlich dselect

PFEIL-UNTEN Bewegt den Auswahlbalken zum nächsten Eintrag
PFEIL-OBEN Bewegt den Auswahlbalken zum vorherigen Eintrag
RETURN Klappt ein Verzeichnis auf/zu
^ Springt zum Verzeichnis, zu dem das Paket gehört
+ Markiert ein Paket zur Installation
- Markiert ein Paket zum Löschen
i Zeigt die Beschreibung des Pakets an
d Zeigt die Abhängigkeiten des Pakets an
v Zeigt die verfügbaren Versionen des Pakets an
u Aktualisiert die Liste der verfügbaren Pakete
g Startet die Installation der ausgewählten Pakete
Hintergrundfarben

Bedeutung der verschiedenen Hintergrundfarben

schwarz "Normalzustand" eines Pakets
  • Beim nächsten Installationsdurchlauf wird dieses Paket nicht verändert
  • Fett geschriebene Pakete sind bereits installiert
rot Das Paket ist in einem unbrauchbaren Zustand oder kann nicht installiert werden
blau Das Paket wird mit einer neueren Programmversion aktualisiert
weiß Dieses Paket könnte aktualisiert werden, es wurde aber auf dem aktuellen Stand fixiert (hold)
grün Das Paket wird installiert
magenta Das Paket wird gelöscht

Aktionen

Neben einer Benutzeroberfläche bietet aptitude auch die Möglichkeit, verschiedenste Aktionen auf der Kommandozeile auszuführen

Syntax
# aptitude [Optionen] <Aktion> ..

Wird beim Aufruf von aptitude auf der Komandozeile keine Aktion angegeben, so startet aptitude im interaktiven Modus

Aktionen beim Start
install Installiere/aktualisiere Pakete
remove Entferne Pakete
purge Entferne Pakete und ihre Konfiguration
hold Pakete auf den Status "halten" setzen
unhold Entfernt den Status "halten" des angegebenen Paketes
markauto Pakete als automatisch installiert markieren
unmarkauto Pakete als manuell installiert markieren
update Neue Listen neuer/aktualisierbarer Pakete laden
upgrade Sicheres Upgrade durchführen
dist-upgrade Upgrade durchführen, dabei - wenn notwendig - Pakete installieren/entfernen
search Pakete nach Namen oder Ausdruck suchen
show Gibt detaillierte Informationen zu dem Paket aus
clean Heruntergeladene Pakete löschen
autoclean Alte heruntergeladene Pakete löschen
download Die .deb-Datei eines Pakets herunterladen

Optionen

Hier zunächst ein Beispiel für eine einfache Installation eines Pakets ohne die empfohlenen Pakete

# aptitude install --without-recommends minicom
Reading Package Lists... Done
Building Dependency Tree
Reading extended state information
Initializing package states..
Done
Reading task descriptions..
Done
The following NEW packages will be installed
 minicom
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded
Need to get 280kB of archives
After unpacking 922kB will be used
Writing extended state information... Done
Get:1 ftp://ftp.de.debian.org sarge/main minicom 2.1-7 [280kB]
86% [1 minicom 241920/280kB 86%]

Es wird ausschließlich das Paket minicom installiert

  • Dies Verhalten entspricht dem Kommando apt-get install minicom
# apt-get install minicom
Reading Package Lists... Done
Building Dependency Tree... Done
Recommended packages
lrzsz
The following NEW packages will be installed
minicom
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded
Need to get 280kB of archives
After unpacking 922kB of additional disk space will be used
Get:1 ftp://ftp.de.debian.org sarge/main minicom 2.1-7 [280kB]
88% [1 minicom 247680/280kB 88%]
..

Das Paket empfiehlt aber auch das Paket lrzsz, das normalerweise durch aptitude automatisch mitinstalliert wird

# aptitude install minicom
Reading Package Lists... Done
Building Dependency Tree
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
The following NEW packages will be automatically installed
 lrzsz
The following NEW packages will be installed
 lrzsz minicom
0 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded
Need to get 373kB of archives. After unpacking 1111kB will be used
Do you want to continue? [Y/n/?]
..

Aufruf

Optionen

Darüber hinaus versteht aptitude die folgenden Optionen beim Aufruf auf der Kommandozeile

  • Es ist nicht zwingend notwendig, aptitude mit dem Frontend zu verwenden
-h Eine kurze Hilfe zu aptitude
-s Aktionen simulieren, aber nicht wirklich durchführen
-d Pakete nur herunterladen, nichts installieren oder entfernen
-P Zur Bestätigung nachfragen
-y Annehmen, dass die Antwort zu einfachen Ja/nein-Fragen "ja" ist
-F format Format für die Suchergebnisse angeben
-O order Wie die Suchergebnisse sortiert werden sollen
-w breite Die Breite für die Formatierung der Suchergebnisse
-f Aggressiv versuchen, kaputte Pakete trotzdem zu installieren
-V Anzeigen, welche Version eines Pakets installiert wird
-D Abhängigkeiten automatisch veränderter Pakete anzeigen
-Z Größenveränderung der einzelnen Pakete anzeigen
-t release Release, aus dem Pakete installiert werden sollen
--with(out)-recommends, Beeinflusst, ob oder ob nicht Empfehlungen (Vorschläge) wie starke Abhängigkeiten gehandhabt werden
-S fname die erweiterten Aptitude-Statusinformationen aus der Datei fname laden
-u Neue Paketlisten beim Start laden
-i Installationslauf am Anfang durchführen

Eine sehr nützliche Option von aptitude ist die Möglichkeit, zu einem Paket auch die empfohlenen (recommended) Pakete zu installieren

  • Hierbei werden die beiden Optionen install und --with[out]-recommends kombiniert

Beachten Sie, dass dies nur bei noch nicht installierten Paketen funktioniert und nicht bei Paketen, von denen bereits Teile installiert sind

Argumente

Umgebung

Rückgabewert

Konfiguration

Dateien

Sicherheit

Dokumentation

Man-Page

Info-Pages

Siehe auch

Links

Projekt

Weblinks


TMP

aptitude

aptitude ist eine Erweiterung der Paketverwaltung APT (Advanced Packaging Tool) welche auf allen Debian-basierten Systemen, und damit auch Ubuntu, zum Einsatz kommt. Es handelt sich, wie bei apt-get, um eine reine Konsolenanwendung, bietet aber eine grafische Oberfläche auf ncurses Basis.

Im Gegensatz zu apt-get führt aptitude über Änderungen der installierten Pakete "genauer" Buch, so dass nicht mehr benötigte Pakete automatisch erkannt und deinstalliert werden. Die Installationsgeschichte wird in ein Log geschrieben, wodurch später angezeigt werden kann, wann oder warum ein Paket installiert wurde.

Bei Ubuntu gehört aptitude bis zur Version 10.10 zur Standardinstallation, wurde aber aus platztechnischen Gründen von der Installations-CD genommen. In der Server-Variante ist aptitude nach wie vor installiert.

Installation

aptitude kann über das Paket

sudo apt-get install aptitude

installiert werden.

Des Weiteren kann man noch das (englische) Handbuch zu aptitude installieren. Dies ist über das Paket

sudo apt-get install aptitude-doc-en

verfügbar.

Bedienung

Wie oben bereits erwähnt, kann man aptitude entweder über die Kommandozeile oder die grafische Oberfläche in der Konsole bedienen. Wie bei der Paketverwaltung üblich, werden Root-Rechte für Schreibvorgänge, wie Paketinstallationen zwingend benötigt. Die allgemeine Syntax lautet:

sudo aptitude BEFEHL PAKET

Ruft man das Programm ohne Befehl und Paket auf, erscheint automatisch die grafische Version.

Die grafische Version startet zwar auch ohne Root-Rechte, allerdings kann man dann nur suchen bzw. die Liste der installierten Pakete anschauen; man kann aber keine Pakete entfernen, installieren und weitere .

Grafische Oberfläche

Datei:Grafik64.png

Die Pakete werden vorsortiert und hierarchisch in Form einer aufklappbaren Ordnerstruktur dargestellt.

In der grafischen Oberfläche werden die Pakete je nach "Zustand" verschiedenfarbig dargestellt:* schwarz : Paket wird nicht verändert

  • rot : Paket ist kaputt oder kann nicht installiert werden
  • blau : Paket wird aktualisiert
  • weiß : Paketversion bleibt erhalten, kann aber aktualisiert werden
  • grün : Paket wird installiert
  • magenta : Paket wird gelöscht

aptitude kann komplett über die Tastatur gesteuert werden. Alle Funktionen sind aber auch über die entsprechenden Pull-Down Menüs erreichbar, zu denen man mittels Strg + T gelangt. Im Folgenden sind einige Tasten erklärt:

Übersicht Tasten
Taste Funktion
↓ + ↑ Auswahlbalken bewegen
Verzeichnis auf- und zuklappen
/ Suchen
N Weitersuchen
L Suchen, alle Pakete, auf die das Suchkriterium nicht zutrifft werden aber ausgeblendet
I Paketinformationen anzeigen
D Abhängigkeiten anzeigen
U Paketquellen updaten
⇧ + U alle verfügbaren Updates installieren
+ Paket zur Installation vormerken
- Paket zum Löschen vormerken
= Paketversion halten
G Start der Installation/Deinstallation
? Hilfe anzeigen, d.h. alle verfügbaren Tasten und deren Funktion
⇧ + Q aptitude beenden

Die Suche von aptitude kennt auch weiterführende Suchfunktionen wie Verknüpfungen, Suche in der Beschreibung und weitere . Dazu ein paar Beispiele:* ?name(linux) - sucht nach allen Paketen, die Linux im Namen haben

  • ?description(python) - sucht nach allen Paketen, die Python in der Beschreibung haben
  • ?and(?name(linux),?description(python) - sucht nach allen Paketen, die Linux im Namen und Python in der Beschreibung haben
  • ?installed - sucht nach allen installierten Paketen
  • ?installed(?not(?automatic)) - sucht nach allen installierten Paketen ohne markauto Tag

Eine komplette Übersicht bietet das aptitude-Handbuch.

Konsole

Ruft man aptitude mit einer Option bzw. Paketnamen auf, so wird die Aktion ohne Start der grafischen Oberfläche direkt ausgeführt. Die allgemeine Syntax lautet

sudo aptitude BEFEHL OPTION PAKETNAME(N)

Wichtig ist, dass der Befehl vor dem/den Paketnamen steht. Eine Option ist in vielen Fällen nicht notwendig. Wird mehr als ein Paketname angegeben, wird die entsprechende Aktion auf alle genannten Pakete angewendet.

Im Folgenden sind einige gängige Befehle aufgeführt. Teilweise sind diese identisch mit denen von apt-get und haben i.d.R. auch den gleichen Effekt.

Übersicht Befehle Kommandozeile
Befehl Funktion
install installiert das Paket, die Abhängigkeiten werden direkt mit aufgelöst
remove löscht das Paket, die Konfigurationsdateien bleiben aber erhalten
purge löscht das Paket inklusive aller Konfigurationsdateien
hold erzwingt, dass das Paket in der aktuell installierten Version gehalten wird, d.h. es werden keine Updates dafür installiert
forbid-version verbietet die Installation einer bestimmten Paketversion, diese muss hinter dem Paketnamen mittels = angehängt werden, also beispielsweise xserver-xorg=1.7.7+2~broken-4
safe-upgrade Es wird ein Update der Pakete durchgeführt, die aktualisiert werden können, ohne dass andere Pakete hinzugefügt oder entfernt werden müssen. Dies ist der "normale" Befehl, um innerhalb eines Releases ein Update durchzuführen.
full-upgrade aktualisiert alle Pakete, installiert neue und entfernt ggf. nicht mehr benötigte; dies ist der Befehl für ein Upgrade zwischen zwei Ubuntu-Versionen (entspricht bei apt-get dem dist-upgrade)
show zeigt Informationen zum Paket an
why zeigt an, welche Pakete von diesem abhängen
why-not zeigt an, warum ein Paket nicht installiert werden kann, also welche Konflikte existieren
clean leert den Paketcache, kann u.U. sehr viel Festplattenplatz frei machen
autoclean leert den Paketcache für alle Pakete aus den eingetragenen Quellen, kann u.U. sehr viel Festplattenplatz frei machen
build-dep installiert die nötigen Quellpakete um das spezifizierte Paket kompilieren zu können (verfügbar seit Ubuntu 8.10)

Eine Option, die hier für install erwähnt werden soll, ist -R. Dadurch werden nur die direkten Abhängigkeiten mit installiert und nicht auch die Empfehlung, was unter Ubuntu per Voreinstellung passiert, aber Global über den Schlüssel APT::Install-Recommends bestimmt werden kann.

Pakete suchen

Pakete können mit dem folgenden Befehl gesucht werden:

aptitude search SUCHBEGRIFF1 SUCHBEGRIFF2 ...

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

Es kann auch nach bestimmten Eigenschaften gesucht werden. Alle Suchmöglichkeiten werden in /usr/share/doc/aptitude/README gelistet. So sucht

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

zum Beispiel nach Paketen, die von gtk abhängen und in deren Beschreibung "scanner", aber nicht "virus" vorkommt. Es können also auch Reguläre Ausdrücke zur Suche genutzt werden.

Defekte Pakete reparieren

Wenn ein Paket, das nicht zur separaten Installation gedacht ist, eigentlich weitere Pakete benötigt oder in anderer Weise nicht in die bestehende Installation passt, werden bei der nächsten Verwendung "kaputte Pakete" gemeldet. Diese muss man reparieren lassen. Der Befehl

sudo aptitude -f install

führt entweder zur Installation weiterer Pakete oder zur Entfernung des installierten Pakets. aptitude macht dabei Vorschläge zur Lösung des Problems, die man akzeptieren oder ablehnen kann.

Falls die defekten Pakete bekannt sind, kann auch folgender Befehl das Problem lösen:

sudo aptitude -f install PAKETNAME1 PAKETNAME2

Wobei PAKETNAME1 bzw. PAKETNAME2 und weitere durch die Namen der bekannten defekten Pakete ersetzt wird.

Achtung!

Auch wenn aptitude eine gewisse Intelligenz besitzt, so ist die erste vorgeschlagene Lösung nicht immer die beste. D.h. man sollte die Vorschläge immer sorgsam lesen und dann entscheiden, ob diese sinnvoll sind oder nicht!

Paketverwaltung unbrauchbar

Sollte die Paketverwaltung nach einem upgrade bzw. dist-upgrade unbrauchbar werden, so kann einer der folgenden Befehle helfen:

Nach einem Update der bestehenden Installation:

sudo aptitude safe-upgrade -f

Nach einem Versions-Upgrade auf eine neue Ubuntu-Version:

sudo aptitude full-upgrade -f

Nach beiden Befehlen sollte auf jeden Fall noch

sudo dpkg --configure -a

aufgerufen werden.

Konfigurationsdaten nachträglich löschen

sudo aptitude purge '~c'

löscht die Konfigurationsdaten von bereits deinstallierten Paketen.

Tags vergeben

Tags sind zusätzliche Eigenschaften für lokal installierte Pakete. Zum Kompilieren eines Programms werden beispielsweise viele "-dev"-Pakete benötigt. Viele sind anschließend als manuell installiert markiert, werden aber nach erfolgreicher Kompilierung nicht mehr benötigt, allerdings auch nicht automatisch wieder entfernt. Wenn man den Installationszeitraum noch weiß, kann der Blick ins Log helfen, aber das ist nicht sehr praktisch.

Vergibt man aber schon bei der Installation beispielsweise das Tag "<programmname>kompilierung" an die betreffenden Pakete, so sieht man auch im Nachhinein leicht, warum ein bestimmtes Paket installiert wurde, und kann gegebenenfalls alle Pakete mit dem Tag entfernen.

Beispiel:

sudo aptitude install --add-user-tag freeorionkompilierung graphviz-dev libalut-dev libboost1.35-dev libdevil-dev liblog4cpp5-dev libsdl-mixer1.2-dev libsdl1.2-dev python2.5-dev sudo aptitude remove '?user-tag(freeorionkompilierung)'

Paketzustand speichern

Will man den Zustand aller installierten Pakete, der Caches, der Paketlisten und APT-, sowie aptitude-Einstellungen zu einem Zeitpunkt speichern oder wiederherstellen, kann man dazu den Mechanismus, der eigentlich für reproduzierbare Bugreports gedacht ist, nutzen:* Backup anlegen:

sudo aptitude-create-state-bundle DATEINAME * Backup direkt ins System einspielen:

sudo tar xvf DATEINAME -C /

Überflüssige Pakete

aptitude entfernt nicht benötigte Pakete automatisch. Wenn aber nicht nur aptitude zur Paketinstallation verwendet wurde, helfen die Pakete debfoster und deborphan , deren Gebrauch im Debian Anwenderhandbuch beschrieben ist. Das Paket deborphan enthält eine Benutzerschnittstelle (orphaner), die die Bedienung vereinfacht.

Automatische Sicherheitsupdates

Hier empfiehlt es sich, mit einem Editor folgende neue Textdatei anzulegen:

#!/bin/sh

date >> /var/log/aptitude-security-updates aptitude update >> /var/log/aptitude-security-updates aptitude safe-upgrade -y -t $(lsb_release --short --codename)-security >> /var/log/aptitude-security-updates

und diese unter dem Namen aptitude-security-updates im Verzeichnis /etc/cron.daily abzuspeichern. Danach muss man die Ausführrechte mit

chmod 775 aptitude-security-updates

im Terminal setzen. Zukünftig wird dadurch täglich automatisch auf Sicherheitsupdates überprüft und - falls vorhanden - diese ohne Nachfrage installiert. Protokolliert wird dies in der Datei /var/log/aptitude-security-updates.

Ein ausgeklügelter Mechanismus wird von unattended-upgrades bereitgestellt.