dchroot-dsa(1) in eine Chroot-Umgebung gelangen

ÜBERSICHT

dchroot-dsa [-h|--help | -V|--version | -l|--list | -i|--info | --config | -p|--listpaths] [-d Verzeichnis|--directory=Verzeichnis] [-q|--quiet | -v|--verbose] [-c Chroot|--chroot=Chroot | --all | CHROOT] [BEFEHL]

BESCHREIBUNG

dchroot-dsa erlaubt dem Anwender einen Befehl oder eine Login-Shell in einer Chroot-Umgebung auszuführen. Falls kein Befehl angegeben wurde, wird eine Login-Shell im Home-Verzeichnis des Benutzers innerhalb der Chroot gestartet.

Die Umgebung des Benutzers wird innerhalb der Chroot erhalten.

Der Befehl ist ein einzelnes Argument, das ein absoluter Pfad zu einem Programm sein muss. Zusatzliche Optionen sind nicht gestattet.

Das Verzeichnis, in dem der Befehl oder die Login-Shell ausgeführt wird, hängt vom Kontext ab. Eine vollständige Beschreibung finden Sie nachfolgend unter der Option --directory.

Diese Version von Dchroot-dsa ist ein Kompatibilitäts-Wrapper um das Programm schroot(1). Es wird für die Rückwärtskompatibilität mit den Befehlszeilenoptionen von Dchroot-dsa benutzt, für die zukünftige Nutzung wird aber Schroot empfohlen. Lesen Sie den nachfolgenden Abschnitt »Inkompatibilitäten«, um etwas über bekannte Inkompatibilitäten mit älteren Versionen von Dchroot-dsa zu erfahren.

OPTIONEN

dchroot-dsa akzeptiert die folgenden Optionen:

Grundlegende Optionen

-h, --help
zeigt eine Zusammenfassung der Hilfe.
-a, --all
wählt alle Chroots aus. Beachten Sie, dass ältere Versionen von Dchroot-dsa diese Option nicht enthielten.
-c, --chroot=Chroot
gibt eine Chroot an, die benutzt werden soll. Diese Option kann mehrfach verwendet werden, um mehr als eine Chroot anzugeben. In diesem Fall wirkt sie sich ähnlich wie --all aus. Falls diese Option nicht benutzt wird, gibt das erste Argument, das keine Option ist, die zu benutzende Chroot an. Beachten Sie, dass ältere Versionen von Dchroot-dsa diese Option nicht enthielten.
-l, --list
führt alle verfügbaren Chroots auf.
-i, --info
gibt detaillierte Informationen über die verfügbaren Chroots aus. Beachten Sie, dass ältere Versionen von Dchroot-dsa diese Option nicht enthielten.
-p, --listpaths
gibt absolute Speicherorte (Pfade) der verfügbaren Chroots aus.
--config
gibt die Konfiguration der verfügbaren Chroots aus. Dies ist nützlich, um zu testen, ob die benutzte Konfiguration die selbe wie die in der Konfigurationsdatei ist. Sämtliche Kommentare der Originaldatei werden fehlen. Beachten Sie, dass ältere Versionen von Dchroot-dsa diese Option nicht enthielten.
-d, --directory=Verzeichnis
wechselt nach Verzeichnis innerhalb der Chroot, bevor der Befehl oder die Login-Shell ausgeführt wird. Falls Verzeichnis nicht verfügbar ist, wird Dchroot-dsa mit einem Fehlerstatus beendet.
Das Standardverhalten (alle Verzeichnispfade liegen innerhalb der Chroot) ist, die Login-Shell oder den Befehl im Home-Verzeichnis des Benutzers oder / auszuführen, falls das Home-Verzeichnis nicht verfügbar ist. Falls keines der Verzeichnisse verfügbar ist, wird Dchroot-dsa mit einem Fehlerstatus beendet.
-q, --quiet
gibt nur wichtige Meldungen aus. Beachten Sie, dass ältere Versionen von Dchroot-dsa diese Option nicht enthielten.
-v, --verbose
gibt alle Meldungen aus. Beachten Sie, dass ältere Versionen von Dchroot-dsa diese Option nicht enthielten.
-V, --version
gibt Versionsinformationen aus.

KONFIGURATION

INKOMPATIBILITÄTEN

Debian-Dchroot vor Version 1.5.1

  • Diese Version von Dchroot-dsa benutzt schroot.conf, um die Konfiguration für verfügbare Chroots zu speichern, anstatt der geschichtlich benutzten Datei dchroot.conf. Dchroot-dsa unterstützt die automatische Migration der dchroot.conf in das schroot.conf-Schlüsseldateiformat mit seiner Option --config aus Versionen von 0.2.2 bis 1.5.0. Die Unterstützung für das alte Format ist nun nicht länger verfügbar.

DSA-Dchroot

  • Protokollnachrichten sind unterschiedlich formuliert und formatiert.
  • Dchroot-dsa stellt eine eingeschränkte Untermenge der durch schroot umgesetzten Funktionalität bereit, liegt aber immer noch unter Schroot. Daher ist Dchroot-dsa immer noch Gegenstand der Schroot-Sicherheitsprüfung, einschließlich PAM-Authentifizierung, Autorisierung und zum Beispiel Sitzungsverwaltung und kann sich daher unter manchen Umständen gegenüber älteren Dchroot-dsa-Version leicht anders verhalten.

Debian-Dchroot

Ein dchroot-Paket stellt eine alternative Dchroot-Umsetzung bereit.
  • alle obigen Inkompatibilitäten treffen zu
  • Diese Version von Dchroot hat inkompatible Befehlszeilenoptionen und obwohl einige dieser Optionen unterstützt werden oder sie entsprechende Optionen mit einem anderen Namen hat, wird die Option -c nicht benötigt, um eine Chroot anzugeben. Sie erlaubt außerdem die Benutzung eines Shell-Skripts als Option anstelle eines einzelnen absoluten Pfades und mehrere Optionen anstelle einer einzelnen Option.

RESERVEVERZEICHNISSE

Dchroot-dsa wird ein geeignetes Verzeichnis zur Verwendung innerhalb der Chroot auswählen, abhängig davon, ob die Option --directory benutzt wird. Wenn ein Verzeichnis explizit angegeben wird, wird wegen der Sicherheit und Konsistenz nur ein Verzeichnis verwendet, während für eine Login-Shell oder einen Befehl mehrere Möglichkeiten ausprobiert werden können. Beachten Sie, dass es, da mehrere Ausweichmöglichkeiten für Befehle berücksichtigt werden, gefährlich ist, Befehle mittels Dchroot-dsa auszuführen. Benutzen Sie stattdessen Schroot. Die folgenden Unterabschnitte führen die Abfolge der Ausweichmöglichkeiten für jeden Fall auf. CWD ist das aktuelle Arbeitsverzeichnis, VERZ ist das mit --directory angegebene Verzeichnis.

Login-Shell oder Befehl

Übergang
(Rechner → Chroot)Kommentar

CWD → Passwort Passwortverzeichnis normales Verhalten (falls nicht --directory benutzt wird)
CWD → / falls »passwd pw_dir« nicht existiert
FAIL falls / nicht existiert

--directory benutzt

Übergang
(Rechner → Chroot)Kommentar

CWD → DIRnormales Verhalten
FAILfalls DIR nicht existiert

Unter irgendwelchen Umständen kann es vorkommen, dass keine Reserve existiert.

Fehlersuche

Beachten Sie, dass --debug=Mitteilung die interne Reserveliste anzeigen wird, die für diese Sitzung berechnet wurde.

BEISPIELE

$ dchroot-dsa -l␍ Verfügbare Chroots: sarge, sid

$ dchroot-dsa --listpaths␍ /srv/chroot/sarge /srv/chroot/sid

$ dchroot-dsa -q sid -- /bin/uname␍ Linux

$ dchroot-dsa sid␍ I: [sid chroot] Login-Shell »/bin/bash« gestartet: $

Beachten Sie, dass die erste Zeile auf der Standardfehlerausgabe und die restlichen auf der Standardausgabe wiedergegeben werden. Dies ist beabsichtigt, damit Programmausgaben von in der Chroot ausgeführten Befehlen nach Bedarf weiter- und umgeleitet werden können. Die Daten werden die selben wie bei der direkten Ausführung des Befehls auf dem Wirtsystem sein.

FEHLERBEHEBUNG

Falls etwas nicht funktioniert und aus den Fehlermeldungen nicht hervorgeht, was falsch ist, versuchen Sie die Option --debug=Stufe zu benutzen, um Debug-Meldungen einzuschalten. Dies gibt eine große Menge weiterer Informationen. Gültige Debug-Stufen sind »none« und »notice«, »info«, »warning« und »critical« nach zunehmender Schwere geordnet. Je niedriger der Schweregrad desto mehr wird ausgegeben.

Falls Sie immer noch Schwierigkeiten haben, können die Entwickler auf der Mailingliste kontaktiert werden:
Debian-Buildd-Tools-Entwickler
<[email protected]>

FEHLER

Auf den Architekturen mips und mipsel haben Linux-Kernel bis einschließlich Version 2.6.17 kaputte personality(2)-Unterstützung, die dazu führt, dass das Setzen der Persönlichkeit fehlschlägt. Dies wird als ein »Transaktion nicht erlaubt«-Fehler (EPERM) gesehen. Um dieses Problem zu umgehen setzen Sie personality auf »undefined« oder führen Sie ein Upgrade auf einen aktuelleren Kernel durch.

DATEIEN

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

AUTOR

Roger Leigh

Diese Umsetzung von Dchroot-dsa verwendet die selben Befehlszeilenoptionen wie das auf von Debian-Systemadministratoren für das Debian-Projekt betriebenen Rechnern gefundene dchroot. Diese Rechner haben ein dchroot-dsa-Quellpaket, das ein von Ben Collins <[email protected]> und Martin Schulze <[email protected]> geschriebenes dchroot-dsa-Paket bereitstellt.

COPYRIGHT

Copyright © 2005-2012 Roger Leigh <[email protected]>

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.