Provided by: debconf-doc_1.5.86ubuntu1_all
NAME
debconf.conf - Konfigurations-Datei für Debconf
BESCHREIBUNG
Debconf ist ein Konfigurationssystem für Debian-Pakete. /etc/debconf.conf und ~/.debconfrc sind Konfigurationsdateien, die Debconf benutzt, um herauszufinden, welche Datenbanken es benutzen soll. Diese Datenbanken werden für das Speichern von zwei Arten von Informationen benutzt; dynamische Konfigurationsdaten, die der Benutzer eingibt, und statische Vorlagendaten. Debconf bietet ein flexibles, erweiterbares Datenbanken-Backend. Neue Treiber können mit minimalem Aufwand erzeugt werden, und Treiber-Sätze können auf verschiedene Weise kombiniert werden.
ÜBERSICHT
# Dies ist eine einfache Konfigurationsdatei, # die ausreichend ist, um Debconf zu benutzen Config: configdb Templates: templatedb Name: configdb Driver: File Filename: /var/cache/debconf/config.dat Name: templatedb Driver: File Mode: 644 Filename: /var/cache/debconf/templates.dat
DATEIFORMAT
Das Format dieser Datei ist eine Folge von Absätzen, jeweils getrennt durch mindestens eine vollständig leere Zeile. Kommentarzeilen, die mit dem Zeichen »#« beginnen, werden ignoriert. Der erste Absatz der Datei ist besonders, er wird benutzt, um Debconf im Ganzen zu konfigurieren. Zwei Felder sind in diesem ersten Absatz erforderlich: Config Gibt den Namen der Datenbank an, aus der die Konfigurationsdaten geladen werden. Templates Gibt den Namen der Datenbank an, die für das Zwischenspeichern von Vorlagen zu benutzen ist. Zusätzliche Felder, die benutzt werden können, schließen ein: Frontend Die Benutzerschnittstelle, die Debconf benutzen soll, dies überstimmt jede Schnittstellen-Einstellung in der Debconf-Datenbank. Priority Die Priorität, die Debconf benutzen soll, dies überstimmt jede Prioritätseinstellung in der Debconf-Datenbank. Admin-Email Die E-Mail-Adressen, an die Debconf E-Mail schicken soll, falls sichergestellt werden muss, dass der Administrator eine wichtige Nachricht gesehen hat. Standardmäßig »root«, dies kann auf jede gültige E-Mail-Adresse gesetzt werden, um die E-Mail dorthin zu schicken. Dies kann im Vorbeigehen durch die Umgebungsvariable DEBCONF_ADMIN_EMAIL überstimmt werden. Debug Falls gesetzt, lässt dies Debconf Informationen zur Fehlersuche auf die Standardfehlerausgabe ausgeben. Der Wert, auf den dies gesetzt wird, kann so etwas wie »user«, »developer«, »db« oder ein regulärer Ausdruck sein. Typischerweise, statt es permanent in einer Konfigurationsdatei zu setzen, wollen Sie die Fehlersuche nur zeitweise anstellen, und die Umgebungsvariable DEBCONF_DEBUG kann stattdessen gesetzt werden, um dies zu bewerkstelligen. NoWarnings Falls gesetzt, lässt dies Debconf Warnungen über verschiedene Dinge nicht anzeigen. Dies kann im Vorbeigehen durch die Umgebungsvariable DEBCONF_NOWARNINGS überstimmt werden. Log Lässt Debconf, während es läuft, Informationen zur Fehlersuche in das Syslog schreiben. Der Wert, auf den dies gesetzt wird, kontrolliert, was protokolliert wird. Siehe oben »Debug« für eine Erklärung der Werte, die gesetzt werden können, um zu kontrollieren, was protokolliert wird. Terse Falls auf »true« gesetzt, lässt dies einige Debconf-Benutzerschnittstellen einen besonders knappen Anzeigemodus benutzen, der so wenig wie möglich ausgibt. Der knappe Modus kann temporär über die Umgebungsvariable DEBCONF_TERSE gesetzt werden. Der erste Abschnitt der Datei kann wie folgt aussehen: Config: configdb Templates: templatedb Jeder verbleibende Absatz in der Datei richtet eine Datenbank ein. Ein Datenbankenabschnitt beginnt mit der Benennung der Datenbank: Name: configdb Dann wird angezeigt, welcher Datenbank-Treiber für diese Datenbank benutzt werden soll. Siehe unten TREIBER für Informationen, welche Treiber verfügbar sind. Driver: File Sie können angeben, dass die Datenbank nicht essenziell für die ordnungsgemäße Funktionsweise von Debconf ist, indem Sie sagen, dass sie nicht erforderlich ist. Dies lässt Debconf fortfahren, falls die Datenbank aus irgendeinem Grund scheitert. Required: false Sie können jede Datenbank als nur-lesend markieren, und Debconf schreibt nichts hinein. Readonly: true Sie können mit Accept- und Reject-Zeilen auch begrenzen, welche Arten von Daten in die Datenbank gelangen können; siehe unten ZUGRIFFSKONTROLLE. Der Rest jedes Datenbanken-Absatz wird benutzt, um Konfiguration speziell zu diesem Treiber bereitzustellen. Zum Beispiel muss der Treiber Text ein Verzeichnis wissen, in das er die Datenbank packt, so dass Sie sagen könnten: Filename: /var/cache/debconf/config.dat
TREIBER
Eine Reihe von Treibern sind verfügbar, und mehr noch können mit wenig Schwierigkeit geschrieben werden. Treiber gibt es in zwei generellen Typen. Zuerst gibt es echte Treiber -- Treiber die tatsächlich auf Daten in irgendeiner Form von Datenbank zugreifen und speichern, welche im lokalen Dateisystem oder auf einem entfernten System sein können. Dann gibt es Meta-Treiber, die andere Treiber kombinieren, um interessantere Systeme zu formen. Lassen Sie uns mit ersteren beginnen. File Dieser Datenbank-Treiber erlaubt Debconf, eine vollständige Datenbank in einer einzelnen flachen Textdatei zu speichern. Dies erlaubt einfaches Archivieren, Transferieren zwischen Maschinen und Editieren. Es ist eines der kompakteren Datenbank-Formate hinsichtlich des benutzten Plattenplatz. Es ist auch eins der langsamsten. Als Nachteil muss die gesamte Datei eingelesen werden, jedes Mal, wenn Debconf startet, und Speichern ist ebenfalls langsam. Die folgenden Dinge sind für diesen Treiber konfigurierbar: Filename Die Datei, die als Datenbank benutzt werden soll. Dies ist ein erforderliches Feld. Mode Die Berechtigungen, mit denen die Datei erzeugt wird, falls sie nicht existiert. Standardmäßig 600, weil die Datei unter Umständen Passwörter enthalten könnte. Format Das Format der Datei. Siehe unten FORMATE. Standardmäßig wird ein RFC-822-ähnliches Format benutzt. Backup Ob von der alten Datei eine Sicherheitskopie gemacht werden soll, bevor sie verändert wird. Standardmäßig »true«. Ein Beispiel-Absatz, der eine Datenbank unter Benutzung dieses Treiber einrichtet: Name: mydb Driver: File Filename: /var/cache/debconf/mydb.dat DirTree Dieser Datenbank-Treiber erlaubt Debconf, Daten in einer hierarchischen Verzeichnisstruktur zu speichern. Die Namen der verschiedenen Debconf-Vorlagen und -Fragen werden benutzt, wie sie sind, um Verzeichnisse mit Dateien darin zu formen. Dieses Datenbanken-Format ist das einfachste, wenn es darum geht, von Hand zu stöbern und zu tricksen. Es hat sehr gute Lade- und Speicher-Geschwindigkeiten. Es beansprucht typischerweise auch den meisten Platz, weil viele kleine Dateien und Unterverzeichnis zusätzlichen Raum nehmen. Die folgenden Dinge sind für diesen Treiber konfigurierbar: Directory Das Verzeichnis, in das die Dateien gelegt werden. Erforderlich. Extension Eine Erweiterung, die den Namen von Dateien hinzugefügt werden. Muss auf eine nicht-leere Zeichenkette gesetzt werden; standardmäßig ».dat« Format Das Format der Datei. Siehe unten FORMATE. Standardmäßig wird ein RFC-822-ähnliches Format benutzt. Backup Ob von der alten Datei eine Sicherheitskopie gemacht werden soll, bevor sie verändert wird. Standardmäßig »true«. Ein Beispiel-Absatz, der eine Datenbank unter Benutzung dieses Treiber einrichtet: Name: mydb Driver: DirTree Directory: /var/cache/debconf/mydb Extension: .txt PackageDir Dieser Datenbank-Treiber ist ein Kompromiss zwischen den Datenbanken »File« und »DirTree«. Er benutzt ein Verzeichnis, in dem es (ungefähr) eine Datei pro Paket, das Debconf benutzt, gibt. Dies ist ziemlich schnell, während es wenig mehr Platz als der Datenbank-Treiber »File« benutzt. Dieser Treiber ist auf dieselbe Weise wie der Treiber DirTree konfigurierbar, und zusätzlich: Mode Die Berechtigungen, mit denen Dateien erzeugt werden. Standardmäßig 600, da die Dateien unter Umständen Passwörter enthalten könnten. Ein Beispiel-Absatz, der eine Datenbank unter Benutzung dieses Treiber einrichtet: Name: mydb Driver: PackageDir Directory: /var/cache/debconf/mydb LDAP WARNUNG: Dieser Datenbank-Treiber ist gegenwärtig experimentell. Mit Vorsicht zu benutzen. Dieser Datenbank-Treiber greift für Debconf-Konfigurationsdaten auf ein LDAP-Verzeichnis zu. Wegen ihrer vertrackten Natur sollte auf LDAP-Verzeichnisse typischerweise im Nur-Lese-Modus zugegriffen werden. Dies ist notwendig, weil mehrere gleichzeitige Zugriffe stattfinden können, und es ist generell besser für die Daten-Konsistenz, dass niemand versucht, die Daten zu verändern, während der Zugriff erfolgt. Selbstverständlich wird Schreibzugriff unterstützt, in den Fällen, in denen Sie die Konfigurationsdaten in dem Verzeichnis aktualisieren wollen. Für Informationen über das Einrichten eines LDAP-Server für Debconf lesen Sie /usr/share/doc/debconf-doc/README.LDAP (im Paket debconf-doc) Um diesen Datenbank-Treiber zu benutzen, müssen Sie das Paket libnet-ldap-perl installieren. Debconf schlägt dieses Paket vor, hängt aber nicht von ihm ab. Bitte erwägen Sie sorgfältig die Sicherheits-Auswirkungen, die die Verwendung einer entfernten Debconf-Datenbank mit sich bringt. Solange Sie nicht der Quelle und dem zwischengelegenen Netzwerk vertrauen, ist dies keine sichere Sache. Die folgenden Dinge sind für diesen Treiber konfigurierbar: server Hostname oder IP-Adresse des LDAP-Servers, mit dem verbunden werden soll. port Der Port, auf dem mit dem LDAP-Server verbunden werden soll. Falls nicht angegeben, wird der standardmäßige Port benutzt. basedn Die DN, unter der alle Konfigurationselemente gespeichert werden. Von jedem Konfigurationselement wird angenommen, dass es in einer DN cn=<item name>,<Base DN> existiert. Falls dieser Struktur nicht gefolgt wird, wird für nichts garantiert. binddn Die DN, als die das Verzeichnis zu binden ist. Anonyme Bindung wird benutzt, falls keine angegeben wird. bindpasswd Das bei einer authentifizierten Bindung zu benutzende Passwort (benutzt mit binddn oben). Falls nicht angegeben, wird anonyme Bindung benutzt. Diese Option sollte nicht im generellen Falle benutzt werden. Anonyme Bindung sollte die meiste Zeit für Nur-Lese-Zugriff ausreichend sein. Bindungs-DN und -Password sollte für den gelegentlichen Fall reserviert werden, in dem Sie die Debconf-Konfigurationsdaten aktualisieren wollen. keybykey Aktiviere Zugriff auf individuelle LDAP-Einträge, anstatt sie am Anfang alle auf einmal zu holen. Dies ist sehr nützlich, falls Sie die Abfrage bestimmter Debconf-Schlüssel in Ihren LDAP-Protokollen überwachen wollen. Auf diese Weise könnten Sie auch eigenen Behandlungscode auf der Seite des LDAP-Servers schreiben. Beachten Sie, dass, wenn diese Option gesetzt ist, die Verbindung zum LDAP-Server während des gesamten Debconf-Laufs aktiv gehalten wird. Dies ist ein wenig verschieden zu dem Alles-in-Einem-Verhalten, wo zwei kurze LDAP-Verbindungen erfolgen; am Anfang, um alle Einträge zu holen, und am Ende, um mögliche Änderungen zu speichern. Ein Beispiel-Absatz, der eine Datenbank einrichtet, die diesen Treiber benutzt, unter Annahme, dass die entfernte Datenbank auf example.com ist und anonym zugegriffen werden kann: Name: ldapdb Driver: LDAP Readonly: true Server: example.com BaseDN: cn=debconf,dc=example,dc=com KeyByKey: 0 Noch ein Beispiel, diesmal ist die LDAP-Datenbank auf localhost, und kann beschrieben werden: Name: ldapdb Driver: LDAP Server: localhost BaseDN: cn=debconf,dc=domain,dc=com BindPasswd: secret KeyByKey: 1 Pipe Dieser Datenbankentreiber für besondere Anlässe liest und schreibt die Datenbank von der Standardein/-ausgabe. Er mag für Leute mit besonderen Bedürfnissen nützlich sein. Die folgenden Dinge sind für diesen Treiber konfigurierbar: Format Das zu lesende und zu schreibende Format. Siehe unten FORMATE. Standardmäßig ein RFC-822-ähnliches Format. Infd Nummer des Dateideskriptors von dem gelesen werden soll. Liest standardmäßig von Stdin. Falls auf »none« gesetzt, liest die Datenbank beim Starten keine Daten. Outfd Nummer des Dateideskriptors auf den geschrieben werden soll. Schreibt standardmäßig auf Stdout. Falls auf »none« gesetzt, wird die Datenbank beim Schließen verworfen. Das sind alle echten Treiber, lassen Sie uns nun zu den Meta-Treibern gehen. Stack Dieser Treiber stapelt eine Anzahl anderer Datenbanken (jeglichen Typs), und erlaubt, auf sie zuzugreifen, als ob sie eine einzige wären. Wenn Debconf einen Wert anfragt, gibt die erste Datenbank in dem Stapel, die den Wert enthält, ihn zurück. Falls Debconf etwas in die Datenbank schreibt, wird normalerweise auf den ersten Treiber in dem Stapel, der das modifizierte Element enthält, geschrieben, und falls es keiner hat, wird das neue Element der ersten schreibbaren Datenbank auf dem Stapel hinzugefügt. Die Dinge werden interessanter, falls eine der Datenbanken auf dem Stapel nur-lesend ist. Betrachten wir einen Stapel der Datenbanken Foo, Bar und Baz, wo Foo und Baz beide nur-lesend sind. Debconf will ein Element ändern, und dieses Element ist nur in Baz präsent, die nur-lesend ist. Der Stapel-Treiber ist klever genug, zu erkennen, dass das nicht funktioniert, und kopiert das Element von Baz nach Bar, und das Schreiben findet in Bar statt. Nun wird das Element in Baz von dem in Bar verdeckt, und ist für Debconf nicht mehr sichtbar. Dieses ist vor allem nützlich, falls Sie viele Systeme auf eine zentrale, nur-lesende Datenbank verweisen wollen, wobei immer noch auf jedem System erlaubt ist, Dinge zu überstimmen. Wenn dem Bild Zugriffskontrollen hinzugefügt werden, erlauben Ihnen Stapel viele andere interessante Dinge zu tun, wie alle Passwörter in eine Datenbank umzuleiten, während eine Datenbank darunter alles andere behandelt. Nur ein Konfigurationselement wird zum Einrichten eines Stapels benötigt: Stack Hier geben Sie eine Liste anderer Datenbanken namentlich an, um dem Treiber zu sagen, was den Stapel bildet. Zum Beispiel: Name: megadb Driver: stack Stack: passworddb, configdb, companydb WARNUNG: Der Stapel-Treiber ist noch nicht sehr gut getestet. Auf eigenes Risiko zu verwenden. Backup Dieser Treiber leitet alle Anfragen an einen anderen Datenbankentreiber weiter. Aber er kopiert auch alle Schreibe-Anfragen als Sicherheitskopie an einen zweiten Datenbankentreiber. Sie müssen für die Einrichtung dieses Treibers die folgenden Felder angeben. Db Die Datenbank, von der gelesen und auf die geschrieben werden soll. Backupdb Der Name der Datenbank, an die Kopien von Schreibzugriffen gesendet werden sollen. Zum Beispiel: Name: backup Driver: Backup Db: mydb Backupdb: mybackupdb Debug Dieser Treiber leitet alle Anfragen an einen anderen Datenbankentreiber weiter, und gibt eine wortreiche Ausgabe zur Fehlersuche über Anfrage und Ergebnis aus. Sie müssen für die Einrichtung dieses Treibers die folgenden Felder angeben. Db Die Datenbank, von der gelesen und auf die geschrieben werden soll.
ZUGRIFFSKONTROLLEN
Wenn Sie eine Datenbank einrichten, können Sie auch einige Felder benutzen, um Zugriffskontrollen anzugeben. Sie können zum Beispiel angeben, dass eine Datenbank nur Passwörter akzeptiert, oder eine Datenbank nur Dinge mit »foo« in ihrem Namen annehmen lassen. Readonly Wie vorher erwähnt, macht diese Zugriffskontrolle, falls auf »true« gesetzt, eine Datenbank nur-lesend. Debconf liest aus ihr Werte, aber schreibt niemals etwas in sie hinein. Accept-Name Der Text in diesem Feld ist ein Perl-kompatibler regulärer Ausdruck, der auf die Namen der Elemente, wie sie von der Datenbank angefragt werden, angewendet wird. Nur wenn der Name eines Elements mit dem regulären Ausdruck übereinstimmt, erlaubt die Datenbank Debconf auf es zuzugreifen oder es zu modifizieren. Reject-Name Wie Accept-Name, außer dass jedes Element, dessen Namen mit diesem regulären Ausdruck übereinstimmt, zurückgewiesen wird. Accept-Type Noch ein regulärer Ausdruck, dieser wird auf den Typ des zugegriffenen Elementes angewendet. Nur falls der Typ auf den Ausdruck passt, wird der Zugriff gestattet. Reject-Type Wie Accept-Type, außer dass jeder Typ, der auf diesen regulären Ausdruck passt, zurückgewiesen wird.
FORMATE
Einige der Datenbankentreiber benutzen Format-Module, um das eigentliche Format zu kontrollieren, in welchem die Datenbank auf Platte gespeichert wird. Diese Formate werden gegenwärtig unterstützt: 822 Dies ist ein Dateiformat, das ungefähr auf dem RFC-822-Format für Kopfzeilen von E-Mails basiert. Ähnliche Formate werden überall in Debian benutzt; bei der dpkg-Status-Datei und so weiter.
BEISPIEL
Hier ist ein komplizierteres Beispiel einer Datei debconf.conf. # Dieser Absatz richtet Debconf generell ein. Config: stack Templates: templates Log: developer Debug: developer # Dies ist meine eigene lokale Datenbank. Name: mydb Driver: DirTree Directory: /var/cache/debconf/config # Dies ist eine weitere Datenbank, in der ich # nur Konfiguration für den X-Server habe. Name: X Driver: File Filename: /etc/X11/debconf.dat Mode: 644 # Es ist ein wenig schwer, zu bestimmen, # welche Fragen zu X11 gehören; man sollte # eine tiefere Baumstruktur verwenden, so # dass ich nur auf ^X/ zu schauen bräuchte # Ach ja. Accept-Name: xserver|xfree86|xbase # Die ist die globale Debconf-Datenbank # unserer Firma, (für mich) nur lesbar. Name: company Driver: LDAP Server: debconf.foo.com BaseDN: cn=debconf,dc=foo,dc=com BindDN: uid=admin,dc=foo,dc=com BindPasswd: secret Readonly: true # Ich möchte keine Passwörter, die in # ihr enthalten sein könnten. Reject-Type: password # Falls diese DB aus welchem Grund auch nicht # zugreifbar ist, mache einfach weiter. Required: false # In dieser Datenbank halte ich # sicher Passwörter Name: passwords Driver: File Filename: /etc/debconf/passwords Mode: 600 Accept-Type: password # Lassen Sie uns sie alle in # einem Datenbankenstapel # zusammenpacken Name: stack Driver: Stack Stack: passwords, X, mydb, company # Also kommen alle Passwörter in die # Passwortdatenbank. Die meiste # Konfiguration für X11 kommt in die # Datenbank X, und alles andere kommt # in meine Datenbank. Werte werden der # Reihe nach in diesen nachgeschlagen, # und wenn keine einen bestimmten Wert # hat, wird in der Firmen-weiten LDAP- # Datenbank nachgeschlagen (außer es # ist ein Passwort). # Auch für das Halten von Vorlagen wird eine # Datenbank benutzt. Wir brauchen diese # nicht so hübsch zu machen. Driver: File Mode: 644 Format: 822 Filename: /var/cache/debconf/templates
ANMERKUNGEN
Falls Sie in dieser Datei etwas wie ${HOME} benutzen, wird es durch den Wert der benannten Umgebungsvariablen ersetzt. Umgebungsvariablen können auch benutzt werden, um die Datenbanken im Vorbeigehen zu überstimmen, siehe debconf(7). Bei den Feldnamen (der Teil der Zeile vor dem Doppelpunkt) wird nicht auf Groß-/Kleinschreibung geachtet. Aber bei den Werten.
GEPLANTE ERWEITERUNGEN
Mehr Treiber und Formate. Einige Ideen beinhalten: Ein SQL-Treiber, mit der Fähigkeit, auf eine entfernte Datenbank zuzugreifen. Ein DHCP-Treiber, der einige besondere Dinge wie Hostname, IP-Adresse und DNS-Server verfügbar macht. Ein Treiber, der Werte aus TXT-Feldern in öffentlichen DNS-Einträgen zieht. Ein Format, das kompatibel mit der Ausgabe von cdebconf ist. Ein Überstimmungstreiber, der die Wert-Felder oder Flags von allen Anfragen, die durch ihn hindurchgeleitet werden, überstimmen kann.
DATEIEN
/etc/debconf.conf ~/.debconfrc
ÜBERSETZUNG
Die deutsche Übersetzung wurde 2008 von Florian Rehnisch <eixman@gmx.de> und 2008-2009, 2012 von Helge Kreutzmann <debian@helgefjell.de> angefertigt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 2 oder neuer für die Kopierbedingungen. Es gibt KEINE HAFTUNG.
SIEHE AUCH
debconf(7)
AUTOR
Joey Hess <joeyh@debian.org> DEBCONF.CONF(5)