Benutzer-Werkzeuge

Webseiten-Werkzeuge


sammlung:aptitude

Aptitude

Aptitude ist ein fortgeschrittener Paketmanager für Debian-basierte Systeme mit einer interaktiven Textoberfläche (TUI) und einer Kommandozeilenschnittstelle. Es bietet erweiterte Funktionen zur Paketverwaltung und bessere Abhängigkeitsauflösung als APT.

Grundlagen

  • Arbeitet mit .deb-Paketen
  • Nutzt dieselben Repositories wie APT (/etc/apt/sources.list)
  • Bietet sowohl interaktive als auch Kommandozeilen-Modi
  • Intelligentere Abhängigkeitsauflösung als APT
  • Merkt sich automatisch installierte Pakete (Abhängigkeiten)

Installation

# Aptitude ist nicht standardmäßig installiert
sudo apt update
sudo apt install aptitude

Wichtige Befehle

# Paketlisten aktualisieren
sudo aptitude update

# System aktualisieren
sudo aptitude upgrade         # Sichere Aktualisierung (keine Paket-Entfernung)
sudo aptitude safe-upgrade    # Alias für upgrade
sudo aptitude full-upgrade    # Vollständiges Upgrade (kann Pakete entfernen)

# Pakete installieren und entfernen
sudo aptitude install <paket>       # Paket installieren
sudo aptitude remove <paket>        # Paket entfernen (Konfiguration bleibt)
sudo aptitude purge <paket>         # Paket vollständig entfernen
sudo aptitude reinstall <paket>     # Paket neu installieren

# Mehrere Pakete gleichzeitig
sudo aptitude install paket1 paket2 paket3
sudo aptitude remove paket1 paket2

# Paket installieren und andere entfernen
sudo aptitude install paket1 paket2-

# Paket-Holds (vor Updates schützen)
sudo aptitude hold <paket>          # Paket halten
sudo aptitude unhold <paket>        # Hold aufheben

Suchen und Informationen

# Nach Paketen suchen
aptitude search <suchbegriff>
aptitude search '~n<name>'          # Nach exaktem Paketnamen suchen
aptitude search '~d<beschreibung>'  # In Beschreibung suchen

# Paketinformationen anzeigen
aptitude show <paket>
aptitude versions <paket>           # Verfügbare Versionen anzeigen

# Installierte Pakete anzeigen
aptitude search '~i'                # Alle installierten Pakete
aptitude search '~i!~M'             # Manuell installierte Pakete
aptitude search '~M'                # Automatisch installierte Pakete (Abhängigkeiten)

# Verwaiste Pakete
aptitude search '~o'                # Veraltete/obsolete Pakete
aptitude search '~c'                # Pakete mit Konfigurationsresten

Erweiterte Suchmuster

# Aptitude verwendet mächtige Suchmuster
~i              # Installierte Pakete
~M              # Automatisch installiert
~A              # Automatisch installierbar (nicht mehr benötigt)
~g              # "Garbage" (verwaiste Pakete)
~c              # Pakete mit Konfigurationsdateien (aber nicht installiert)
~o              # Obsolete Pakete
~U              # Aktualisierbare Pakete

# Kombinationen
aptitude search '~i~nssh'           # Installierte Pakete mit "ssh" im Namen
aptitude search '~i!~M~nssh'        # Manuell installierte ssh-Pakete
aptitude search '~i~dsecurity'      # Installierte Pakete mit "security" in Beschreibung

# Negation
aptitude search '~i!~nssh'          # Installierte Pakete OHNE "ssh" im Namen

Abhängigkeiten verwalten

# Nicht mehr benötigte Pakete entfernen
sudo aptitude autoclean             # Veraltete .deb-Dateien aus Cache entfernen
sudo aptitude clean                 # Gesamten Paket-Cache leeren

# Verwaiste Pakete entfernen (nicht mehr benötigte Abhängigkeiten)
sudo aptitude search '~g'           # Verwaiste Pakete anzeigen
sudo aptitude purge '~g'            # Verwaiste Pakete entfernen

# Abhängigkeiten eines Pakets anzeigen
aptitude show <paket> | grep Depends
aptitude why <paket>                # Warum ist Paket installiert?
aptitude why-not <paket>            # Warum kann Paket nicht installiert werden?

Interaktiver Modus

# Interaktive TUI starten
sudo aptitude

# Navigation im interaktiven Modus:
# ↑/↓          - Navigieren
# Enter        - Kategorie öffnen/schließen
# +            - Paket zur Installation markieren
# -            - Paket zur Entfernung markieren
# _            - Paket zum Purge markieren
# =            - Paket halten (Hold)
# :            - Paket unhold
# g            - Vorschau der Änderungen / Änderungen ausführen
# q            - Beenden
# ?            - Hilfe
# /            - Suchen
# \            - Rückwärts suchen
# n            - Nächstes Suchergebnis
# u            - Paketlisten aktualisieren
# U            - Alle aktualisierbaren Pakete markieren

Paket-Status ändern

# Paket als automatisch installiert markieren
sudo aptitude markauto <paket>

# Paket als manuell installiert markieren
sudo aptitude unmarkauto <paket>

# Nützlich um Pakete zu behalten, die sonst als "verwaist" entfernt würden
sudo aptitude unmarkauto wichtiges-paket

Simulation und Debugging

# Aktionen simulieren (Dry-Run)
aptitude -s install <paket>
aptitude --simulate upgrade
aptitude -s full-upgrade

# Verbose-Ausgabe
aptitude -v install <paket>
aptitude -vv install <paket>        # Noch mehr Details

# Download ohne Installation
aptitude download <paket>

# Nur herunterladen, nicht installieren
sudo aptitude -d install <paket>

Problemlösung

# Kaputte Abhängigkeiten reparieren
sudo aptitude install -f

# Paket mit spezifischer Version installieren
sudo aptitude install <paket>=<version>

# Paket von bestimmtem Repository installieren
sudo aptitude install <paket>/testing
sudo aptitude install <paket>/unstable

# Konfliktlösung
# Wenn aptitude Konflikte findet, bietet es mehrere Lösungsvorschläge
# Durchlaufen mit: n (next), q (quit), ! (akzeptieren)

Konfiguration

# Aptitude-Konfiguration
/etc/apt/apt.conf.d/              # Globale Konfiguration
~/.aptitude/config                # User-spezifische Konfiguration

# Beispiel-Konfigurationen
# Empfohlene Pakete nicht automatisch installieren:
aptitude::Recommends-Important "false";

# Vorgeschlagene Pakete nicht anzeigen:
aptitude::Suggest-Important "false";

Log-Dateien

# Aptitude führt ein detailliertes Log
/var/log/aptitude                 # Hauptlog-Datei

# Log anzeigen
less /var/log/aptitude
tail -f /var/log/aptitude

# Zeigt alle Paketoperationen mit Zeitstempel

Unterschiede zu APT

Feature apt/apt-get aptitude
Abhängigkeitsauflösung Basis Intelligenter, bietet Alternativen
Interaktiver Modus Nein Ja (TUI)
Automatische Pakete Teilweise Vollständig (merkt sich Dependencies)
Konfliktlösung Einfach Erweitert mit Lösungsvorschlägen
Suchmuster Basis Erweiterte Pattern-Syntax
Logs APT-Logs Eigene detaillierte Logs
why/why-not Nein Ja
Empfehlung Standard Fortgeschrittene Nutzer

Häufige Anwendungsfälle

Verwaiste Pakete entfernen

# Alle nicht mehr benötigten Pakete anzeigen
aptitude search '~g'

# Verwaiste Pakete entfernen
sudo aptitude purge '~g'

# Oder im interaktiven Modus
sudo aptitude
# Dann 'g' drücken, um verwaiste Pakete zu sehen und zu entfernen

Paket mit allen Abhängigkeiten entfernen

# Paket entfernen und Abhängigkeiten als "verwaist" markieren
sudo aptitude purge <paket>
sudo aptitude purge '~g'

# Oder in einem Schritt
sudo aptitude purge <paket> '~g'

System-Upgrade

# Sichere Aktualisierung
sudo aptitude update
sudo aptitude safe-upgrade

# Vollständiges Upgrade (für Distribution-Upgrade)
sudo aptitude update
sudo aptitude full-upgrade

# Mit Simulation vorher
sudo aptitude -s full-upgrade

Pakete nach Größe suchen

# Größte installierte Pakete anzeigen
aptitude search '~i' --sort '~installsize' | tail -20

# Paketgröße anzeigen
aptitude show <paket> | grep "Installed Size"

Konfigurationsreste aufräumen

# Pakete mit Konfigurationsresten finden
aptitude search '~c'

# Alle Konfigurationsreste entfernen
sudo aptitude purge '~c'

Tipps und Best Practices

  • Erste Wahl für komplexe Abhängigkeiten - Bessere Konfliktlösung als apt
  • Interaktiver Modus nutzen - Übersichtliche Darstellung aller Pakete
  • Suchmuster lernen - Mächtige Filterfunktionen für große Paketverwaltung
  • markauto/unmarkauto - Wichtige Pakete vor versehentlichem Entfernen schützen
  • Simulation zuerst - Große Operationen mit -s testen
  • why/why-not Befehle - Abhängigkeiten verstehen
  • Log-Dateien nutzen - Detaillierte Historie aller Operationen
  • Kombination mit apt - Beide Tools können parallel genutzt werden

Bekannte Einschränkungen

  • Langsamer als apt - Komplexere Berechnungen brauchen mehr Zeit
  • Höherer Speicherbedarf - Mehr RAM für Abhängigkeitsberechnung
  • Nicht mehr Standard - APT ist der neue Standard in modernen Debian/Ubuntu
  • Learning Curve - Suchmuster und TUI benötigen Einarbeitung

Weitere Informationen

man aptitude
man aptitude-doc-en       # Ausführliche Dokumentation (aptitude-doc-en installieren)

# Online-Hilfe
aptitude --help
aptitude -h

# In der TUI
# ? drücken für Hilfe

Siehe auch



sammlung/aptitude.txt · Zuletzt geändert: von 127.0.0.1