'\" t .\" Title: nsenter .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.20 .\" Date: 2024-04-03 .\" Manual: Dienstprogramme für Benutzer .\" Source: util-linux 2.40 .\" Language: English .\" .TH "NSENTER" "1" "2024-04-03" "util\-linux 2.40" "Dienstprogramme für Benutzer" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "BEZEICHNUNG" nsenter \- Programme in anderen Namensräumen ausführen .SH "ÜBERSICHT" .sp \fBnsenter\fP [options] [\fIprogram\fP [\fIarguments\fP]] .SH "BESCHREIBUNG" .sp Der Befehl \fBnsenter\fP führt das angegebene \fIProgramm\fP im Namensraum oder den \fINamensräumen\fP aus, der oder die in den Befehlszeilenoptionen angegeben sind (nachfolgend beschrieben). Falls kein \fIProgramm\fP angegeben ist, dann wird »${SHELL}« ausgeführt (Vorgabe: \fI/bin/sh\fP). .sp Wechselfähige Namensräume sind: .sp \fBEinhänge\-Namensraum\fP .RS 4 Ein\- und Aushängen eines Dateisystems wirkt sich nicht auf das übrige System aus, außer für Dateisysteme, die ausdrücklich als Mehrfacheinhängungen markiert sind (mit \fBmount \-\-make\-shared\fP; siehe \fI/proc/self/mountinfo\fP für den Schalter \fBshared\fP). Für weitere Details siehe \fBmount_namespaces\fP(7) und die Diskussion des Schalters \fBCLONE_NEWNS\fP in \fBclone\fP(2). .RE .sp \fBUTS\-Namensraum\fP .RS 4 Setzen des Rechner\- oder Domain\-Namens wird den Rest des Systems nicht betreffen. Für weitere Details siehe \fButs_namespaces\fP(7). .RE .sp \fBIPC\-Namensraum\fP .RS 4 Der Prozess erhält einen unabhängigen Namensraum für POSIX\-Meldungswarteschlangen sowie System\-V\-Meldungswarteschlangen, Semaphor\-Gruppen und gemeinsam genutzte Speichersegmente. Für weitere Details siehe \fBipc_namespaces\fP(7). .RE .sp \fBNetzwerk\-Namensraum\fP .RS 4 Der Prozess erhält unabhängige IPv4\- und IPv6\-Stapel, IP\-Routing\-Tabellen, Firewall\-Regeln, die Verzeichnisbäume \fI/proc/net\fP und \fI/sys/class/net\fP, Sockets usw. Für weitere Details siehe \fBnetwork_namespaces\fP(7). .RE .sp \fBPID\-Namensraum\fP .RS 4 Kindprozesse erhalten einen eigenen Satz an PID\-auf\-Prozess\-Abbildungen separat vom \fBnsenter\fP−Prozess. \fBnsenter\fP ruft standardmäßig »fork« auf, wenn in den PID\-Namensraum gewechselt wird, so dass das neue Programm und dessen Kinder einen gemeinsamen Namensraum haben und füreinander sichtbar sind. Wenn \fB\-\-no\-fork\fP verwendet wird, wird das neue Programm ohne vorheriges Forken ausgeführt. Für weitere Details, siehe \fBpid_namespaces\fP(7). .RE .sp \fBBenutzer\-Namensraum\fP .RS 4 Der Prozess wird über eine eindeutige Gruppe an UIDs, GIDS und Capabilities verfügen. Für weitere Details siehe \fBuser_namespaces\fP(7). .RE .sp \fBCgroup\-Namensraum\fP .RS 4 Der Prozess wird über einen virtualisierten Blick auf \fI/proc/self/cgroup\fP verfügen und neue Cgroup\-Einhängungen werden ihre Wurzel in der Wurzel der Cgroup\-Namensraum\-Wurzel haben. Für weitere Details siehe \fBcgroup_namespaces\fP(7). .RE .sp \fBZeit\-Namensraum\fP .RS 4 Der Prozess kann eine abweichende Sicht auf \fBCLOCK_MONOTONIC\fP und/oder \fBCLOCK_BOOTTIME\fP haben, was mittels \fI/proc/self/timens_offsets\fP geändert werden kann. Für weitere Details, siehe \fBtime_namespaces\fP(7). .RE .SH "OPTIONEN" .sp Verschiedene der unten beschriebenen Optionen, die sich auf Namensräume beziehen, akzeptieren ein optionales Argument \fIDatei\fP. Dies sollte eine aus den in \fBnamespaces\fP(7) beschriebenen Dateien unter \fI/proc/[PID]/ns/\fP oder der Pfadname einer Bind\-Einhängung, die auf einer dieser Dateien erstellt wurde, sein. .sp \fB\-a\fP, \fB\-\-all\fP .RS 4 Wechselt in alle Namensräume des Zielprozesses mittels der Vorgabe\-Namensräumepfade \fI/proc/[PID]/ns/*\fP. Die Vorgabepfade zum Zielprozessnamensraum können mittels namensraumspezifischer Optionen (z.B. \fB\-\-all \-\-mount\fP=[\fIPfad\fP]) überschrieben werden. .sp Die Benutzer\-Namensräume werden ignoriert, falls sie mit dem Namensraum des aktuell Aufrufenden identisch sind. Es verhindert einen Aufrufenden, der Capabilities abgegeben hat, diese Capabilities mit einem Aufruf von setns() wiederzuerlangen. Siehe \fBsetns\fP(2) für weitere Details. .RE .sp \fB\-t\fP, \fB\-\-target\fP \fIPID\fP .RS 4 gibt einen Zielprozess an, aus dem die Kontexte ermittelt werden sollen. Die Pfade der durch die \fIPID\fP anzugebenden Kontexte sind: .sp \fI/proc/pid/ns/mnt\fP .RS 4 der Einhänge\-Namensraum .RE .sp \fI/proc/pid/ns/uts\fP .RS 4 der UTS\-Namensraum .RE .sp \fI/proc/pid/ns/ipc\fP .RS 4 der IPC\-Namensraum .RE .sp \fI/proc/pid/ns/net\fP .RS 4 der Netzwerk\-Namensraum .RE .sp \fI/proc/pid/ns/pid\fP .RS 4 der PID\-Namensraum .RE .sp \fI/proc/pid/ns/user\fP .RS 4 der Benutzer\-Namensraum .RE .sp \fI/proc/pid/ns/cgroup\fP .RS 4 der Cgroup\-Namensraum .RE .sp \fI/proc/pid/ns/time\fP .RS 4 der Zeit\-Namensraum .RE .sp \fI/proc/pid/root\fP .RS 4 das Wurzelverzeichnis .RE .sp \fI/proc/pid/cwd\fP .RS 4 das Arbeitsverzeichnis .RE .RE .sp \fB\-m\fP, \fB\-\-mount\fP[=\fIDatei\fP] .RS 4 wechselt in den Einhänge\-Namensraum. Wenn keine \fIDatei\fP angegeben ist, wird in den Einhänge\-Namensraum der Zieldatei gewechselt. Wenn eine \fIDatei\fP angegeben ist, wird in den Einhänge\-Namensraum der angegebenen \fIDatei\fP gewechselt. .RE .sp \fB\-u\fP, \fB\-\-uts\fP[=\fIDatei\fP] .RS 4 wechselt in den UTS\-Namensraum. Wenn keine \fIDatei\fP angegeben ist, wird in den UTS\-Namensraum des Zielprozesses gewechselt. Wenn eine \fIDatei\fP angegeben ist, wird in den UTS\-Namensraum der angegebenen \fIDatei\fP gewechselt. .RE .sp \fB\-i\fP, \fB\-\-ipc\fP[=\fIDatei\fP] .RS 4 wechselt in den IPC\-Namensraum. Wenn keine \fIDatei\fP angegeben ist, wird in den IPC\-Namensraum des Zielprozesses gewechselt. Wenn eine \fIDatei\fP angegeben ist, wird in den IPC\-Namensraum der angegebenen \fIDatei\fP gewechselt. .RE .sp \fB\-n\fP, \fB\-\-net\fP[=\fIDatei\fP] .RS 4 wechselt in den Netzwerk\-Namensraum. Wenn keine \fIDatei\fP angegeben ist, wird in den Netzwerk\-Namensraum des Zielprozesses gewechselt. Wenn eine \fIDatei\fP angegeben ist, wird in den Netzwerk\-Namensraum der angegebenen \fIDatei\fP gewechselt. .RE .sp \fB\-p\fP, \fB\-\-pid\fP[=\fIDatei\fP] .RS 4 wechselt in den PID\-Namensraum. Wenn keine \fIDatei\fP angegeben ist, wird in den PID\-Namensraum des Zielprozesses gewechselt. Wenn eine \fIDatei\fP angegeben ist, wird in den PID\-Namensraum der angegebenen \fIDatei\fP gewechselt. .RE .sp \fB\-U\fP, \fB\-\-user\fP[=\fIDatei\fP] .RS 4 wechselt in den Benutzer\-Namensraum. Wenn keine \fIDatei\fP angegeben ist, wird in den Benutzer\-Namensraum des Zielprozesses gewechselt. Wenn eine \fIDatei\fP angegeben ist, wird in den Benutzer\-Namensraum der angegebenen \fIDatei\fP gewechselt. .RE .sp \fB\-\-user\-parent\fP .RS 4 Enter the parent user namespace. Parent user namespace will be acquired from any other enabled namespace. If combined with \fB\-\-user\fP option the parent user namespace will be fetched from the user namespace and replace it. .RE .sp \fB\-C\fP, \fB\-\-cgroup\fP[=\fIDatei\fP] .RS 4 wechselt in den Cgroup\-Namensraum. Wenn keine \fIDatei\fP angegeben ist, wird in den Cgroup\-Namensraum des Zielprozesses gewechselt. Wenn eine \fIDatei\fP angegeben ist, wird in den Cgroup\-Namensraum der angegebenen \fIDatei\fP gewechselt. .RE .sp \fB\-T\fP, \fB\-\-time\fP[=\fIDatei\fP] .RS 4 wechselt in den Zeit\-Namensraum. Wenn keine \fIDatei\fP angegeben ist, wird in den Zeit\-Namensraum des Zielprozesses gewechselt. Wenn eine \fIDatei\fP angegeben ist, wird in den Zeit\-Namensraum der angegebenen \fIDatei\fP gewechselt. .RE .sp \fB\-G\fP, \fB\-\-setgid\fP \fIGID\fP .RS 4 legt die Gruppenkennung fest, die in dem Benutzer\-Namensraum verwendet wird, in den gewechselt werden soll und überspringt zusätzliche Gruppen. \fBnsenter\fP(1) setzt stets die GID für Benutzer\-Namensräume, die Voreinstellung ist 0. Falls das Argument »follow« angegeben ist, wird die Gruppenkennung des Zielprozesses verwendet. .RE .sp \fB\-S\fP, \fB\-\-setuid\fP \fIUID\fP .RS 4 legt die Benutzerkennung fest, die in dem Benutzer\-Namensraum verwendet wird, in den gewechselt werden soll. \fBnsenter\fP(1) setzt stets die UID für Benutzer\-Namensräume, die Voreinstellung ist 0. Falls das Argument »follow« angegeben ist, wird die Benutzerkennung des Zielprozesses verwendet. .RE .sp \fB\-\-keep\-caps\fP .RS 4 stellt bei übergebener Option \fB\-\-user\fP sicher, dass die im Benutzernamensraum gewährten Capabilities im Kindprozess erhalten bleiben. .RE .sp \fB\-\-preserve\-credentials\fP .RS 4 lässt die UID und GID unverändert, wenn in den Benutzer\-Namensraum gewechselt wird. In der Voreinstellung werden zusätzliche Gruppen übersprungen und die GID und UID auf 0 gesetzt. .RE .sp \fB\-r\fP, \fB\-\-root\fP[=\fIVerzeichnis\fP] .RS 4 legt das Wurzelverzeichnis fest. Wenn kein Verzeichnis angegeben ist, wird in das Wurzelverzeichnis des Zielprozesses gewechselt. Wenn ein Verzeichnis angegeben ist, wird es zum neuen Wurzelverzeichnis. Das angegebene \fIVerzeichnis\fP ist geöffnet, bevor es in die angegebenen Namensräume wechselt. .RE .sp \fB\-w\fP, \fB\-\-wd\fP[=\fIVerzeichnis\fP] .RS 4 legt das Arbeitsverzeichnis fest. Wenn kein Verzeichnis angegeben ist, wird in das Arbeitsverzeichnis des Zielprozesses gewechselt. Wenn ein Verzeichnis angegeben ist, wird es zum neuen Arbeitsverzeichnis. Das angegebene \fIVerzeichnis\fP ist geöffnet, bevor es in die angegebenen Namensräume wechselt, was bedeutet, dass das angegebene Verzeichnis als »Tunnel« zum aktuellen Namensraum fungiert. Siehe auch \fB\-\-wdns\fP. .RE .sp \fB\-W\fP, \fB\-\-wdns\fP[=\fIVerzeichnis\fP] .RS 4 legt das Arbeitsverzeichnis fest. Das \fIVerzeichnis\fP ist nach dem Wechsel in die angeforderten Namensräume und nach dem \fBchroot\fP(2)\-Aufruf geöffnet. Die Optionen \fB\-\-wd\fP und \fB\-\-wdns\fP schließen sich gegenseitig aus. .RE .sp \fB\-e\fP, \fB\-\-env\fP .RS 4 übergibt die Umgebungsvariablen des Zielprozesses an den neu zu erzeugenden Prozess. Falls diese Option nicht angegeben ist, bleiben die Umgebungsvariablen die gleichen wie im aktuellen Namensraum. .RE .sp \fB\-F\fP, \fB\-\-no\-fork\fP .RS 4 veranlasst, dass »fork« vor dem Ausführen des angegebenen Programms nicht aufgerufen wird. In der Voreinstellung wird \fBfork\fP durch \fBnsenter\fP beim Wechsel in den PID\-Namensraum aufgerufen, so dass sich die jeweiligen Kindprozesse auch im neuen PID\-Namensraum befinden. .RE .sp \fB\-Z\fP, \fB\-\-follow\-context\fP .RS 4 setzt den SELinux\-Kontext, der für die Ausführung eines neuen Prozesses entsprechend des bereits durch \fB\-\-target\fP PID angegebenen Prozesses verwandt wird (Util−Linux muss mit SELinux\-Unterstützung kompiliert worden sein, damit diese Option zur Verfügung steht). .RE .sp \fB\-c\fP, \fB\-\-join\-cgroup\fP .RS 4 fügt den initiierten Prozess zur Cgroup des Zielprozesses hinzu. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 zeigt einen Hilfetext an und beendet das Programm. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 zeigt Versionsinformationen an und beendet das Programm. .RE .SH "ANMERKUNGEN" .sp The \fB\-\-user\-parent\fP option requires Linux 4.9 or higher, older kernels will raise inappropriate ioctl for device error. .SH "AUTOREN" .sp .MTO "biederm\(atxmission.com" "Eric Biederman" "," .MTO "kzak\(atredhat.com" "Karel Zak" "" .SH "SIEHE AUCH" .sp \fBclone\fP(2), \fBsetns\fP(2), \fBnamespaces\fP(7) .SH "FEHLER MELDEN" .sp Nutzen Sie zum Melden von Fehlern das Fehlererfassungssystem auf \c .URL "https://github.com/util\-linux/util\-linux/issues" "" "." .SH "VERFÜGBARKEIT" .sp Der Befehl \fBnsenter\fP ist Teil des Pakets util\-linux, welches aus dem \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "Linux\-Kernel\-Archiv" "" heruntergeladen werden kann.