sammlung:apt

Dies ist eine alte Version des Dokuments!


APT - Advanced Package Tool

Kurzfassung: APT ist der Paketmanager für Debian, Ubuntu und deren Derivate. Es verwaltet .deb-Pakete, löst Abhängigkeiten automatisch und ermöglicht die Installation, Aktualisierung und Entfernung von Software. APT ist das zentrale Werkzeug für Softwareverwaltung auf Debian-basierten Systemen.

Übersicht

APT (Advanced Package Tool) ist die Hauptschnittstelle für die Paketverwaltung auf Debian-basierten Systemen. Es bietet eine benutzerfreundliche Kommandozeile für Installation, Update und Verwaltung von Software-Paketen und deren Abhängigkeiten.

Voraussetzungen

  • Debian, Ubuntu oder derivatives System
  • Root-Rechte (sudo) für die meisten Operationen
  • Aktive Internetverbindung für Repository-Zugriff
  • Konfigurierte Repositories in /etc/apt/sources.list

Grundlagen

  • Arbeitet mit .deb-Paketen
  • Nutzt Repositories, die in /etc/apt/sources.list und /etc/apt/sources.list.d/ definiert sind
  • Löst Abhängigkeiten automatisch
  • Ersetzt das ältere apt-get durch modernere Ausgabe

Anleitung

Schritt 1: Paketlisten aktualisieren

# Immer zuerst ausführen vor Installation/Upgrade
sudo apt update
 
# Mit Fortschrittsanzeige
sudo apt update -y

Schritt 2: Pakete installieren

# Einzelnes Paket
sudo apt install paketname
 
# Mehrere Pakete
sudo apt install paket1 paket2 paket3
 
# Ohne Rückfrage (automatisch ja)
sudo apt install -y nginx
 
# Bestimmte Version installieren
sudo apt install paket=1.2.3-1
 
# Installation simulieren (Dry-Run)
sudo apt install --simulate apache2
sudo apt install -s mysql-server
sudo apt install --dry-run php
sudo apt install --download-only paketname 

Schritt 3: Pakete aktualisieren

# Alle installierten Pakete aktualisieren
sudo apt upgrade
 
# Mit automatischer Bestätigung
sudo apt upgrade -y
 
# Intelligent upgrade (kann Pakete entfernen)
sudo apt full-upgrade
 
# Alias für full-upgrade
sudo apt dist-upgrade

Schritt 4: Pakete entfernen

# Paket entfernen, Konfiguration behalten
sudo apt remove paketname
 
# Paket mit Konfigurationsdateien entfernen
sudo apt purge paketname
 
# Nicht mehr benötigte Abhängigkeiten entfernen
sudo apt autoremove
 
# Kombiniert: Purge und Autoremove
sudo apt purge paketname && sudo apt autoremove

Schritt 5: Paketinformationen abrufen

# Nach Paket suchen
apt search webserver
apt search "web server"
 
# Paketdetails anzeigen
apt show nginx
 
# Installierte Pakete auflisten
apt list --installed
 
# Verfügbare Updates anzeigen
apt list --upgradable
 
# Paket in allen Versionen finden
apt list nginx
 
# Abhängigkeiten anzeigen
apt depends nginx
 
# Reverse Dependencies (wer braucht dieses Paket)
apt rdepends libssl3

Schritt 6: Repository-Verwaltung

# PPA hinzufügen (Ubuntu)
sudo add-apt-repository ppa:user/ppa-name
sudo apt update
 
# PPA entfernen
sudo add-apt-repository --remove ppa:user/ppa-name
 
# Repository-Informationen zu Paket
apt policy nginx
 
# Alle verfügbaren Versionen
apt-cache policy paketname

Schritt 7: Cache-Verwaltung

# Download-Cache vollständig leeren
sudo apt clean
 
# Nur veraltete Pakete aus Cache entfernen
sudo apt autoclean
 
# Cache-Größe prüfen
du -sh /var/cache/apt/archives/

Schritt 8: Erweiterte Operationen

# Paket vor Updates schützen (hold)
sudo apt-mark hold paketname
 
# Hold aufheben
sudo apt-mark unhold paketname
 
# Alle gehaltenen Pakete anzeigen
apt-mark showhold
 
# .deb-Datei herunterladen ohne Installation
apt download paketname
 
# Dateien in Paketen suchen (benötigt apt-file)
sudo apt install apt-file
sudo apt-file update
apt-file search /usr/bin/programm

Hinweise

  • apt update: Immer vor Installation/Upgrade ausführen
  • Unterschied apt/apt-get: apt ist benutzerfreundlicher, apt-get in Scripts
  • Sicherheit: Nur vertrauenswürdige Repositories verwenden
  • PPA-Vorsicht: PPAs können Systemstabilität beeinträchtigen
  • Hold-Pakete: Bei kritischen Systemen spezifische Versionen fixieren
  • Cache: Periodisch mit apt clean aufräumen
  • Logs: /var/log/apt/ enthält Installation-Historie

Siehe auch

Quellen

sammlung/apt.1768514784.txt.gz · Zuletzt geändert: von Branislav Zeljak