Provided by:
debconf-doc_1.5.40ubuntu1_all 
NAME
debconf - Debian-Paket-Konfigurationssystem
BESCHREIBUNG
Debconf ist ein Konfigurationssystem fur Debian-Pakete. Es gibt auch
einen selten verwandten Befehl namens debconf, der in debconf(1)
dokumentiert ist.
Debconf stellt eine konsistente Schnittstelle zur Paketkonfiguration
bereit und erlaubt es Ihnen, aus mehreren Benutzerschnittstellen
auszuwahlen. Es unterstutzt die Vorkonfiguration von Paketen vor der
Installation, womit bei groBen Installationen und Upgrades alle
notwendigen Informationen am Anfang abgefragt werden konnen und Sie
dann wahrend der Installation selbst sich anderen Dingen widmen konnen.
Falls Sie in Eile sind, konnen Sie damit wahrend der Paketinstallation
weniger wichtige Fragen und Informationen uberspringen (und diese dann
spater nochmal angehen).
Pakete vorkonfigurieren
Debconf kann sogar Pakete konfigurieren, bevor Sie auf Ihrem System
installiert sind. Dies ist nutzlich, weil damit alle Fragen, die die
Pakete stellen werden, am Anfang der Installation gestellt werden
konnen, so dass der Rest der Installation ablaufen kann, wahrend Sie
eine Tasse Kaffee holen.
Falls Sie Apt (Version 0.6 oder neuer) verwenden und apt-utils ist
installiert, wird jedes von Apt installierte Paket automatisch
vorkonfiguriert. Dies wird uber /etc/apt/apt.conf.d/70debconf
gesteuert.
Manchmal mochten Sie vielleicht ein Paket von Hand vorkonfigurieren,
wenn Sie es nicht mit APT installieren. Sie konnen dpkg-preconfigure
(8)benutzen, um das zu machen, ubergeben Sie einfach die Dateinamen der
Pakete, die Sie vorkonfigurieren wollen. Damit dies funktioniert, muss
das Paket apt-utils installiert sein.
Pakete erneut konfigurieren
Angenommen Sie haben ein Paket installiert und Debconfs Fragen
beantwortet, aber nun, da Sie es eine Weile benutzt haben, erkennen
Sie, dass Sie zuruckgehen und einige Ihrer Antworten andern wollen.
Fruher mussten Sie das Paket erneut installieren, wenn Sie in diese
Situation gerieten. Wenn Sie aber das Paket erneut installieren,
scheint Debconf sich zu erinnern, dass Sie die Fragen beantwortet
haben, und stellt sie nicht erneut (Dies ist eine Funktionalitat).
Glucklicherweise macht es Debconf einfach, jedes Paket, das es benutzt,
erneut zu konfigurieren. Angenommen, Sie wollen Debconf selbst erneut
konfigurieren. Fuhren Sie als root einfach das Folgende aus:
dpkg-reconfigure debconf
Dies stellt alle Fragen, die Sie sahen, als Debconf das erste Mal
installiert wurde. Es mag Ihnen auch andere Fragen stellen, weil es
selbst Fragen mit niedriger Prioritat stellt, die ubersprungen wurden,
als das Paket installiert wurde. Sie konnen diesen Befehl auch mit
jedem anderen Paket verwenden, das Debconf benutzt.
Benutzerschnittstellen (Frontends)
Eines von Debconfs einzigartigen Funktionalitaten ist, dass die Ihnen
prasentierte Schnittstelle nur eine von vielen ist, die nach Belieben
ausgetauscht werden kann. Es gibt viele Debconf-Benutzerschnittstellen:
dialog Die vorgegeben Benutzerschnittstelle, diese benutzt die
Programme whiptail(1) oder dialog(1), um die Fragen an Sie
anzuzeigen. Sie arbeitet im Textmodus.
readline
Die traditionellste Benutzerschnittstelle, diese sieht ziemlich
ahnlich aus, wie Debians Konfiguration immer war: eine Reihe von
Fragen, ausgegeben auf die Konsole als reiner Texts, und
Eingabeaufforderungen, die durch die Bibliothek readline
erledigt werden. Es unterstutzt sogar Vervollstandigung durch
die Tabulator-Taste. Das Paket libterm-readline-gnu-perl wird
warmstens empfohlen, wenn Sie die Benutzung dieser
Benutzerschnittstelle wahlen; das Standard-Module fur readline
ermoglicht keine Eingabeauforderung mit Vorgabewerten. Als
Minimum muss das Paket perl-modules installiert sein, um diese
Benutzerschnittstelle zu benutzen.
Diese Benutzerschnittstelle hat einige Sondertasten.
Bild-nach-oben (oder Ctrl-u) geht zur vorigen Frage zuruck
(falls dies von dem Debconf-benutzenden Paket unterstutzt) und
Bild-nach-unten (oder Ctrl-v) springt weiter zur nachsten Frage.
Dies ist die beste Benutzerschnittstelle fur
Administrationsarbeit aus der Ferne uber eine langsame
Verbindung oder fur alle, die mit Unix vertraut sind.
noninteractive
Dies ist die Anti-Benutzerschnittstelle. Sie tritt nie mit Ihnen
in Kontakt, und lasst fur alle Fragen die vorgegebenen Antworten
benutzen. Sie mag Fehlermeldungen an root mailen, aber das war
es; ansonsten ist sie komplett still und unaufdringlich, eine
perfekte Schnittstelle fur automatische Installationen. Falls
Sie diese Benutzerschnittstelle benutzen und nicht-vorgegebene
Antworten auf Fragen benotigen, mussen Sie die Debconf-Datenbank
mit Voreinstellungen versehen; fur weitere Details siehe unten
den Abschnitt >>Unbeaufsichtigte Paket-Installation<<.
gnome Dies ist eine modern X-GUI, die die GTK und GNOME-Bibliotheken
benutzt. Naturlich benotigtes es zum Funktionieren ein gultiges
DISPLAY; Debconf greift auf andere Benutzerschnittstellen
zuruck, falls sie nicht funktionieren kann. Beachten Sie, dass
diese Benutzerschnittstelle die Installation des Pakets
libgnome2-perl erfordert.
kde This frontend provides a simple X GUI written with the Qt
library. It fits well the KDE desktop. You of course need a
DISPLAY to use this frontend and must install libqt-perl. The
frontend will fall back to dialog if some of the prerequisites
are not met.
editor Dies ist fur diese Fanatiker, die alles mit einem Texteditor
erledigen mussen. Es ruft Ihren Editor mit einer Datei auf, die
ein wenig wie eine typische Unix-Konfigurationsdatei aussieht,
und Sie editieren die Datei, um mit Debconf zu kommunizieren.
Der Autor von Debconf zieht es vor, nicht die Umstande zu
kommentieren, die dazu gefuhrt haben, dass diese
Benutzerschnittstelle geschrieben wurde.
web
Diese Benutzerschnittstelle fungiert als Webserver, mit dem Sie
sich mit Ihrem Web-Browser verbinden, um die Fragen zu sehen und
sie zu beantworten. Sie ist vielversprechend, aber soweit ein
wenig roh. Wenn diese Schnittstelle startet, gibt es die
Adresse, die Sie mit Ihrem Web-Browser anzeigen sollten. Der
Web-Browser muss aus Sicherheitsgrunden auf der selben Maschine
laufen, die Sie konfigurieren.
Behalten Sie im Kopf, dass diese Benutzerschnittstelle nicht
sehr sicher ist. Jeder, der auf den zu konfigurierenden Rechner
Zugriff hat, kann derzeit auf den den Web-Server zugreifen und
Dinge konfigurieren, wahrend diese Schnittstelle lauft. Also ist
dies mehr eine Konzeptstudie als alles andere.
Sie konnen die standardmaBige Benutzerschnittstelle, die Debconf
benutzt, andern, indem Sie Debconf erneut konfigurieren. Falls Sie
andererseits die Benutzerschnittstelle nur fur kurze Zeit andern
wollen, konnen Sie die Umgebungsvariable DEBIAN_FRONTEND auf den Namen
der zu benutzenden Benutzerschnittstelle setzen. Zum Beispiel:
DEBIAN_FRONTEND=readline apt-get install slrn
Die Befehle dpkg-reconfigure(8) und dpkg-preconfigure(8) lassen sich
auch --frontend ubergeben, gefolgt von der Benutzerschnittstelle, die
Sie benutzen sollen.
Beachten Sie, dass nicht alle Benutzerschnittstellen unter allen
Umstanden funktionieren. Falls eine Benutzerschnittstelle aus
irgendwelchen Grunden scheitert, gibt Debconf eine Meldung aus, warum,
und greift auf die ahnlichste Benutzerschnittstelle zuruck.
Priorit"aten
Ein weitere nette Funktionalitat von Debconf ist, dass die Fragen, die
es Ihnen stellt, priorisiert sind. Falls Sie nicht mit jeder kleinen
Sache belastigt werden wollen, konnen Sie Debconf so einstellen, dass
es Ihnen nur die wichtigsten Fragen stellt. Falls Sie auf der anderen
Seite ein Kontroll-Freak sind, konnen Sie es Ihnen alle Fragen zeigen
lassen. Jede Frage hat eine Prioritat. In nach Wichtigkeit
aufsteigender Folge:
niedrig (low)
Sehr triviale Fragen, die Voreinstellungen haben, die in den
allermeisten Fallen funktionieren.
medium Normale Fragen, die vernunftige Voreinstellungen haben.
hoch (high)
Fragen, die keine vernunftige Voreinstellung haben.
kritisch (critical)
Fragen, die Sie wirklich, wirklich sehen mussen (ansonsten ...).
Nur Fragen mit einer Prioritat gleich oder groBer der Prioritat, die
Sie wahlen, werden Ihnen gezeigt. Sie konnen den Prioritatswert setzen,
indem Sie Debconf erneut konfigurieren, oder temporar, indem Sie
--priority gefolgt von dem Wert an die Befehle dpkg-reconfigure(8) und
dpkg-preconfigure(8) ubergeben oder durch Setzen der Umgebungsvariablen
DEBIAN_PRIORITY.
Datenbanken-Backend
Debconf benutzt ein ziemlich flexibles und potenziell kompliziertes
Datenbanken-Backend, um solche Daten wie die Antworten auf Fragen zu
speichern. Die Datei /etc/debconf.conf wird benutzt, um diese Datenbank
zu konfigurieren. Falls Sie etwas Kompliziertes aufsetzen mussen, etwa
Debconf eine entfernte Datenbank fur Voreinstellungen mit lokalen
Aufhebungen lesen zu lassen, schauen Sie sich die Handbuchseite
debconf.conf(5) fur alle Details an. Generell befindet sich das
Datenbanken-Backend unter /var/cache/debconf/.
Unbeaufsichtigte Paket-Installation
Falls Sie viele Maschinen verwalten mussen, finden Sie sich manchmal in
der Situation, eine unbeaufsichtigte Installation oder Aktualisierung
von Paketen auf vielen Systemen vornehmen zu mussen, bei der die
vorgegebenen Antworten auf manche Konfigurationsfragen nicht akzeptabel
sind. Es gibt viele Wege, dies zu erreichen; alle schlieBen ein, eine
Datenbank aufzusetzen und sie Debconf benutzen lassen, um die Antworten
zu bekommen, die Sie wollen.
Sie sollten vor diesem Abschnitt wirklich debconf.conf(5) lesen, weil
Sie verstehen mussen, wie Debconfs Datenbanken funktionieren.
Der einfachste Weg, um die Datenbank aufzusetzen, ist es, die Pakete
auf einer Maschine zu installieren und ihre Fragen wie ublich zu
beantworten. Oder Sie konnten einfach dpkg-preconfigure(8) benutzen, um
eine Reihe von Paketen zu konfigurieren, ohne sie tatsachlich zu
installieren. Oder Sie mogen sich sogar dazu entscheiden, eine
Klartext-Debconf-Datenbank von Hand zu schreiben, oder soetwas.
Sobald Sie die Datenbank haben, mussen Sie herausfinden, wie Sie die
Systeme in der Ferne dazu bekommen, sie zu benutzen. Dies hangt
selbstverstandlich von der Konfiguration dieser Systeme ab und davon,
fur die Benutzung welcher Datenbanken-Typen sie aufgesetzt sind.
Falls Sie die LDAP-Debconf-Datenbank benutzen, kann ein gesamtes
Netzwerk von Debian-Maschinen einige oder alle Fragen zur
Paket-Installation automatisch von einem einzelnen LDAP-Server
beantwortet bekommen.
Aber vielleicht benutzen Sie etwas, das ein wenig leichter aufzusetzen
ist, wie, sagen wir, die standardmaBige
Debconf-Datenbanken-Konfiguration oder Sie wollen einfach nicht, dass
Ihre System in der Ferne LDAP die ganze Zeit benutzen. In diesem Falle
ist der beste Ansatz, die Systeme in der Ferne temporar so zu
konfigurieren, dass sie Ihre Datenbank unter ihre eigenen existierenden
Datenbanken stapeln, so dass sie vorgegebene Werte aus ihr herausziehen
konnen. Debconf bietet zwei Umgebungvariablen, DEBCONF_DB_FALLBACK und
DEBCONF_DB_OVERRIDE, um es einfach zu machen, dies im Vorbeigehen zu
tun. Hier ist eine Beispielanwendung:
cat /var/cache/debconf/config.dat | \
ssh root@target "DEBIAN_FRONTEND=noninteractive \
DEBCONF_DB_FALLBACK=Pipe apt-get upgrade"
Dies lasst das Debconf auf dem Rechner in der Ferne die Daten, die uber
die SSH-Verbindung transferiert werden, einlesen und als eine
Debconf-Datenbank im Klartextformat interpretieren. Dann benutzt es
diese Datenbank als Ruckgriffsdatenbank -- eine nur-lesende Datenbank,
die nach Antworten zu Fragen abgefragt wird, falls die
Haupt-Debconf-Datenbank des Systems keine Antworten bietet.
Noch ein Weg, die Umgebungsvariable DEBCONF_DB_FALLBACK zu benutzen:
ssh -R 389:ldap:389 root@target \
"DEBCONF_DB_FALLBACK='LDAP{host:localhost}' apt-get upgrade"
Hier wird SSH benutzt, um eine getunnelte LDAP-Verbindung aufzusetzen
und Debconf auszufuhren. Debconf soll den LDAP-Server als
Ruckgriffs-Datenbank benutzen. Beachten Sie die Benutzung von
>>{host:localhost}<<, um zu konfigurieren, wie Debconf auf die
LDAP-Datenbank zugreift, indem das Feld >>host<< mit dem Wert
>>localhost<< geliefert wird.
Noch eine Methode:
scp config.dat root@target:
ssh root@target "DEBCONF_DB_FALLBACK='File{/root/config.dat}' apt-get
upgrade
Hier kopieren Sie die Datenbank mit scp hinuber, und dann offnen Sie
SSH und lassen Debconf die hinuber-kopierte Datei benutzen. Dies
illustriert einen Abkurzung, die Sie bei den Parametern fur
DEBCONF_DB_FALLBACK benutzen konnen -- falls der Feldname ausgelassen
wird, wird >>filename<< angenommen.
Es gibt nur ein Problem mit diesen Anwendungen des Parameters
DEBCONF_DB_FALLBACK: Wahrend die Ruckgriffsdatenbank Antworten auf
Fragen liefern kann, die die anderen Datenbanken noch nicht gesehen
haben, wird sie nur als Ruckgriff abgefragt; nach den anderen
Datenbanken. Falls Sie stattdessen auf dem entfernten Rechner einen
bestehenden Wert temporar auBer Kraft setzen mussen, sollten Sie
stattdessen die Variable DEBCONF_DB_OVERRIDE benutzen. Wie
DEBCONF_DB_FALLBACK setzt sie eine temporare Datenbank auf, aber diese
Datenbank wird vor allen anderen befragt, und kann benutzt werden, um
bestehende Werte auBer Kraft zu setzen.
Entwickeln f"ur Debconf
Paket-Entwickler und andere, die Pakete entwickeln wollen, die Debconf
benutzen, sollten debconf-devel(7) lesen.
Kurz gesagt kommuniziert Debconf mit Maintainer-Skripten oder anderen
Programmen uber die Standardein- und -ausgabe, unter Benutzung einer
einfachen Befehlssprache ahnlich denen, wie sie von gangigen
Internet-Protokollen wie SMTP benutzt werden. Programme benutzen dieses
Protokoll, um Debconf zu bitten, Fragen an den Benutzer zu stellen und
die Antworten des Benutzers einzuholen. Die Fragen selbst sind in einer
eigenen Datei, >>Vorlagendatei<< genannt, definiert, die ein Format
ahnlich einer Debian-Control-Datei hat.
Debian-Pakete, die Debconf benutzen, liefern typischerweise eine
Vorlagendatei >>templates<< und ein Skript >>config<< (welches
ausgefuhrt wird, um das Paket vorzukonfigurieren) in dem Abschnitt fur
die Kontroll-Metadaten des Pakets aus.
UMGEBUNG
DEBIAN_FRONTEND
Wird benutzt, um temporar die Benutzerschnittstelle zu andern,
die Debconf benutzt. Siehe oben.
DEBCONF_PRIORITY
Wird benutzt, um temporar die Schwell-Prioritat der von Debconf
angezeigten Fragen zu andern. Siehe oben.
DEBCONF_DEBUG
Schaltet Ausgaben zur Fehlersuche auf der Standardfehlerausgabe
ein. Kann auf den Namen einer Gruppe oder einen regularen
Ausdruck, der mit den Namen von Gruppen ubereinstimmt, gesetzt
werden (beispielsweise >>.*<< um alle Fehlersuchinformationen
auszugeben). Die Gruppennamen sind:
user Informationen zur Fehlersuche, die fur einen
Debconf-Benutzer von Interesse sind.
developer
Informationen zur Fehlersuche, die fur einen
Paket-Entwickler von Interesse sind.
db Informationen zur Fehlersuche uber die Backend-Datenbank.
DEBCONF_NOWARNINGS
Setzen Sie dies auf >>yes<<, um einige Warnungen zu
deaktivieren, die Debconf anzeigen konnte. Unterdruckt keine
fatalen Fehler.
DEBCONF_TERSE
Setzen Sie dies auf >>yes<<, um den knappen Modus zu aktivieren,
in dem Debconfs Benutzerschnittstellen den Wortreichtum so weit
wie moglich einschranken.
DEBCONF_DB_FALLBACK
Stapel eine Datenbank nach den normalerweise benutzten
Datenbanken, so dass sie als ein Ruckgriff benutzt wird, um
Konfigurationsinformationen zu beziehen. Siehe oben
>>Unbeaufsichtigte Paket-Installation<<. Falls der Wert der
Variablen ein Name einer existierenden Datenbank in debconf.conf
ist wird diese Datenbank benutzt. Ansonsten kann die
Umgebungsvariable benutzt werden, um eine Datenbank im
Vorbeigehen (>>on the fly<<) zu konfigurieren, indem der Typ der
Datenbank genannt und optional Feld:Wert-Einstellungen in
geschwungenen Klammern nach dem Typ ubergeben werden.
Leerzeichen werden benutzt, um Felder zu trennen, also konnen
Sie keinen Feldwert angeben, der Leerrzeichen enthalt.
Dieses benutzt also die Datenbank fallbackdb in debconf.conf:
DEBCONF_DB_FALLBACK=fallbackdb
Wahrend dies eine neue Datenbank vom Typ >>File<< aufsetzt und ihr den
zu benutzenden Dateinamen und die Anweisung, das Erstellen von
Sicherheitskopien zu deaktivieren, ubergibt:
DEBCONF_DB_FALLBACK=File{Filename:/root/config.dat Backup:no}
Und als Kurzform setzt dies eine Datenbank vom Typ >>File<< mit einem
Dateinamen auf:
DEBCONF_DB_FALLBACK=File{/root/config.dat}
Beachten Sie, dass eine Ruckgriffsdatenbank, falls sie im Vorbeigehen
aufgesetzt wird, standardmaBig nur-lesend ist.
DEBCONF_DB_OVERRIDE
Stapelt eine Datenbank vor die normalerweise benutzten
Datenbanken, so dass sie Werte aus ihnen uberstimmen kann. Der
Wert dieser Variablen funktioniert auf dieselbe Weise wie der
Wert von DEBCONF_DB_FALLBACK.
DEBCONF_DB_REPLACE
Benutze eine gegebene Datenbank anstelle der normalerweise
benutzten Datenbanken. Dies kann nutzlich sein, um mit einer
separaten Datenbank zu testen, ohne dafur eine eigene
debconf.conf zu erstellen, oder um das Sperren der normalen
Datenbanken zu vermeiden.
DEBCONF_SYSTEMRC
Falls diese Umgebungsvariable gesetzt ist, ignoriert Debconf die
Datei ~/.debconfrc des Benutzer, und benutzt stattdessen die
systemweite debconf.conf. Falls diese auf den Namen einer
regularen Datei gesetzt ist, zieht Debconf diese Datei der
systemweiten Konfigurationsdatei vor.
DEBCONF_FORCE_DIALOG
Falls diese Umgebungsvariable gesetzt ist, bevorzugt Debconf
dialog gegenuber whiptail fur die Benutzerschnittstelle Dialog.
DEBCONF_FORCE_XDIALOG
Falls diese Umgebungsvariable gesetzt ist, bevorzugt Debconf
Xdialog vor whiptail fur die Benutzerschnittstelle Dialog.
DEBCONF_NONINTERACTIVE_SEEN
Setzen Sie diese auf >>true<<, damit die Markierung gesehen
(>>seen<<) fur Fragen, die in der nicht-interaktiven
(>>noninteractive<<) Schnittstelle gestellt werden, gesetzt
wird.
FEHLER
moglicherweise einige, es gibt hier eine Menge an Kode.
Falls Sie einen Fehlerbericht einreichen (auf Englisch!), stellen Sie
sicher, dass Sie die folgenden Informationen einbeziehen:
* Die Debconf-Benutzerschnittstelle, die Sie benutzten, als der
Fehler auftrat.
* Was Sie taten, um das Problem auszulosen.
* Den vollstandigen Text jeder Fehlermeldung. Falls Sie den Fehler
reproduzieren konnen, tun Sie dies mit auf gesetztem und
exportiertem DEBCONF_DEBUG='.*'.Dies beschleunigt die
Fehlersuche sehr.
"UBERSETZUNG
Die deutsche Ubersetzung wurde 2008 von Florian Rehnisch
<eixman@gmx.de> und 2008-2009 von Helge Kreutzmann
<debian@helgefjell.de> angefertigt. Diese Ubersetzung ist Freie
Dokumentation; lesen Sie die GNU General Public License Version 2 oder
neuer fur die Kopierbedingungen. Es gibt KEINE HAFTUNG.
SIEHE AUCH
debconf.conf(5), debconf-devel(7), dpkg-preconfigure(8),
dpkg-reconfigure(8), debconf(1),
AUTOR
Joey Hess <joeyh@debian.org>
DEBCONF(7)