Apt
Aus Fedorawiki.de
| |
Anmerkung:
Dieser Artikel bezieht sich auf Fedora Core 5 oder neuer. Der Artikel apt (alte FC-Versionen) beschäftigt sich mit älteren Fedora Core Versionen, wird aber nicht mehr gepflegt. |
Inhaltsverzeichnis |
Einleitung
apt, oder auch apt-rpm, ist ein Paketmanagement-Werkzeug, das ursprünglich für die Debian-Distribution entwickelt wurde, um dort die Paketverwaltung zu erleichtern, mittlerweile aber auf RPM-basierte System portiert wurde. Wie yum greift es auf Internet-/CD-/lokale Quellen zu, so genannte Repositories, in denen Pakete hinterlegt sind, und lädt von dort alle benötigten Pakete, die danach mittels rpm installiert werden.
Bezug
apt ist nicht in der Standardinstallation von Fedora Core enthalten, sondern muss extra installiert werden. Dies geht unter Fedora Core mit dem Installieren der pakete apt und fedora-package-config-apt:
yum install fedora-package-config-apt apt
Damit wird apt installiert und auch automatisch konfiguriert für die Benutzung der Fedora Core und Fedora Extras Quellen.
apt-Quellen einrichten
apt kann zwar auf yum-repositories zugreifen, speichert die Informationen darüber aber in eigenen Konfigurations-Dateien. Wenn man also neben den Standard-Fedora Quellen noch weitere Quellen wie z.B. die von livna.org mit apt nutzen möchte, muss man diese für apt konfigurieren. Einige Repositories wie livna.org bringen eigene Konfigurations-Dateien mit, die dem Nutzer die Arbeit abnehmen. Wenn man z.B. das livna-Repository mit Hilfe des Release-RPMs eingerichtet hat (siehe auch den Artikel Serverlisten), wird automatisch auch livna für apt konfiguriert.
Falls keine automatische Konfiguration zur Verfügung gestellt wird, muss man die Repositories im Verzeichnis eintragen: dort wird für die neue Quelle eine *.list-Datei mit den Informationen über den Server erstellt. Die Server-Informationen müssen dabei so aussehen:
repomd http://server.org/verzeichnis/ $(VERSION)/$(ARCH)/
Die Variablen $(VERSION) und $(ARCH) entsprechend dabei der Fedora-Core-Version und der Architektur. Als Vorlage für eine solche *.list-Datei kann man die dort bereits vorhandenen Konfigurationsdateien für Fedora Core nutzen.
Die Benutzung von apt
Bei der Installation oder dem Update von Paketen werden von apt die aktivierten Repositories durchsucht. Ist das Paket Bestandteil der Repositories, übernimmt apt automatisch alle weiteren notwendigen Schritte:
- Auflösen der Abhängigkeiten:
- Eventuelle Abhängigkeiten werden automatisch aufgelöst und angezeigt. Sofern die zur Auflösung der Abhängigkeiten benötigten Pakete ebenfalls Bestandteil der Repositories sind, werden sie automatisch mit heruntergeladen und installiert.
- Download der Pakete:
- Die zur Installation benötigten Pakete werden von den Repositories auf den lokalen Computer geladen.
- Installation der Pakete:
- Die heruntergeladenen Pakete werden im System installiert.
apt bietet eine Fülle an Möglichkeiten, die wichtigsten seien hier erwähnt:
Pakete installieren
apt-get install Paketname
apt durchsucht nun die vorhandenen, aktiven Repositories nach Paketname. Ist das Paket vorhanden, wird wie oben beschrieben verfahren. Fehlt das Paket, bricht apt ab.
Pakete aktualisieren
apt-get upgrade Paketname
apt durchsucht die Repositories nach Paketname. Ist in einem Repository eine neuere Version des Paketes vorhanden, wird sie installiert.
Nützlich ist der Aufruf dieses Befehls ohne die Angabe eines Paketnamens:
apt-get upgrade
Nun aktualisiert apt alle auf dem System installierten Pakete. So lässt sich durch einen simplen Befehl auf einfache Weise das komplette System auf den jeweils aktuellen Stand bringen.
Der Befehl
apt-get dist-upgrade
erlaubt es apt auch, Pakete zu entfernen, wenn dies nötig sein sollte.
| |
Achtung:
Im Gegensatz zu yum bezieht apt seine Informationen immer aus dem Cache! Dieser muss also regelmäßig aktualisiert werden mit dem Befehl: apt-get update |
Pakete suchen
apt-cache search Suchwort
Dieser Befehl durchsucht die Paketenamen und Paketinformationen nach dem angegebenen Suchwort. (Achtung: Die Ausgabe kann sehr umfangreich sein.)
Pakete entfernen
apt-get remove Paketname
Dieser Befehl deinstalliert nicht nur das einzelne Paket, sondern auch seine Abhängigkeiten, damit das System konsistent bleibt.
Erweiterte Funktionen von apt
Cache leeren
Der Cache von apt wird im Ordner gespeichert. Diese umfasst auch heruntergeladene Pakete. Der Befehl
apt-get autoclean
löscht alle Pakete, für die es bereits neuere Versionen gibt, der Befehl
apt-get clean
löscht den gesamten Inhalt von .
Umfangreiche Paketinformationen anzeigen lassen
Der Befehl
apt-cache show Paketname
zeigt umfangreiche Informationen über das angegebene Paket an, wie z.B. Name, Installationsgröße, Version, Abhängigkeiten, Paketgröße, Dateiname und vor allem eine Beschreibung.
Weitere Optionen
- apt-get --download only
- apt-get --reinstall
apt-get --download-only
Mit dieser Option werden die Pakete nur heruntergeladen und nicht installiert.
apt-get --download-only install PAKETNAME apt-get --download-only upgrade apt-get --download-only dist-upgrade
apt-get --reinstall
Mit dieser Option wird ein vorhandenes Paket neu installiert.
apt-get --reinstall install PAKETNAME
apt-shell - Eine Shell für apt
In der apt-Shell sind die meisten apt-Befehle einfacher zu erreichen. Der Vorteil der Shell ist zudem, dass die Paketliste nur einmal eingelesen wird und nicht bei jedem Aufruf von apt-get und apt-cache. Folgende Befehle stehen zur Verfügung:
Main commands: status - Show the current selections install - Install new packages remove - Remove packages keep - Keep packages upgrade - Perform a global upgrade dist-upgrade - Perform a globla distribution upgrade build-dep - Install build-dependencies for source packages update - Retrieve new lists of packages commit - Apply the changes in the system quit - Leave the APT shell Auxiliar commands: show - Show a readable record for the package showpkg - Show some general information for a single package list/ls - List packages search - Search the package list for a regex pattern script - Run scripts. depends - Show raw dependency information for a package whatdepends - Show raw dependency information on a package check - Verify that there are no broken dependencies unmet - Show unmet dependencies clean - Erase downloaded archive files autoclean - Erase old downloaded archive files
Die Funktionen der Befehle sind dieselben wie bei einem normalen Aufruf. Nur policy fehlt leider. Die Aufrufe werden allerdings nicht sofort umgesetzt. Dafür ist der Befehl commit zuständig, der alle vorangegangenen Änderungen übernimmt und anschließend die Paketlisten neu einliest.
Siehe auch
Weblinks