PACMAN.CONF(5) Pacman-Handbuch PACMAN.CONF(5)
BEZEICHNUNG
pacman.conf - Konfigurationsdatei fur den Paketverwalter Pacman
UBERSICHT
/etc/pacman.conf
BESCHREIBUNG
Pacman versucht bei jedem Aufruf, mittels libalpm(3) die Datei
pacman.conf zu lesen. Diese Konfigurationsdatei ist in Abschnitte oder
Repositorien unterteilt. Jeder Abschnitt definiert ein
Paket-Repositorium, das Pacman bei der Suche nach Paketen im
--sync-Modus nutzen kann. Eine Ausnahme bildet der Abschnitt
>>options<<, in dem globale Optionen definiert werden.
Kommentare werden nur am Anfang einer Zeile unterstutzt, indem diese
mit einem Rautezeichen (#) begonnen wird. Kommentare durfen nicht
inmitten einer Zeile beginnen.
BEISPIEL
#
# pacman.conf
#
[options]
NoUpgrade = etc/passwd etc/group etc/shadow
NoUpgrade = etc/fstab
[core]
Include = /etc/pacman.d/core
[custom]
Server = file:///home/pkgs
Hinweis
Jede Anweisung muss in >>CamelCase<< (>>Kamelschrift<<,
Schreibweise mit innenliegenden Grossbuchstaben) eingetragen
werden. Falls diese Schreibweise nicht respektiert wird, wird die
Anweisung nicht erkannt. Beispielsweise wurde weder >>noupgrade<<
noch >>NOUPGRADE<< funktionieren.
OPTIONEN
RootDir = /Pfad/zum/Wurzelverzeichnis
legt das standardmassige Wurzelverzeichnis fest, in das Pacman
installieren soll. Diese Option wird dann verwendet, wenn Sie ein
Paket auf einer temporar eingehangten Partition installieren
wollen, die zu einem anderen System >>gehort<< oder bei einer
Chroot-Installation. HINWEIS: Falls der Datenbankpfad oder die
Protokolldatei weder in der Befehlszeile noch in pacman.conf(5)
angegeben sind, wird der Standardort innerhalb dieses Wurzelpfades
liegen.
DBPath = /Pfad/zum/Datenbankverzeichnis
setzt den vorgegebenen Ort des obersten Verzeichnisses der
Datenbank ausser Kraft. Die Voreinstellung ist /var/lib/pacman/.
Die meisten Benutzer werden diese Option nicht andern mussen.
HINWEIS: Falls angegeben, ist dies ein absoluter Pfad; der Pfad zum
Wurzelverzeichnis wird nicht automatisch vorangestellt.
CacheDir = /Pfad/zum/Zwischenspeicherverzeichnis
setzt den vorgegebenen Ort des Paketzwischenspeicherverzeichnisses
ausser Kraft. Die Voreinstellung ist /var/cache/pacman/pkg/.
Mehrere Zwischenspeicherverzeichnisse konnen angegeben werden,
wobei diese dann in der Reihenfolge versucht werden, in der sie in
der Konfigurationsdatei angegeben sind. Falls eine Datei in keinem
Zwischenspeicherverzeichnis gefunden wird, wird sie in das erste
Zwischenspeicherverzeichnis heruntergeladen, in das geschrieben
werden kann. HINWEIS: Dies ist ein absoluter Pfad; der Pfad zum
Wurzelverzeichnis wird nicht automatisch vorangestellt.
HookDir = /Pfad/zum/Hook-Verzeichnis
fugt Verzeichnisse hinzu, in denen zusatzlich zum Hook-Verzeichnis
des Systems (/usr/share/libalpm/hooks/) nach Alpm-Hooks gesucht
werden soll. Die Voreinstellung ist /etc/pacman.d/hooks. Mehrere
Verzeichnisse konnen angegeben werden, wobei Hooks in spater
angegebenen Verzeichnissen Vorrang vor den fruher angegebenen
Verzeichnissen haben. HINWEIS: Dies ist ein absoluter Pfad; der
Pfad zum Wurzelverzeichnis wird nicht vorangestellt. Weitere
Informationen zu den Alpm-Hooks finden Sie in alpm-hooks(5).
GPGDir = /Pfad/zum/GPG-Verzeichnis
setzt den vorgegebenen Ort des Verzeichnisses der
Konfigurationsdateien fur GnuPG ausser Kraft. Die Voreinstellung
ist /etc/pacman.d/gnupg/. Dieses Verzeichnis sollte zwei Dateien
enthalten: pubring.gpg und trustdb.gpg. In pubring.gpg werden die
offentlichen Schlussel aller Paketbetreuer gespeichert. Die Datei
trustdb.gpg enthalt die sogenannte Vertrauensdatenbank, welche
angibt, das die Schlussel authentisch und vertrauenswurdig sind.
HINWEIS: Dies ist ein absoluter Pfad; der Pfad zum
Wurzelverzeichnis wird nicht automatisch vorangestellt.
LogFile = /Pfad/zur/Protokolldatei
setzt den vorgegebenen Ort der Pacman-Protokolldatei ausser Kraft.
Die Voreinstellung ist /var/log/pacman/. Dies ist ein absoluter
Pfad; der Pfad zum Wurzelverzeichnis wird nicht automatisch
vorangestellt.
HoldPkg = Paket >
Falls ein Benutzer versucht, ein Paket mit --remove zu entfernen,
das in HoldPkg aufglistet ist, bittet Pacman um Bestatigung, bevor
fortgesetzt wird. Platzhalter im Shell-Stil sind dabei erlaubt.
IgnorePkg = Paket >
weist Pacman an, samtliche Aktualisierungen fur dieses Paket zu
ignorieren, wenn eine Systemaktualisierung mit --sysupgrade
ausgefuhrt wird. Platzhalter im Shell-Stil sind dabei erlaubt.
IgnoreGroup = Gruppe >
weist Pacman an, samtliche Aktualisierungen fur alle Pakete in
dieser Gruppe zu ignorieren, wenn eine Systemaktualisierung mit
--sysupgrade ausgefuhrt wird. Platzhalter im Shell-Stil sind dabei
erlaubt.
Include = /Pfad/zur/Konfigurationsdatei
bezieht eine weitere Konfigurationsdatei ein. Diese Datei kann
Repositorien oder allgemeine Konfigurationsoptionen enthalten.
Platzhalter in den angegebenen Pfaden werden gemass den
glob(7)-Regeln expandiert.
Architecture = auto &| i686 &| x86_64 | >
erlaubt Pacman nur die Installation von Paketen der angegebenen
Architekturen (zum Beispiel i686, x86_64, usw.). Der besondere Wert
auto verwendet die Systemarchitektur, die der Befehl >>uname -m<<
ausgibt. Falls nicht gesetzt, werden keine Architekturuberprufungen
ausgefuhrt. HINWEIS: Pakete mit der besonderen Architektur any
konnen immer installiert werden, da sie architekturunabhangig sind.
XferCommand = /Pfad/zum/Befehl %u
bewirkt, dass zum Herunterladen aller fernen Dateien ein externes
Programm verwendet wird. Alle Instanzen von %u werden durch die
Download-Adresse ersetzt. Falls vorhanden, werden Instanzen von %o
durch den lokalen Dateinamen ersetzt und erhalten die Endung
>>.part<<, die Programmen wie wget die reibungslose Wiederaufnahme
unterbrochener Downloads ermoglicht.
Diese Option ist nutzlich, wenn Benutzer Probleme mit der
eingebauten Unterstutzung fur HTTP/FTP haben oder erweiterte
Proxy-Unterstutzung benotigen, die Werkzeuge wie wget mitliefern.
NoUpgrade = Datei >
bewirkt, dass alle unter der NoUpgrade-Anweisung aufgelisteten
Dateien wahrend einer Paketinstallation oder -aktualisierung
niemals angeruhrt werden und die neuen Dateien mit der Endung
.pacnew installiert werden. Diese Dateien verweisen auf die Dateien
im Paketarchiv, daher durfen Sie keinen Schragstrich (das
Wurzelverzeichnis) voranstellen, wenn Sie sie angeben. Platzhalter
im Shell-Stil sind dabei erlaubt. Es ist moglich, die Suchlogik
umzukehren, indem Sie einem Dateinamen ein Ausrufezeichen
voranstellen. Dieses Ausrufezeichen hat den Effekt, dass zuvor
ausgeschlossene Dateien nun wieder einbezogen werden. In Folge
gefundene Ubereinstimmungen setzen zuvor gefundene ausser Kraft.
Wenn ein literales Ausrufezeichen oder ein Ruckschragstrich
vorangestellt ist, muss dieses Zeichen maskiert werden.
NoExtract = Datei >
bewirkt, dass alle mit der NoExtract-Anweisung aufgelisteten
Dateien niemals aus einem Paket in das Dateisystem entpackt
werden. Dies kann nutzlich sein, wenn Sie Teile eines Pakets nicht
installieren wollen. Wenn beispielsweise Ihre HTTP-Wurzel eine
Datei index.php verwendet, dann werden Sie nicht wollen, dass die
Datei index.html aus dem Paket apache entpackt wird. Diese Dateien
verweisen auf Dateien im Paketarchiv, daher durfen Sie keinen
Schragstrich (das Wurzelverzeichnis) voranstellen, wenn Sie sie
angeben. Platzhalter im Shell-Stil sind dabei erlaubt. Es ist
moglich, die Suchlogik umzukehren, indem Sie einem Dateinamen ein
Ausrufezeichen voranstellen. Dieses Ausrufezeichen hat den Effekt,
dass zuvor ausgeschlossene Dateien nun wieder einbezogen werden. In
Folge gefundene Ubereinstimmungen setzen zuvor gefundene ausser
Kraft. Wenn ein literales Ausrufezeichen oder ein Ruckschragstrich
vorangestellt ist, muss dieses Zeichen maskiert werden.
CleanMethod = KeepInstalled &| KeepCurrent
Wenn dies auf KeepInstalled (die Voreinstellung) gesetzt ist,
loscht die Aktion -Sc Eintrage fur Pakete, die nicht mehr
installiert sind (das heisst, in der lokalen Datenbank nicht mehr
vorhanden sind). Wenn auf KeepCurrent gesetzt, werden mit -Sc
veraltete Paketeintrage geloscht (die nicht in der
Synchronisationsdatenbank vorhanden sind). Letzterer Fall ist
nutzlich, wenn der Paketzwischenspeicher von mehreren Rechnern
gemeinsam genutzt wird, auf denen die lokalen Datenbanken
ublicherweise unterschiedlich, aber die verwendeten
Synchronisationsdatenbanken gleich sein konnten. Falls beide Werte
angegeben werden, werden Paketeintrage nur dann geloscht, wenn sie
sowohl lokal nicht installiert sind als auch in keiner bekannten
Synchronisationsdatenbank mehr vorhanden sind.
SigLevel = >
legt die standardmassige Stufe der Signaturuberprufung fest.
Weitere Informationen finden Sie im nachfolgenden Abschnitt
>>UBERPRUFEN VON PAKET- UND DATENBANKSIGNATUREN<<.
LocalFileSigLevel = >
legt die Uberprufungsstufe fur Signaturen beim Installieren von
Paketen mit der Aktion -U fur eine lokale Datei fest. Dabei wird
der Wert von SigLevel als Vorgabe verwendet.
RemoteFileSigLevel = >
legt die Uberprufungsstufe fur Signaturen beim Installieren von
Paketen mit der Aktion -U fur eine ferne Dateiadresse (URL) fest.
Dabei wird der Wert von SigLevel als Vorgabe verwendet.
UseSyslog
protokolliert Meldungen mittels syslog(). Dadurch werden
Protokolleintrage in /var/log/messages oder aquivalent hinzugefugt.
Color
aktiviert die farbige Ausgabe automatisch nur dann, wenn die
Ausgabe von Pacman auf einem Terminal erfolgt.
NoProgressBar
deaktiviert Fortschrittsanzeigen. Dies ist fur Terminals sinnvoll,
die keine Maskierungszeichen unterstutzen.
CheckSpace
uberpruft vor der Installation von Paketen durch eine Schatzung, ob
genugend Plattenplatz zur Verfugung steht.
VerbosePkgLists
zeigt fur Aktualisierungs-, Synchronisations- und
Entfernungsaktionen Name, Version und Grosse der Zielpakete in
einer Tabelle formatiert an.
DisableDownloadTimeout
deaktiviert die Standardeinstellungen fur untere
Bandbreitenbegrenzung und Zeituberschreitung beim Herunterladen.
Diese Option kann hilfreich sein, wenn Sie Probleme beim
Herunterladen von Dateien uber einen Proxy und/oder ein
Sicherheits-Gateway haben.
ParallelDownloads = >
gibt die Anzahl der gleichzeitigen Download-Datenstrome an. Der
Wert muss eine positive Ganzzahl sein. Falls diese
Konfigurationsoption nicht gesetzt ist, wird nur ein
Download-Datenstrom verwendet (das heisst, die Downloads werden
nacheinander ausgefuhrt).
REPOSITORY-ABSCHNITTE
Jeder Repository-Abschnitt definiert einen Abschnittsnamen und
mindestens einen Ort, wo die Pakete gefunden werden konnen. Der
Abschnittsname wird durch die Zeichenkette in eckigen Klammern
definiert (die zwei oben genannten sind core und custom). Die Namen der
Repositorien mussen eindeutig sein, wobei der Name local fur die
Datenbank der installierten Pakete reserviert ist. Die Orte werden
durch die Server-Anweisung definiert und folgen einem
URL-Benennungsschema. Falls Sie ein lokales Verzeichnis verwenden
wollen, konnen Sie einen vollstandigen Pfad mit vorangestelltem
>>file://<< angeben, wie vorstehend gezeigt.
Ein ublicher Weg zur Definition der Datenbankorte nutzt die
Include-Anweisung. Fur jedes in der Konfigurationsdatei definierte
Repositorium kann eine einzelne Include-Anweisung den Namen einer Datei
enthalten, welche die Server fur dieses Repositorium auflistet.
[core]
# Diesen Server zuerst verwenden
Server = ftp://ftp.archlinux.org/$repo/os/$arch
# Dann diese Server wie in der nachfolgenden Mirror-Liste verwenden
Include = {sysconfdir}/pacman.d/mirrorlist
Die Reihenfolge der Repositorien in der Konfigurationsdatei ist von
Bedeutung; Repositorien, die zuerst aufgelistet sind, haben Vorrang vor
den spater in der Datei erscheinenden Repositorien, wenn Pakete in zwei
Repositorien den gleichen Namen haben (unabhangig von der
Versionsnummer).
Include = Pfad
bezieht eine weitere Konfigurationsdatei ein. Diese Datei kann
Repositorien oder allgemeine Konfigurationsoptionen enthalten.
Platzhalter in den angegebenen Pfaden werden entsprechend den
glob(7)-Regeln expandiert.
Server = Adresse (URL)
gibt eine vollstandige Adresse (URL) an, unter der die Datenbank,
die Pakete und die Signaturen (sofern verfugbar) fur dieses
Repositorium gefunden werden konnen.
Wahrend der Auswertung setzt Pacman die Variable $repo auf den
Namen des aktuellen Abschnitts. Dies wird oft in Dateien verwendet,
die in der Include-Anweisung angegeben sind, so dass alle
Repositorien die gleiche Spiegelserverdatei verwenden konnen.
Pacman setzt auch die Variable $arch auf den ersten (oder einzigen)
Wert der Architektur, so dass die gleiche Spiegelserverdatei auch
fur verschiedene Architekturen genutzt werden kann.
SigLevel = >
legt die Stufe der Signaturuberprufung fur dieses Repositorium
fest. Weitere Informationen finden Sie im nachfolgenden Abschnitt
>>UBERPRUFEN VON PAKET- UND DATENBANKSIGNATUREN<<.
Usage = >
legt die Nutzungsstufe fur dieses Repositorium fest. Diese Option
akzeptiert eine Reihe von Kurzeln, von denen mindestens eines der
Folgenden verwendet werden muss:
Sync
aktiviert Auffrischungen dieses Repositoriums.
Search
aktiviert die Suche in diesem Repositorium.
Install
aktiviert die Installation von Paketen aus diesem Repositorium
wahrend einer --sync-Aktion.
Upgrade
erklart dieses Repositorium zu einer gultigen Paketquelle, wenn
die Aktion --sysupgrade ausgefuhrt wird.
All
aktiviert alle der oben genannten Funktionen fur dieses
Repositorium. Dies ist die Voreinstellung, falls nichts
angegeben ist.
Beachten Sie, dass ein aktiviertes Repositorium unabhangig von
der festgelegten Nutzungsstufe auch explizit verwendet werden
kann.
UBERPRUFEN VON PAKET- UND DATENBANKSIGNATUREN
Die SigLevel-Anweisung ist in den [options]- und auch den
[repository]-Abschnitten zulassig. Falls Sie sie in [options]
verwenden, wird ein Standardwert fur jedes Repositorium gesetzt, das
die Einstellung selbst nicht bereitstellt.
o Falls auf Never gesetzt, wird keine Signaturuberprufung
ausgefuhrt.
o Falls auf Optional gesetzt, werden vorhandene Signaturen gepruft,
aber dennoch unsignierte Datenbanken und Pakete akzeptiert.
o Falls auf Required gesetzt, sind Signaturen fur alle Pakete und
Datenbanken erforderlich.
Alternativ erhalten Sie eine granularere Kontrolle, indem Sie einige
der nachfolgend beschriebenen Optionen und Prafixe kombinieren. Alle
Optionen in einer Konfigurationsdatei werden von oben nach unten und
von links nach rechts abgearbeitet, woraus sich ergibt, dass spater
erscheinende Optionen die fruheren ausser Kraft setzen beziehungsweise
erganzen. Falls SigLevel in einem [repository]-Abschnitt angegeben ist,
ist der Startwert derjenige aus dem Abschnitt [options] oder die
eingebaute Voreinstellung des Systems, falls nichts angegeben ist.
Die Optionen sind in zwei Hauptgruppen unterteilt, die nachfolgend
beschrieben sind. Die dort verwendeten Begriffe wie >>marginally
trusted<< werden von GnuPG verwendet; weitere Informationen finden Sie
in der Handbuchseite zu gpg(1).
Uberprufungsregeln
Diese Optionen steuern, ob und wann Signaturuberprufungen
vorgenommen werden sollen.
Never
unterdruckt samtliche Signaturuberprufungen, selbst wenn
Signaturen verfugbar sind.
Optional (Standard)
bewirkt, dass Signaturen uberpruft werden, wenn sie vorhanden
sind; eine nicht vorhandene Signatur wird dabei nicht als
Fehler gewertet. Eine ungultige Signatur ist ein
schwerwiegender Fehler, sowie auch Signaturen aus einem
Schlussel, der nicht im Schlusselbund vorhanden ist.
Required
macht Signaturen erforderlich; eine nicht vorhandene oder
ungultige Signatur ist ein schwerwiegender Fehler, sowie auch
Signaturen aus einem Schlussel, der nicht im Schlusselbund
vorhanden ist.
Was erlaubt ist
Diese Optionen steuern, welche Signaturen als akzeptabel betrachtet
werden konnen. Beachten Sie, dass es keine der Optionen erlaubt,
ungultige oder abgelaufene Signaturen oder solche aus widerrufenen
Schlusseln zu akzeptieren.
TrustedOnly (Standard)
Wenn eine Signatur uberpruft wird, muss sich diese im
Schlusselbund befinden und vollstandig vertrauenswurdig sein;
ein teilweises Vertrauen genugt diesen Kriterien nicht.
TrustAll
Wenn eine Signatur uberpruft wird, muss sich diese im
Schlusselbund befinden, aber die Zuweisung einer
Vertrauenswurdigkeitsstufe ist nicht notwendig (zum Beispiel
unbekannte Vertrauenswurdigkeit oder teilweises Vetrauen).
Den Optionen in beiden Gruppen kann entweder Package oder Database
vorangestellt werden, wodurch diese nur fur den jeweils angegebenen
Objekttyp wirksam sind. Zum Beispiel wurde >>PackageTrustAll<<
teilweise vertrauenswurdige Paketsignaturen und solche mit unbekannter
Vertrauenswurdigkeitsstufe erlauben.
Folgendes ist die eingebaute Voreinstellung:
SigLevel = Optional TrustedOnly
IHR EIGENES REPOSITORIUM VERWENDEN
Falls Sie eine Reihe von eigenen Paketen haben, ist es oft leichter,
diese in einem eigenen lokalen Repositorium zu verwalten, als diese
alle mit der Option --upgrade zu installieren. Dafur mussen Sie
lediglich in dem Verzeichnis, in dem sich die Pakete befinden, eine
komprimierte Paketdatenbank erzeugen, so dass Pacman sie findet, wenn
es mit --refresh aufgerufen wird.
repo-add /home/pkgs/eigene.db.tar.gz /home/pkgs/*.pkg.tar.gz
Der obige Befehl erzeugt eine komprimierte Datenbank namens
/home/pkgs/custom.db.tar.gz. Beachten Sie, dass die Datenbank in der
Form vorliegen muss, die in der Konfigurationsdatei definiert ist und
die {Erweiterung} ein gultiger Kompressionstyp ist, wie in repo-add(8)
dokumentiert. Das ist alles! Nun konnen Sie Ihren eigenen Abschnitt in
der Konfiguration einrichten, wie in der Beispielkonfiguration oben
gezeigt. Pacman wird nun Ihr Paket-Repositorium nutzen. Falls Sie neue
Pakete zum Repositorium hinzufugen, denken Sie daran, die
Paketdatenbank neu aufzubauen und Pacman mit der Option --refresh
aufzurufen.
Weitere Informationen zum Befehl repo-add erhalten Sie mit dem Befehl
>>repo-add --help<< oder in der Handbuchseite repo-add(8).
SIEHE AUCH
pacman(8), libalpm(3)
Auf der Pacman-Website finden Sie
aktuelle Informationen zu Pacman und den zugehorigen Werkzeugen.
FEHLER
Fehler? Sie machen wohl Witze, es gibt keine Fehler in dieser Software.
Nun ja, sollte unsere Annahme doch falsch sein, senden Sie uns einen
Fehlerbericht (auf Englisch) mit so vielen Details wie moglich in der
Fehlerdatenbank von Archlinux im Bereich
>>Pacman<<.
AUTOREN
Derzeitige Betreuer:
o Allan McRae
o Andrew Gregory
o Eli Schwartz
o Morgan Adamiec
Bedeutende fruhere Mitwirkende:
o Judd Vinet
o Aurelien Foret
o Aaron Griffin
o Dan McGee
o Xavier Chantry
o Nagy Gabor
o Dave Reisner
Informationen zu weiteren Mitwirkenden erhalten Sie, wenn Sie den
Befehl git shortlog -s im Git-Repositorium pacman.git aufrufen.
UBERSETZUNG
Die deutsche Ubersetzung dieser Handbuchseite wurde von Mario
Blattermann erstellt.
Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General
Public License Version 3
oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG
ubernommen.
Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden,
schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer
.
Pacman 6.0.2 6. Februar 2024 PACMAN.CONF(5)