Provided by: util-linux-locales_2.41-4ubuntu3_all bug

BEZEICHNUNG

       nsenter - Programme in anderen Namensräumen ausführen

ÜBERSICHT

       nsenter [Optionen] [Programm [Argumente]]

BESCHREIBUNG

       Der Befehl nsenter führt das angegebene Programm im Namensraum oder den Namensräumen aus, der oder die in
       den Befehlszeilenoptionen angegeben sind (nachfolgend beschrieben). Falls kein Programm angegeben ist,
       dann wird »${SHELL}« ausgeführt (Vorgabe: /bin/sh).

       Wechselfähige Namensräume sind:

       Einhänge-Namensraum
           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 mount --make-shared; siehe
           /proc/self/mountinfo für den Schalter shared). Für weitere Details siehe mount_namespaces(7) und die
           Diskussion des Schalters CLONE_NEWNS in clone(2).

       UTS-Namensraum
           Setzen des Rechner- oder Domain-Namens wird den Rest des Systems nicht betreffen. Für weitere Details
           siehe uts_namespaces(7).

       IPC-Namensraum
           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 ipc_namespaces(7).

       Netzwerk-Namensraum
           Der Prozess erhält unabhängige IPv4- und IPv6-Stapel, IP-Routing-Tabellen, Firewall-Regeln, die
           Verzeichnisbäume /proc/net und /sys/class/net, Sockets usw. Für weitere Details siehe
           network_namespaces(7).

       PID-Namensraum
           Kindprozesse erhalten einen eigenen Satz an PID-auf-Prozess-Abbildungen separat vom nsenter−Prozess.
           nsenter 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
           --no-fork verwendet wird, wird das neue Programm ohne vorheriges Forken ausgeführt. Für weitere
           Details, siehe pid_namespaces(7).

       Benutzer-Namensraum
           Der Prozess wird über eine eindeutige Gruppe an UIDs, GIDS und Capabilities verfügen. Für weitere
           Details siehe user_namespaces(7).

       Cgroup-Namensraum
           Der Prozess wird über einen virtualisierten Blick auf /proc/self/cgroup verfügen und neue
           Cgroup-Einhängungen werden ihre Wurzel in der Wurzel der Cgroup-Namensraum-Wurzel haben. Für weitere
           Details siehe cgroup_namespaces(7).

       Zeit-Namensraum
           Der Prozess kann eine abweichende Sicht auf CLOCK_MONOTONIC und/oder CLOCK_BOOTTIME haben, was
           mittels /proc/self/timens_offsets geändert werden kann. Für weitere Details, siehe
           time_namespaces(7).

OPTIONEN

       Verschiedene der unten beschriebenen Optionen, die sich auf Namensräume beziehen, akzeptieren ein
       optionales Argument Datei. Dies sollte eine aus den in namespaces(7) beschriebenen Dateien unter
       /proc/[PID]/ns/ oder der Pfadname einer Bind-Einhängung, die auf einer dieser Dateien erstellt wurde,
       sein.

       -a, --all
           Wechselt in alle Namensräume des Zielprozesses mittels der Vorgabe-Namensräumepfade /proc/[PID]/ns/*.
           Die Vorgabepfade zum Zielprozessnamensraum können mittels namensraumspezifischer Optionen (z.B. --all
           --mount=[Pfad]) überschrieben werden.

           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 setns(2) für weitere Details.

       -t, --target PID
           gibt einen Zielprozess an, aus dem die Kontexte ermittelt werden sollen. Die Pfade der durch die PID
           anzugebenden Kontexte sind:

           /proc/pid/ns/mnt
               der Einhänge-Namensraum

           /proc/pid/ns/uts
               der UTS-Namensraum

           /proc/pid/ns/ipc
               der IPC-Namensraum

           /proc/pid/ns/net
               der Netzwerk-Namensraum

           /proc/pid/ns/pid
               der PID-Namensraum

           /proc/pid/ns/user
               der Benutzer-Namensraum

           /proc/pid/ns/cgroup
               der Cgroup-Namensraum

           /proc/pid/ns/time
               der Zeit-Namensraum

           /proc/pid/root
               das Wurzelverzeichnis

           /proc/pid/cwd
               das Arbeitsverzeichnis

       -m, --mount[=file]
           wechselt in den Einhänge-Namensraum. Wenn keine Datei angegeben ist, wird in den Einhänge-Namensraum
           der Zieldatei gewechselt. Wenn eine Datei angegeben ist, wird in den Einhänge-Namensraum der
           angegebenen Datei gewechselt.

       -u, --uts[=file]
           wechselt in den UTS-Namensraum. Wenn keine Datei angegeben ist, wird in den UTS-Namensraum des
           Zielprozesses gewechselt. Wenn eine Datei angegeben ist, wird in den UTS-Namensraum der angegebenen
           Datei gewechselt.

       -i, --ipc[=file]
           wechselt in den IPC-Namensraum. Wenn keine Datei angegeben ist, wird in den IPC-Namensraum des
           Zielprozesses gewechselt. Wenn eine Datei angegeben ist, wird in den IPC-Namensraum der angegebenen
           Datei gewechselt.

       -n, --net[=file]
           wechselt in den Netzwerk-Namensraum. Wenn keine Datei angegeben ist, wird in den Netzwerk-Namensraum
           des Zielprozesses gewechselt. Wenn eine Datei angegeben ist, wird in den Netzwerk-Namensraum der
           angegebenen Datei gewechselt.

       -N, --net-socket fd
           Enter the network namespace of the target process’s socket. It requires --target process specified.
           Supported since Linux 5.6.

       -p, --pid[=file]
           wechselt in den PID-Namensraum. Wenn keine Datei angegeben ist, wird in den PID-Namensraum des
           Zielprozesses gewechselt. Wenn eine Datei angegeben ist, wird in den PID-Namensraum der angegebenen
           Datei gewechselt.

       -U, --user[=file]
           wechselt in den Benutzer-Namensraum. Wenn keine Datei angegeben ist, wird in den Benutzer-Namensraum
           des Zielprozesses gewechselt. Wenn eine Datei angegeben ist, wird in den Benutzer-Namensraum der
           angegebenen Datei gewechselt.

       --user-parent
           Enter the parent user namespace. Parent user namespace will be acquired from any other enabled
           namespace. If combined with --user option the parent user namespace will be fetched from the user
           namespace and replace it.

       -C, --cgroup[=file]
           wechselt in den Cgroup-Namensraum. Wenn keine Datei angegeben ist, wird in den Cgroup-Namensraum des
           Zielprozesses gewechselt. Wenn eine Datei angegeben ist, wird in den Cgroup-Namensraum der
           angegebenen Datei gewechselt.

       -T, --time[=file]
           wechselt in den Zeit-Namensraum. Wenn keine Datei angegeben ist, wird in den Zeit-Namensraum des
           Zielprozesses gewechselt. Wenn eine Datei angegeben ist, wird in den Zeit-Namensraum der angegebenen
           Datei gewechselt.

       -G, --setgid GID
           legt die Gruppenkennung fest, die in dem Benutzer-Namensraum verwendet wird, in den gewechselt werden
           soll und überspringt zusätzliche Gruppen. nsenter(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.

       -S, --setuid UID
           legt die Benutzerkennung fest, die in dem Benutzer-Namensraum verwendet wird, in den gewechselt
           werden soll. nsenter(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.

       --keep-caps
           stellt bei übergebener Option --user sicher, dass die im Benutzernamensraum gewährten Capabilities im
           Kindprozess erhalten bleiben.

       --preserve-credentials
           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.

       -r, --root[=directory]
           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 Verzeichnis ist geöffnet, bevor es in die angegebenen Namensräume
           wechselt.

       -w, --wd[=directory]
           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 Verzeichnis 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 --wdns.

       -W, --wdns[=directory]
           legt das Arbeitsverzeichnis fest. Das Verzeichnis ist nach dem Wechsel in die angeforderten
           Namensräume und nach dem chroot(2)-Aufruf geöffnet. Die Optionen --wd und --wdns schließen sich
           gegenseitig aus.

       -e, --env
           ü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.

       -F, --no-fork
           veranlasst, dass »fork« vor dem Ausführen des angegebenen Programms nicht aufgerufen wird. In der
           Voreinstellung wird fork durch nsenter beim Wechsel in den PID-Namensraum aufgerufen, so dass sich
           die jeweiligen Kindprozesse auch im neuen PID-Namensraum befinden.

       -Z, --follow-context
           setzt den SELinux-Kontext, der für die Ausführung eines neuen Prozesses entsprechend des bereits
           durch --target PID angegebenen Prozesses verwendet wird (Util−Linux muss mit SELinux-Unterstützung
           kompiliert worden sein, damit diese Option zur Verfügung steht).

       -c, --join-cgroup
           fügt den initiierten Prozess zur Cgroup des Zielprozesses hinzu.

       -h, --help
           zeigt einen Hilfetext an und beendet das Programm.

       -V, --version
           Display version and exit.

ANMERKUNGEN

       The --user-parent option requires Linux 4.9 or higher, older kernels will raise inappropriate ioctl for
       device error.

AUTOREN

       Eric Biederman <biederm@xmission.com>, Karel Zak <kzak@redhat.com>

SIEHE AUCH

       clone(2), setns(2), namespaces(7)

FEHLER MELDEN

       For bug reports, use the issue tracker <https://github.com/util-linux/util-linux/issues>.

VERFÜGBARKEIT

       Der Befehl nsenter ist Teil des Pakets util-linux, welches aus dem Linux-Kernel-Archiv
       <https://www.kernel.org/pub/linux/utils/util-linux/> heruntergeladen werden kann.

util-linux 2.41                                    2025-07-02                                         NSENTER(1)