Provided by: schroot_1.6.10-9ubuntu0.1_amd64 bug

BEZEICHNUNG

       schroot.conf - Chroot-Definitionsdatei für Schroot

BESCHREIBUNG

       schroot.conf  ist  eine  einfache  UTF-8-Textdatei,  die  die  zur  Verwendung mit Schroot
       verfügbaren Chroots beschreibt.

       Ein »#« (»hash«)-Zeichen am Zeilenanfang leitet einen Kommentar oder  irgendeinen  anderen
       Text ein. Alle Texte rechts von »#« werden als Kommentar angesehen.

       Das Konfigurationsformat hat einen INI-Stil, der durch Abschnittsnamen in eckigen Klammern
       in Gruppen aus Schlüssel-Wert-Paaren unterteilt wird.

   Allgemeine Optionen
       Eine Chroot ist als eine Gruppe von Schlüssel-Wert-Paaren definiert, die mit  einem  Namen
       in  eckigen  Klammern  in  einer  eigenen  Zeile  beginnen. Die Datei kann mehrere Gruppen
       enthalten, die daher mehrere Chroots definieren.

       Eine Chroot-Definition beginnt mit dem Namen der Chroot in eckigen Klammern. Zum Beispiel,

              [sid]

       Der Name ist Gegenstand bestimmter Namensbeschränkungen. Weitere Einzelheiten  finden  Sie
       im nachfolgenden Abschnitt »Chroot-Namem«.

       Diesem folgen dann mehrere Schlüssel-Wert-Paare, einer je Zeile:

       type=Typ
              The  type  of the chroot. Valid types are ‘plain’, ‘directory’, ‘file’, ‘loopback’,
              ‘block-device’, ‘btrfs-snapshot’, ‘zfs-snapshot’ and ‘lvm-snapshot’.  If  empty  or
              omitted,  the  default  type is ‘plain’. Note that ‘plain’ chroots do not run setup
              scripts and mount filesystems; ‘directory’  is  recommended  for  normal  use  (see
              “Plain and directory chroots”, below).

       description=Beschreibung
              eine   kurze  Beschreibung  der  Chroot.  Diese  könnte  in  verschiedene  Sprachen
              lokalisiert sein; siehe den nachfolgenden Abschnitt »Lokalisierung«.

       priority=Zahl
              setzt die Priorität einer Chroot. Zahl ist eine positive Ganzzahl, die  angibt,  ob
              eine  Distribution  älter als eine andere ist. »oldstable« und »oldstable-security«
              könnten zum Beispiel »0« sein, während »stable«  und  »stable-security«  »1«  sind,
              »testing« »2« und »unstable« »3«. Die Werte sind nicht wichtig aber der Unterschied
              zwischen ihnen ist es. Diese Option ist  missbilligt  und  wird  nicht  weiter  von
              Schroot  benutzt,  es  ist  aber  immer noch erlaubt, sie zu verwenden; sie wird in
              einer zukünftigen Veröffentlichung hinfällig und entfernt.

       message-verbosity=Detailgrad
              setzt den Detailgrad der Meldungen, die Schroot bei der Einrichtung, dem  Ausführen
              von  Befehlen  und  dem  Aufräumen  der  Chroot ausgibt. Gültige Einstellungen sind
              »quiet« (unterdrückt die meisten Meldungen, »normal« (die  Vorgabe)  und  »verbose«
              (zeigt  alle  Meldungen  an). Diese Einstellung kann durch die Optionen --quiet und
              --verbose außer Kraft gesetzt werden.

       users=Benutzer1,Benutzer2,…
              eine durch Kommas getrennte Liste von  Benutzern,  denen  Zugriff  auf  die  Chroot
              gestattet  ist. Falls sie leer ist oder weggelassen wird, wird keinen Benutzern der
              Zugriff erlaubt (es sei denn, die Gruppe, zu dem sie  gehören  wurde  ebenfalls  in
              groups angegeben).

       groups=Gruppe1,Gruppe2,…
              eine  durch  Kommas  getrennte  Liste  von  Gruppen,  denen  Zugriff auf die Chroot
              gestattet ist. Falls sie leer ist oder weggelassen wird,  wird  keiner  Gruppe  der
              Zugriff erlaubt.

       root-users=Benutzer1,Benutzer2,…
              eine  durch  Kommas getrennte Liste von Benutzern, denen ohne Passwort Root-Zugriff
              auf die Chroot gewährt wird. Falls sie leer ist oder weggelassen wird, wird  keinen
              Benutzern  der  Zugriff  ohne  Passwort  erlaubt  (falls aber die Benutzer oder die
              Gruppen, zu denen sie gehören, in users beziehungsweise groups stehen,  können  sie
              dennoch   Zugriff  ohne  Passwort  erlangen).  Siehe  den  nachfolgenden  Abschnitt
              »Sicherheit«.

       root-groups=Gruppe1,Gruppe2,…
              eine durch Kommas getrennte Liste von Gruppen, denen ohne Passwort Root-Zugriff auf
              die  Chroot  gewährt  wird.  Falls  sie leer ist oder weggelassen wird, wird keinen
              Benutzern der Zugriff ohne Passwort erlaubt  (falls  aber  die  Benutzer  oder  die
              Gruppen,  zu  denen  sie  gehören, in users beziehungsweise groups sind, können sie
              dennoch  Zugriff  ohne  Passwort  erlangen).  Siehe  den  nachfolgenden   Abschnitt
              »Sicherheit«.

       aliases=Alias1,Alias2,…
              eine  durch  Kommas  getrennte  Liste  von  Aliassen  (alternative Namen) für diese
              Chroot. Eine Chroot mit Namen »sid«  könnte  der  Einfachheit  halber  einen  Alias
              »unstable«  haben,  Aliasse  unterliegen  den  selben  Namensbeschränkungen wie der
              Chroot-Name selbst.

       profile=Verzeichnis

       script-config=Dateiname
              Das Verhalten des Chroot-Einrichtungsskripts könnte auf Chroot-Basis  durch  Setzen
              eines  speziellen  Konfigurationsprofils  angepasst  werden.  Das  Verzeichnis  ist
              relativ  zu  /etc/schroot.  Die  Vorgabe  ist  »default«.  Die  Dateien  in  diesem
              Verzeichnis   werden  von  den  Einrichtungsskripten  eingelesen.  Daher  kann  ihr
              Verhalten durch die Auswahl eines geeigneten Profils angepasst werden. Alternativen
              sind    »minimal«   (minimale   Konfiguration),   »desktop«   zum   Ausführen   von
              Arbeitsplatzanwendungen in der Chroot und um weitere Funktionalität des Wirtssystem
              in  der  Chroot zur Verfügung zu stellen) und »sbuild« (um die Chroot zum Bauen von
              Debian-Paketen   zu   benutzen).   Andere   Pakete   können   zusätzliche   Profile
              bereitstellen.  Die  Standardwerte  der  Schlüssel  setup.config,  setup.copyfiles,
              setup.fstab und setup.nssdatabases basieren auf der Einstellung profile.

              Beachten Sie, dass  der  Schlüssel  profile  den  älteren  Schlüssel  script-config
              ersetzt.  Der  Schlüssel  script-config  ist  exakt  derselbe wie profile, hat aber
              »/config« daran angehängt. Der Standarddateiname ist »default/config«. Jeder dieser
              Schlüssel  kann  benutzt werden. Falls beide vorhanden sind, wird script-config den
              Vorrang erhalten (profile wird aufgehoben). script-config ist missbilligt und  wird
              in   einer  zukünftigen  Veröffentlichung  entfernt.  Beachten  Sie,  dass  profile
              äquivalent zu script-config ist, falls die Datei, die von script-config  eingelesen
              wird,  nur  die  von  Schroot  bereitgestellten  Standardvariablen  enthält.  Falls
              irgendwelche zusätzlichen  Variablen  oder  Shell-Skript-Codeschnipsel  hinzugefügt
              wurden,  setzen Sie bitte setup.config, wodurch das Einlesen dieser Datei weiterhin
              ermöglicht wird. Es wird empfohlen, die Verwendung der eingelesenen Datei, wo  dies
              möglich ist, durch zusätzliche Schlüssel in der »schroot.conf« zu ersetzen, es wird
              jedoch  weiterhin  möglich  sein,  eine  zusätzliche  Konfigurationsdatei   mittels
              setup.config einzulesen.

              Arbeitsplatzbenutzer  sollten  daran  denken,  dass  die  Fstab-Datei desktop/fstab
              bearbeitet werden muss, falls Sie Gdm3 verwenden; bitte lesen Sie die Kommentare in
              dieser    Datei,    um    weitere    Anweisungen   zu   erhalten.   Der   Schlüssel
              preserve-environment sollte  außerdem  auf  »true«  gesetzt  werden,  so  dass  die
              Umgebung innerhalb der Chroot aufbewahrt wird.

              Falls  keines  der  oberhalb  bereitgestellten  Konfigurationsprofile  Ihren Bedarf
              deckt, können sie konfiguriert werden, um sie weiter  anzupassen  und/oder  kopiert
              und als Schablone für ganz neue Profile verwendet werden.

              Beachten  Sie, dass die unterschiedlichen Profile unterschiedliche Konsequenzen für
              die Sicherheit haben; weitere Einzelheiten finden Sie  im  nachfolgenden  Abschnitt
              »Sicherheit«.

       setup.config=Dateiname
              Dieser Schlüssel gibt eine Datei an, die die Einrichtungsskripte einlesen, wenn sie
              ausgeführt werden. Dies  übernimmt  den  durch  script-config  gesetzten  Wert  als
              Standardeinstellung.   Die   Datei  ist  ein  Bourne-Shell-Skript  und  kann  daher
              zusätzlich  zu  den  einfachen  Variablenzuweisungen  jeden   gültigen   Shell-Code
              enthalten.  Dies  wird  zum  Beispiel  das Anpassen des Verhaltens entsprechend des
              speziellen Chroot-Typs oder Namens ermöglichen. Beachten Sie, dass das  Skript  für
              jeden einzelnen Skriptaufruf eingelesen wird und deshalb idempotent sein muss.

              Alle     Standardeinstellungen    in    dieser    Datei    können    nun    mittels
              Konfigurationsschlüsseln in schroot.conf, wie nachfolgend ausführlich  beschrieben,
              gesetzt  werden. Existierende Konfigurationen sollte so geändert werden, dass diese
              Schlüssel anstelle dieser Datei Verwendung finden. Weitere Einzelheiten finden  Sie
              in  schroot-script-config(5). Dieser Typ von Einrichtungsskript-Konfigurationsdatei
              wird nicht länger als Teil der Standardprofile bereitgestellt, wird aber  weiterhin
              eingelesen, falls er vorhanden und dieser Schlüssel gesetzt ist.

       setup.copyfiles=Dateiname
              eine  Datei,  die  eine Liste von Dateien enthält, die in die Chroot kopiert werden
              (eine Datei pro Zeile). Die Datei wird innerhalb der Chroot  den  selben  absoluten
              Speicherort haben.

       setup.fstab=Dateiname
              die Datei mit der Dateisystemtabelle, die zum Einhängen von Dateisystemen innerhalb
              der Chroot benutzt wird.  Das  Format  dieser  Datei  ist  identisch  mit  dem  von
              /etc/fstab,  das  in  fstab(5) dokumentiert wird. Der einzige Unterschied ist, dass
              der Pfad zum Einhängepunkt fs_dir relativ zur Chroot  statt  zum  Wurzelverzeichnis
              ist.  Beachten  Sie  auch, dass Einhängepunkte auf dem Wirt in eine kanonische Form
              gebracht werden, wodurch sichergestellt wird, dass  absolute  symbolische  Verweise
              auf  etwas  innerhalb  der  Chroot  zeigen. Komplexe Pfade, die mehrere symbolische
              Verweise enthalten, könnten jedoch falsch aufgelöst werden. Es  ist  nicht  ratsam,
              verschachtelte symbolische Verweise als Einhängepunkte zu verwenden.

       setup.nssdatabases=Dateiname
              eine  Datei,  die die Systemdatenbanken aufführt, die in die Chroot kopiert werden.
              Die Standarddatenbanken sind »passwd«,  »shadow«,  »group«  und  »gshadow«.  Andere
              mögliche  Datenbanken,  die  beigefügt  werden können sind »services«, »protocols«,
              »networks« und »hosts«. Die Datenbanken werden  mittels  getent(1)  kopiert.  Daher
              werden  alle in /etc/nsswitch.conf aufgeführten Datenbankquellen für jede Datenbank
              benutzt.

       setup.services=Dienst1,Dienst2,…
              eine durch Kommas getrennte Liste von von Diensten, die in  der  Chroot  ausgeführt
              werden.  Diese  werden  bei  Beginn  der  Sitzung  gestartet  und  bei Sitzungsende
              gestoppt.

       command-prefix=command,Option1,Option2,…
              eine durch Kommas getrennte Liste eines Befehls und Optionen für den Befehl. Dieser
              Befehl  und  seine  Optionen werden allen Befehlen vorangestellt, die innerhalb der
              Chroot ausgeführt werden. Dies ist nützlich, um Befehle wie »nice«,  »ionice«  oder
              »eatmydata«  für  alle  Befehle die innerhalb der Chroot laufen, hinzuzufügen. Nice
              und Ionice werden die CPU und die E/A-Zeitplanung beeinflussen. Eatmydata ignoriert
              Fsync-Operationen      des      Dateisystems      und      ist     nützlich     für
              Wegwerf-Chroot-Schnappschüsse, bei denen Sie sich nicht um Datenverluste,  aber  um
              hohe Geschwindigkeit kümmern müssen.

       personality=Rolle
              setzt  die  Persönlichkeit  (Prozessausführungsdomänen),  die  benutzt werden soll.
              Diese  Option  ist  nützlich,  wenn  zum  Beispiel  eine  32-Bit-Chroot  auf  einem
              64-Bit-System  verwendet  wird.  Gültige  Optionen  auf  Linux  sind »bsd«, »hpux«,
              »irix32«, »irix64«, »irixn32«, »iscr4«, »linux«, »linux32«, »linux_32bit«,  »osf4«,
              »osr5«,  »riscos«,  »scorvr3«,  »solaris«,  »sunos«,  »svr4«, »uw7«, »wysev386« und
              »xenix«. Der Standardwert ist »linux«. Es  gibt  außerdem  noch  die  Spezialoption
              »undefined«  (Persönlichkeit  nicht  gesetzt).  Für  eine  32-Bit-Chroot  auf einem
              64-Bit-System ist die erforderliche Option »linux32«. Die  einzige  gültige  Option
              für  Nicht-Linux-Systeme  ist »undefined«. Der Standardwert für Nicht-Linux-Systeme
              ist »undefined«.

       preserve-environment=true|false
              Standardmäßig wird die Umgebung nicht innerhalb der Chroot aufbewahrt.  Stattdessen
              wird  eine  minimale Umgebung benutzt. Ist dies auf true gesetzt, wird die Umgebung
              immer aufbewahrt. Dies ist zum Beispiel nützlich, wenn X-Anwendungen innerhalb  der
              Chroot  ausgeführt  werden, die die Umgebung zum korrekten Funktionieren benötigen.
              Die Umgebung kann  ebenso  mittels  der  Option  --preserve-environment  aufbewahrt
              werden.

       shell=Shell
              Wenn  eine  Login-Shell ausgeführt wird, wird eine größere Zahl möglicher Shells in
              dieser Reihenfolge berücksichtigt:  der  Befehl  in  der  Umgebungsvariablen  SHELL
              (falls  --preserve-environment  benutzt  wird  oder  preserve-environment aktiviert
              ist),  die  Shell  des  Benutzers  in  der  Datenbank   »passwd«,   /bin/bash   und
              schlussendlich  /bin/sh.  Diese  Einstellung setzt diese Liste außer Kraft und wird
              die angegebene Shell verwenden. Sie kann mittels der Option  --shell  überschrieben
              werden.

       environment-filter=regulärer Ausdruck
              Die Umgebung, die in der Chroot gesetzt wird, wird gefiltert, um Umgebungsvariablen
              zu entfernen, die ein Sicherheitsrisiko darstellen könnten. Jede Umgebungsvariable,
              die  zum  erweiterten  regulären  POSIX-Ausdruck  passt,  wird  vor  dem  Ausführen
              irgendeines Befehls in der Chroot entfernt.

              Unter  Umständen  gefährliche  Umgebungsvariablen  werden  aus   Sicherheitsgründen
              standardmäßig für die folgenden regulären Ausdrücke entfernt: »^(BASH_ENV|CDPATH
              |ENV|HOSTALIASES|IFS|KRB5_CONFIG|KRBCONFDIR|KRBTKFILE|KRB_CONF|LD_.*|LOCALDOMAIN
              |NLSPATH|PATH_LOCALE|RES_OPTIONS|TERMINFO|TERMINFO_DIRS|TERMPATH)$«.

   Einfache und Verzeichnis-Chroots
       Chroots  des  Typs  »plain«  oder  »directory«  sind Verzeichnisse, auf die im Dateisystem
       zugegriffen werden kann. Diese beiden Typen sind identisch, außer dass Verzeichnis-Chroots
       im  Gegensatz  zu  einfachen  Chroots  Einrichtungsskripte ausführen können. Infolgedessen
       werden Dateisysteme  wie  /proc  nicht  in  einfachen  Chroots  eingehängt;  es  liegt  im
       Verantwortungsbereich  des Systemadministrators, solche Chroots von Hand zu konfigurieren,
       während   Verzeichnis-Chroots   automatisch   konfiguriert   werden.   Zusätzlich   setzen
       Verzeichnis-Chroots   die  Optionen  der  dateisystemvereinenden  Chroots  um  (siehe  die
       nachfolgenden »Optionen der dateisystemvereinenden Chroot«).

       Diese Chroot-Typen haben eine zusätzliche (verbindliche) Konfigurationsoption:

       directory=Verzeichnis
              das   Verzeichnis,   das   die   Chroot-Umgebung   enthält.   Dorthin   wird    das
              Wurzelverzeichnis  geändert, wenn eine Login-Shell oder ein Befehl ausgeführt wird.
              Das Verzeichnis muss existieren und  Lese-  sowie  Ausführungsrechte  haben,  damit
              Benutzer  darauf zugreifen können. Beachten Sie, dass es auf Linux-Systemen mit der
              Option »bind« andernorts eingehängt wird,  um  es  als  Chroot  zu  verwenden.  Das
              Verzeichnis   für   »plain«-Chroots  wird  mit  der  Option  --rbind  von  mount(8)
              eingehängt, während für »directory«-Chroots stattdessen  --bind  benutzt  wird,  so
              dass  darunterliegende Einhängevorgänge nicht aufrecht erhalten werden (sie sollten
              in der Datei fstab genauso wie in /etc/fstab des Rechners gesetzt werden).

   Datei-Chroots
       Chroots des Typs »file« sind Dateien  des  aktuellen  Dateisystems,  die  ein  Archiv  der
       Chroot-Dateien    enthalten.    Sie    setzen   die   Source-Chroot-Optionen   um   (siehe
       »Source-Chroot-Optionen« unten). Beachten Sie, dass  für  jede  Chroot  dieses  Typs  eine
       entsprechende  Source-Chroot  (des  Typs  »file«)  erstellt  wird; dies dient dem bequemen
       Zugang zum Quellarchiv, z.B. zu Aktualisierungszwecken. Diese zusätzlichen  Optionen  sind
       ebenfalls umgesetzt:

       file=Dateiname
              die  Datei,  die  die (verbindliche) archivierte Chroot-Umgebung enthält. Dies muss
              ein Tar (Bandarchiv) sein, das  wahlweise  mit  Gzip,  Bzip2,  Xz,  Lzop  oder  Lz4
              komprimiert  ist.  Die  Dateierweiterungen,  die  zur  Bestimmung  des Typs benutzt
              werden, sind .tar, .tar.gz, .tar.bz2, .tar.xz,  .tar.lzop,  .tar.lz4,  .tgz,  .tbz,
              .txz, .tzo und .tlz4. Diese Datei muss dem Benutzer Root gehören und darf nicht von
              anderen beschreibbar sein. Beachten Sie, dass Zip-Archive nicht länger  unterstützt
              werden;  Zip  war  nicht  in der Lage, benannte Weiterleitungen und Geräteknoten zu
              archivieren und daher nicht zur Archivierung von Chroots geeignet.

       location=Pfad
              Dies ist der Pfad zur Chroot innerhalb des Archivs. Falls das Archiv  zum  Beispiel
              eine  Chroot  in  /squeeze  enthält,  würden Sie hier »/squeeze« angeben. Falls die
              Chroot  das  Einzige  ist,  was  sich  im  Archiv  befindet,   d.h.   /   ist   das
              Wurzelverzeichnis des Dateisystems für die Chroot, sollte diese Option leer bleiben
              oder ganz weggelassen werden.

   Loopback-Chroots
       Chroots des Typs »loopback« sind ein Dateisystem, das als Datei auf der  Platte  verfügbar
       ist  und  auf  das  über  ein Loopback-Mount zugegriffen wird. Die Datei wird per Loopback
       eingehängt  und  auf  Anforderung  ausgehängt.  Loopback-Chroots   setzen   die   Optionen
       einhängbare  Chroot  und  dateisystemvereinende Chroot um (siehe »Optionen für einhängbare
       Chroots« und »Optionen der dateisystemvereinenden Chroot« unten), sowie  eine  zusätzliche
       Option:

       file=Dateiname
              Dies  ist  der  Name  der  Datei,  die  das Dateisystem enthält, einschließlich des
              absoluten Pfades, zum Beispiel »/srv/chroot/sid«.

   Blockspeichergeräte-Chroots
       Chroots des Typs »block-device« sind ein Dateisystem, das  auf  einem  nicht  eingehängten
       Blockspeichergerät  verfügbar  ist.  Das  Gerät  wird auf Anforderung ein- und ausgehängt.
       Blockspeichergeräte-Chroots    setzen    die    Optionen    einhängbare     Chroot     und
       dateisystemvereinende  Chroot  um  (siehe »Optionen für einhängbare Chroots« und »Optionen
       der dateisystemvereinenden Chroot« unten), sowie eine zusätzliche Option:

       device=Gerät
              Dies ist der  Gerätename  des  Blockspeichergeräts,  einschließlich  des  absoluten
              Pfads, zum Beispiel »/dev/sda5«.

   Btrfs-Schnappschuss-Chroots
       Chroots  des  Typs  »btrfs-snapshot«  sind  aus einem existierenden Btrfs-Unterdatenträger
       erstellte Btrfs-Schnappschüsse auf einem eingehängten Btrfs-Dateisystem.  Auf  Anforderung
       wird  beim  Beginn  der Sitzung ein Schnappschuss aus diesem Unterdatenträger erstellt und
       dann eingehängt. Am Ende der Sitzung  wird  der  Schnappschuss  ausgehängt  und  gelöscht.
       Dieser    Chroot-Typ    setzt    die    Source-Chroot-Optionen   um   (siehe   nachfolgend
       »Source-Chroot-Optionen«).  Beachten  Sie,  dass  für  jede  Chroot   dieses   Typs   eine
       entsprechende  Source-Chroot (des Typs »directory«) erstellt wird; dies dient dem bequemen
       Zugriff auf den Quelldatenträger. Diese zusätzlichen Optionen sind ebenfalls eingebaut:

       btrfs-source-subvolume=Verzeichnis
              das Verzeichnis, das den Quellunterdatenträger enthält

       btrfs-snapshot-directory=Verzeichnis
              das   Verzeichnis,   in    das    die    Schnappschüsse    des    oben    genannten
              Quellunterdatenträgers gespeichert werden.

   ZFS snapshot chroots
       Chroots  of  type  ‘zfs-snapshot’  are a ZFS clone created from an existing ZFS dataset. A
       snapshot and clone will be created from this source subvolume on demand at the start of  a
       session,  and then the clone will be mounted. At the end of the session, the clone will be
       unmounted and the clone and snapshot will be deleted.  This  chroot  type  implements  the
       source  chroot  options  (see  “Source  chroot options”, below). Note that a corresponding
       source chroot (of type ‘directory’) will be created for each chroot of this type; this  is
       for convenient access to the source volume. These additional options are also implemented:

       zfs-dataset=dataset_name
              Name of the ZFS source dataset to use.

       zfs-snapshot-options=snapshot_options
              Snapshot options. These are additional options to pass to zfs snapshot.

   LVM-Schnappschuss-Chroots
       Chroots  des  Typs  »lvm-snapshot« sind ein Dateisystem, das auf einem mit LVM verwalteten
       logischen Laufwerk (LV) verfügbar ist.  Ein  LV-Schnappschuss  wird  auf  Anforderung  aus
       diesem  LV  erstellt. Dann wird der Schnappschuss eingehängt. Am Ende der Sitzung wird der
       LV-Schnappschuss ausgehängt und entfernt.

       LVM-Schnappschuss-Chroots setzen  die  Source-Chroot-Optionen  um  (siehe  »Source  chroot
       options«  unten)  und  all  die  Optionen  für  »block-device«.  Beachten  Sie,  dass eine
       zugehörige Source-Chroot (des Typs »block-device«) für jede Chroot  dieses  Typs  erstellt
       wird;  dies  dient  dem  bequemen Zugriff auf das Quellgerät. Diese zusätzliche Option ist
       ebenfalls eingebaut:

       lvm-snapshot-options=Schnappschussoptionen
              Schnappschussoptionen. Dies sind zusätzliche Optionen, die an lvcreate(8) übergeben
              werden,  zum  Beispiel »-L 2g«, um einen Schnappschuss mit einer Größe von 2 GiB zu
              erstellen. Hinweis: Hier können nicht der  LV-Name  (-n),  die  Schnappschussoption
              (-s)  und  der  Originalpfadname  des  LVs angegeben werden; sie werden automatisch
              durch Schroot gesetzt.

   Benutzerdefinierte Chroots
       Chroots des Typs »custom« sind ein spezieller Chroot-Typ,  der  für  die  Umsetzung  neuer
       Chroot-Typen  benutzt wird, der nicht durch eine der obigen Chroot-Typen unterstützt wird.
       Dies kann nützlich sein, um einen neuen Chroot-Typ umzusetzen und zu  testen,  ohne  dabei
       irgendwelchen   C++-Code   schreiben   zu   müssen.   Sie   müssen   jedoch   Ihr  eigenes
       Einrichtungsskript verfassen, das die Einrichtungsarbeit übernimmt, da  dieser  Chroot-Typ
       von  allein sehr wenig tut. Sie müssen Ihrer Chroot-Definition außerdem benutzerdefinierte
       Schlüssel für die Verwendung im Einrichtungsskript hinzufügen; anders  als  für  die  oben
       genannten  Chroot-Typen wird keine Überprüfung der Optionen stattfinden, so lange Sie dies
       nicht selbst in Ihrem Einrichtungsskript erledigen. Folgende  zusätzlichen  Optionen  sind
       ebenfalls eingebaut:

       custom-session-cloneable=true|false
              stellt   ein,   ob  Sitzungen  dieser  Chroot  geklont  werden  können  oder  nicht
              (standardmäßig aktiviert).

       custom-session-purgeable=true|false
              stellt  ein,  ob  Sitzungen  dieser  Chroot  geklont  werden  können   oder   nicht
              (standardmäßig deaktiviert).

       custom-source-cloneable=true|false
              stellt  ein,  ob  mittels  dieser  Chroot Source-Chroots geklont werden können oder
              nicht (standardmäßig deaktiviert).

   Source-Chroot-Optionen
       Die Chroot-Typen »btrfs-snapshot«, »file« und  »lvm-snapshot«  setzen  Source-Chroots  um.
       Zusätzlich   setzen  Chroot-Typen  mit  eingeschalteter  Unterstützung  von  Vereinigungen
       Source-Chroots um (siehe »Optionen der dateisystemvereinenden Chroot«  unten).  Dies  sind
       Chroots,  die  vor  der  Benutzung  automatisch  eine  Kopie von sich selbst erstellen und
       normalerweise von Sitzungen verwaltet werden. Diese Chroots stellen zusätzlich eine Chroot
       im   Namensraum   source:   bereit,  um  bequemen  Zugriff  auf  die  Originaldaten  (kein
       Schnappschuss) zu ermöglichen und bei der Verwaltung der Chroot zu helfen. D.h., für  eine
       Chroot   namens  wheezy  (chroot:wheezy)  wird  eine  entsprechende  Chroot  source:wheezy
       erstellt. Um mit älteren Versionen  von  Schroot,  die  keine  Namensräume  unterstützten,
       kompatibel  zu  bleiben,  wird  zusätzlich  eine  Chroot  mit  einer  an  den Chroot-Namen
       angehängten -source-Erweiterung erstellt  (d.h.  wheezy-source  im  vorherigen  Beispiel).
       Beachten  Sie,  dass  diese Kompatibilitätsnamen in Schroot 1.5.0 entfernt werden, so dass
       die Verwendung des source:-Namensraums der Form mit der  -source-Endung  vorgezogen  wird.
       Weitere Einzelheiten finden Sie unter schroot(1).

       Diese Chroot stellen die folgenden zusätzlichen Optionen bereit:

       source-clone=true|false
              stellt  ein,  ob  die Source-Chroot für diese Chroot automatisch geklont (erstellt)
              werden soll. Vorgabe ist true zum automatischen Klonen, aber, falls gewünscht, kann
              dies  durch  Setzen  auf  false  deaktiviert werden. Falls es deaktiviert ist, kann
              nicht auf die Chroot zugegriffen werden.

       source-users=Benutzer1,Benutzer2,…
              eine durch Kommas  getrennte  Liste  von  Benutzern,  denen  der  Zugriff  auf  die
              Source-Chroot  gestattet  ist.  Falls  sie leer ist oder weggelassen wird, wird der
              Zugriff keinen Benutzern gestattet. Dies wird die Option users in der Source-Chroot
              werden.

       source-groups=Gruppe1,Gruppe2,…
              eine  durch  Kommas  getrennte  Liste  von  Gruppen,  denen  der  Zugriff  auf  die
              Source-Chroot gestattet ist. Falls sie leer ist oder  weggelassen  wird,  wird  der
              Zugriff   keinen   Benutzern   gestattet.  Dies  wird  die  Option  groups  in  der
              Source-Chroot werden.

       source-root-users=Benutzer1,Benutzer2,…
              eine durch Kommas getrennte Liste von Benutzern, denen  der  Root-Zugriff  auf  die
              Source-Chroot  ohne  Passwort  gestattet  ist.  Falls sie leer ist oder weggelassen
              wird, wird der Root-Zugriff keinen Benutzern ohne  Passwort  gestattet  (falls  ein
              Benutzer  aber  in  users steht, kann er mit einem Passwort Zugriff erlangen). Dies
              wird die Option root-users in der Source-Chroot werden. Lesen Sie den nachfolgenden
              Abschnitt »Sicherheit«.

       source-root-groups=Gruppe1,Gruppe2,…
              eine  durch  Kommas  getrennte  Liste  von  Gruppen, denen der Root-Zugriff auf die
              Source-Chroot ohne Passwort gestattet ist. Falls  sie  leer  ist  oder  weggelassen
              wird,  wird  der  Root-Zugriff  keinen Benutzern ohne Passwort gestattet (falls die
              Gruppe eines Benutzers aber in groups steht, kann er  mit  einem  Passwort  Zugriff
              erlangen).  Dies wird die Option root-groups in der Source-Chroot werden. Lesen Sie
              dazu den nachfolgenden Abschnitt »Sicherheit«.

   Optionen für einhängbare Chroots
       Die Chroot-Typen »block-device«, »loopback« und »lvm-snapshot« setzen  das  Einhängen  von
       Geräten um. Es handelt sich dabei um Chroots, die das Einhängen eines Geräts erfordern, um
       auf die Chroot zugreifen zu können.  Diese  Chroots  stellen  die  folgenden  zusätzlichen
       Optionen bereit:

       mount-options=Optionen
              Einhängeoptionen für das Blockspeichergerät. Dies sind zusätzliche Optionen, die an
              mount(8) übergeben werden, zum Beispiel »-o atime,sync,user_xattr«.

       location=Pfad
              Dies ist der Pfad zur Chroot innerhalb des Dateisystems auf dem  Gerät.  Falls  das
              Dateisystem  zum  Beispiel  eine  Chroot  in  /chroot/sid  enthält, würden Sie hier
              »/chroot/sid« angeben.  Falls  die  Chroot  das  Einzige  ist,  was  sich  auf  dem
              Dateisystem  befindet,  d.h.  /  das Wurzeldateisystem der Chroot ist, sollte diese
              Option leer sein oder ganz weggelassen werden.

   Optionen der dateisystemvereinenden Chroot
       Die Chroot-Typen »block-device«, »directory« und  »loopback«  ermöglichen  beim  Erstellen
       einer  Sitzung  die  Benutzung von vereinten Dateisystemen, um das Originaldateisystem mit
       einem separaten beschreibbaren Dateisystem zu überlagern. Das Originaldateisystem hat  nur
       Lesezugriff  mit  einigen  Änderungen,  die im darüberliegenden beschreibbaren Verzeichnis
       gemacht wurden und das Originaldateisystem unverändert lassen. Eine Union erlaubt  mehrere
       Sitzungen,  um  simultan  auf  eine  einzelne  Chroot  zuzugreifen  und  Änderungen  daran
       vorzunehmen, während die Änderungen für jede Sitzung  privat  gehalten  werden.  Um  diese
       Funktionalität  zu  aktivieren,  setzen Sie union-type auf irgendeinen unterstützten Wert.
       Falls  dies  aktiviert  ist,  wird  die  Chroot  außerdem  eine  Source-Chroot  sein,  die
       zusätzliche  Optionen  bereitstellt  (siehe »Source-Chroot-Optionen«, oben). Alle Einträge
       sind optional.

       union-type=Typ
              setzt den Typ des vereinten Dateisystems. Derzeit  unterstützte  Dateisysteme  sind
              »aufs«,  »overlayfs«,  »overlay«  (seit  Linux 4.0+) und »unionfs«. Die Vorgabe ist
              »none«, wodurch diese Funktionalität deaktiviert wird.

       union-mount-options=Optionen
              Einhängeoptionen des vereinten Dateisystems (Konfiguration  des  Zweigs),  die  zum
              Einhängen  des vereinten Dateisystems mit union-type angegeben werden. Dies ersetzt
              die vollständige Zeichenkette »-o«  zum  Einhängen  und  ermöglicht  das  Erstellen
              komplexer  vereinter  Dateisysteme.  Beachten  Sie,  dass  »aufs«,  »overlayfs« und
              »unionfs«  jeweils  verschiedene  Einhängeoptionen   unterstützen.   Hinweis:   Die
              Variablen                  »${CHROOT_UNION_OVERLAY_DIRECTORY}«                  und
              »${CHROOT_UNION_UNDERLAY_DIRECTORY}«   können   benutzt   werden,   um   auf    das
              darüberliegende   beschreibbare   Sitzungsverzeichnis   und   das  darunterliegende
              Verzeichnis mit  Lesezugriff  Bezug  zu  nehmen,  die  zum  Vereinen  dienen.  Eine
              vollständige Variablenliste finden Sie unter schroot-setup(5).

       union-overlay-directory=Verzeichnis
              gibt   das   Verzeichnis   an,   in   dem   die   beschreibbaren   darüberliegenden
              Sitzungsverzeichnisse         erstellt         werden.         Vorgabe          ist
              »/var/lib/schroot/union/overlay«.

       union-underlay-directory=Verzeichnis
              gibt das Verzeichnis an, in dem die darunterliegenden Verzeichnisse mit Lesezugriff
              erstellt werden. Vorgabe ist »/var/lib/schroot/union/underlay«.

   Anpassung
       Zusätzlich zu den oben aufgeführten Schlüsseln ist es möglich benutzerdefinierte Schlüssel
       hinzuzufügen.  Diese  Schlüssel  werden  benutzt,  um  dem  Einrichtungsskript zusätzliche
       Umgebungsvariablen hinzuzufügen, wenn Einrichtungsskripte ausgeführt werden.  Die  einzige
       Einschränkung   ist,   dass   der  Schlüsselname  nur  aus  alphanumerischen  Zeichen  und
       Bindestrichen bestehen darf, mit einem Buchstaben  beginnen  und  mindestens  einen  Punkt
       enthalten     muss.     Das     heißt,    dass    er    zu    dem    regulären    Ausdruck
       »^([a-z][a-z0-9]*\.)+[a-z][a-z0-9-]*$« passt.

       Zum Beispiel:
              debian.apt-update=true
              debian.distribution=unstable

       würde die folgende Umgebung setzen:
              DEBIAN_APT_UPDATE=true
              DEBIAN_DISTRIBUTION=unstable

       Beachten Sie, dass es ein Fehler ist, unterschiedliche Schlüsselnamen  zu  verwenden,  die
       die selbe Umgebungsvariable durch Mixen von Punkten und Bindestrichen setzen würden.

       Benutzerdefinierte  Konfigurationsschlüssel  können  außerdem zur Laufzeit unter Benutzung
       der Option --option geändert werden. Aus Sicherheitsgründen können jedoch nur  ausgewählte
       Schlüssel   geändert  werden.  Diese  Schlüssel  werden  mittels  der  folgenden  Optionen
       angegeben:

       user-modifiable-keys=Schlüssel1,Schlüssel2,…
              setzt die Schlüssel, die Benutzer unter Benutzung von --option ändern können.

       root-modifiable-keys=Schlüssel1,Schlüssel2,… setzt die Schlüssel, die der
              Root-Benutzer mittels --option ändern kann. Beachten Sie,  dass  der  Root-Benutzer
              die   in   user-modifiable-keys   angegebenen  Schlüssel  zusätzlich  zu  den  hier
              angegebenen verwenden kann.

   Lokalisierung
       einige Schlüssel können in mehrere Sprachen lokalisiert sein. Dies wird  durch  Hinzufügen
       des Local-Namens in eckigen Klammern nach dem Schlüsselnamen erreicht, zum Beispiel:
              description[en_GB]=British English translation

       Dies wird den Schlüssel description für die Locale en_GB lokalisieren.
              description[fr]=Traduction française

       Dies wird den Schlüssel description für alle französischen Locales lokalisieren.

CHROOT-NAMEN

       A  number  of  characters  or  words  are  not permitted in a chroot name, session name or
       configuration filename. The name must begin with a lowercase or an uppercase letter, or  a
       digit.  The  remaining  characters  may  additionally  be  dash  (‘-’),  period  (‘.’), or
       underscore (‘_’).

       The rationale for these restrictions is as follows:

       Generic
              Unfortunately,  not  all  the  places  that  deal  with  chroot  names  can  handle
              non-printable  and  other characters properly, and it's hard to update all of them.
              This is mostly about the various shell scripts where it's  also  unwise  to  assume
              authors always create safe code.

       »dpkg-old«
       »dpkg-dist«
       »dpkg-new«
       »dpkg-tmp«
              Diese  Namen  erscheinen  möglicherweise  nicht  am  Ende  eines  Namens. Dies sind
              gesicherte Kopien von Conffiles, die von der Paketverwaltung Dpkg benutzt und daher
              ignoriert werden.

SICHERHEIT

   Nicht vertrauenswürdige Benutzer
       Beachten  Sie,  dass  es  ein  ernstes  Sicherheitsrisiko  ist,  nicht  vertrauenswürdigen
       Benutzern Root-Zugriff zu  gewähren!  Obwohl  der  nicht  vertrauenswürdige  Benutzer  nur
       Root-Zugriff  innerhalb  der  Chroot hat, gibt es in der Praxis viele offensichtliche Wege
       aus der Chroot auszubrechen und Dienste auf dem Wirtsystem zu zerstören.  Wie  immer  wird
       dies auf Vertrauen hinauslaufen.

       Geben  Sie  keinen  Benutzern  Root-Zugriff,  denen  Sie  nicht  trauen  würden,  wenn sie
       Root-Zugriff auf das Wirtsystem hätten.

   Profile
       Abhängig davon, welche Profile Sie mit der Option script-config konfiguriert haben, werden
       unterschiedliche   Dateisysteme   innerhalb   der   Chroot   eingehängt   und   es  werden
       unterschiedliche Dateien vom Wirtsystem in die Chroot kopiert. Einige Profile werden  /dev
       vom  Wirtsystem  einhängen, andere nicht. Einige Profile werden außerdem zusätzliche Teile
       des Wirtdateisystems mit der Option  »bind«  einhängen,  um  die  Benutzung  verschiedener
       Funktionen  zu  ermöglichen,  einschließlich  des  Home-Verzeichnisses  des  Benutzers und
       bestimmter Teile von /var. Prüfen Sie die Datei fstab des Profils, um sich zu  versichern,
       was  eingehängt  wird  und  die  anderen  Profildateien,  um  zu sehen, welche Dateien und
       Systemdatenbanken in die Chroot kopiert werden. Wählen Sie ein  anderes  Profil  aus  oder
       bearbeiten  Sie  die  Dateien,  um weiter einzugrenzen, was innerhalb der Chroot verfügbar
       gemacht wird.

       Es gibt einen Kompromiss zwischen Sicherheit (die Chroot so klein wie möglich halten)  und
       Benutzerfreundlichkeit  (die  manchmal  Zugriff auf Teile des Wirtdateisystems erfordert).
       Die unterschiedlichen Profile gehen unterschiedliche Kompromisse ein und es  ist  wichtig,
       dass  Sie  beurteilen,  welchen  Kompromiss  aus Sicherheit und Benutzerfreundlichkeit Sie
       benötigen.

BEISPIEL

       # Beispielkonfiguration

       [sid]
       type=plain
       description=Debian unstable
       description[fr_FR]=Debian instable
       directory=/srv/chroot/sid
       priority=3
       users=jim
       groups=sbuild
       root-users=rleigh
       aliases=unstable,default

       [etch]
       type=block-device
       description=Debian testing (32-bit)
       priority=2
       groups=users
       #groups=sbuild-security
       aliases=testing
       device=/dev/hda_vg/etch_chroot
       mount-options=-o atime
       personality=linux32

       [sid-file]
       type=file
       description=Debian sid file-based chroot
       priority=3
       groups=sbuild
       file=/srv/chroots/sid.tar.gz

       [sid-snapshot]
       type=lvm-snapshot
       description=Debian unstable LVM snapshot
       priority=3
       groups=sbuild
       users=rleigh
       source-root-users=rleigh
       source-root-groups=admin
       device=/dev/hda_vg/sid_chroot
       mount-options=-o atime,sync,user_xattr
       lvm-snapshot-options=--size 2G

DATEIEN

   Chroot-Definitionen
       /etc/schroot/schroot.conf
              die systemweite Chroot-Definitionsdatei. Diese Datei muss dem Benutzer Root gehören
              und darf nicht durch andere beschreibbar sein.

       /etc/schroot/chroot.d
              Zusätzliche Chroot-Definitionen können unter diesem Verzeichnis in »files« abgelegt
              werden.  Sie  werden  auf  exakt  die  selbe  Weise  wie  /etc/schroot/schroot.conf
              betrachtet. Jede Datei kann eine oder mehrere Chroot-Definitionen enthalten.

   Einrichtungsskriptkonfiguration
       Das  Verzeichnis  /etc/schroot/default  enthält  die  von  Einrichtungsskripten  benutzten
       Standardeinstellungen.

       config Hauptkonfigurationsdatei, die von Einrichtungsskripten  gelesen  wird.  Das  Format
              dieser   Datei   wird   in   schroot-script-config(5)  beschrieben.  Dies  ist  der
              Standardwert für den  Schlüssel  script-config.  Beachten  Sie,  dass  dies  früher
              /etc/schroot/script-defaults  hieß.  Auf  die  folgenden  Werte  wird standardmäßig
              verwiesen:

       copyfiles
              eine Liste von Dateien, die vom Wirtsystem in die  Chroot  kopiert  wird.  Beachten
              Sie, dass diese früher /etc/schroot/copyfiles-defaults hieß.

       fstab  eine  Datei  im  Format,  das  in  fstab(5)  beschrieben wird. Sie wird benutzt, um
              Dateisysteme innerhalb der Chroot einzuhängen.  Der  Einhängeort  ist  relativ  zum
              Wurzelverzeichnis     der    Chroot.    Beachten    Sie,    dass    diese    früher
              /etc/schroot/mount-defaults hieß.

       nssdatabases
              Systemdatenbanken (wie in /etc/nsswitch.conf auf  GNU/Linux-Systemen  beschrieben),
              die  vom  Wirtsystem  in die Chroot kopiert werden. Beachten Sie, dass diese früher
              /etc/schroot/nssdatabases-defaults hieß.

AUTOR

       Roger Leigh

COPYRIGHT

       Copyright © 2005-2012 Roger Leigh <rleigh@debian.org>

       schroot ist freie Software. Sie können es unter den Bedingungen  der  GNU  General  Public
       License,  wie  von  der  Free  Software  Foundation  veröffentlicht,  weitergeben und/oder
       modifizieren, entweder gemäß Version 3 der Lizenz oder (nach Ihrer Option) jeder  späteren
       Version.

SIEHE AUCH

       sbuild(1), schroot(1), schroot-script-config(5), schroot-faq(7), mount(8).