NSENTER(1) Comenzi utilizator NSENTER(1) NUME nsenter - ruleaza programul in diferite spaii de nume REZUMAT nsenter [opiuni] [program [argumente]] DESCRIERE Comanda nsenter executa programul in spaiul (spaiile) de nume care sunt specificate in opiunile liniei de comanda (descrise mai jos). Daca program nu este indicat, se executa <<${SHELL}>> (implicit: /bin/sh). Spaiile de nume care pot fi introduse sunt: mount namespace Montarea i demontarea sistemelor de fiiere nu va afecta restul sistemului, cu excepia sistemelor de fiiere care sunt marcate in mod explicit ca fiind partajate (cu mount --make-shared; a se vedea /proc/self/mountinfo pentru fanionul shared). Pentru mai multe detalii, consultai mount_namespaces(7) i discuia despre fanionul CLONE_NEWNS din clone(2). UTS namespace Stabilirea numelui de gazda sau a numelui de domeniu nu va afecta restul sistemului. Pentru mai multe detalii, consultai uts_namespaces(7). IPC namespace Procesul va avea un spaiu de nume independent pentru cozile de mesaje POSIX, precum i pentru cozile de mesaje System V, seturile de semafoare i segmentele de memorie partajata. Pentru mai multe detalii, consultai ipc_namespaces(7). network namespace Procesul va avea stive IPv4 i IPv6 independente, tabele de direcionare IP, reguli de paravan de protecie, arborii de directoare /proc/net i /sys/class/net, socluri etc. Pentru mai multe detalii, consultai network_namespaces(7). PID namespace Procesele-copil vor avea un set de corespondene intre PID i proces separat de procesul nsenter. nsenter va crea implicit o bifurcaie in cazul in care se schimba spaiul de nume PID, astfel incat noul program i procesele-copil ale acestuia sa imparta acelai spaiu de nume PID i sa fie vizibili unul pentru celalalt. Daca se utilizeaza --no-fork, noul program va fi executat fara a se ramifica. Pentru mai multe detalii, a se vedea pid_namespaces(7). user namespace Procesul va avea un set distinct de UID-uri, GID-uri i capacitai. Pentru mai multe detalii, a se vedea user_namespaces(7). cgroup namespace Procesul va avea o vizualizare virtualizata a /proc/self/cgroup, iar noile montari cgroup vor fi inradacinate la radacina spaiului de nume cgroup. Pentru mai multe detalii, consultai cgroup_namespaces(7). time namespace Procesul poate avea o viziune distincta asupra CLOCK_MONOTONIC i/sau CLOCK_BOOTTIME, care poate fi modificata cu ajutorul /proc/self/timens_offsets. Pentru mai multe detalii, a se vedea time_namespaces(7). OPIUNI Diverse dintre opiunile de mai jos care se refera la spaiile de nume accepta un argument opional fiier. Acesta ar trebui sa fie unul dintre fiierele /proc/[pid]/ns/* descrise in namespaces(7) sau numele de ruta al unei montari de legatura care a fost creata pe unul dintre aceste fiiere. -a, --all Introduce toate spaiile de nume ale procesului inta prin rutele implicite ale spaiilor de nume /proc/[pid]/ns/*. Rutele implicite catre spaiile de nume ale procesului inta pot fi suprascrise de opiuni specifice spaiului de nume (de exemplu, --all --mount=[path]). Spaiul de nume de utilizator va fi ignorat daca este acelai cu spaiul de nume de utilizator curent al apelantului. Aceasta impiedica un apelant care a renunat la capacitai sa le recupereze prin intermediul unui apel la setns(). A se vedea setns(2) pentru mai multe detalii. -t, --target PID Specifica un proces inta de la care se obin contexte. Rutele catre contextele specificate de pid sunt: /proc/pid/ns/mnt spaiul de nume de montare /proc/pid/ns/uts spaiul de nume UTS /proc/pid/ns/ipc spaiul de nume IPC /proc/pid/ns/net spaiul de nume de reea /proc/pid/ns/pid spaiul de nume PID /proc/pid/ns/user spaiul de nume de utilizator /proc/pid/ns/cgroup spaiul de nume cgroup /proc/pid/ns/time spaiul de nume de timp /proc/pid/root directorul radacina /proc/pid/cwd respectiv directorul de lucru -m, --mount[=fiier] Introduce spaiul de nume de montare. Daca nu se specifica niciun fiier, introduce spaiul de nume de montare al procesului inta. Daca se specifica fiier, se introduce spaiul de nume de montare specificat de fiier. -u, --uts[=fiier] Introduce spaiul de nume UTS. Daca nu se specifica niciun fiier, introduce spaiul de nume UTS al procesului inta. Daca se specifica fiier, se introduce spaiul de nume UTS specificat de fiier. -i, --ipc[=fiier] Introduce spaiul de nume IPC. Daca nu se specifica niciun fiier, introduce spaiul de nume IPC al procesului inta. Daca se specifica fiier, se introduce spaiul de nume IPC specificat de fiier. -n, --net[=fiier] Introduce spaiul de nume de reea. Daca nu se specifica niciun fiier, introduce spaiul de nume de reea al procesului inta. Daca se specifica fiier, se introduce spaiul de nume de reea specificat de fiier. -N, --net-socket fd Introduce spaiul de nume de reea al soclului procesului inta. Necesita specificarea procesului --target. Acceptata incepand cu Linux 5.6. -p, --pid[=fiier] Introduce spaiul de nume PID. Daca nu se specifica niciun fiier, introduce spaiul de nume PID al procesului inta. Daca se specifica fiier, introduce spaiul de nume PID specificat de fiier. -U, --user[=fiier] Introduce spaiul de nume de utilizator. Daca nu este specificat niciun fiier, introduce spaiul de nume de utilizator al procesului inta. Daca se specifica fiier, se introduce spaiul de nume de utilizator specificat de fiier. A se vedea, de asemenea, opiunile --setuid i --setgid. --user-parent Introduce spaiul de nume al utilizatorului parinte. Spaiul de nume de utilizator parinte va fi preluat de la orice alt spaiu de nume activat. Daca este combinata cu opiunea --user, spaiul de nume al utilizatorului parinte va fi preluat din spaiul de nume al utilizatorului i il va inlocui. -C, --cgroup[=fiier] Introduce spaiul de nume cgroup. Daca nu se specifica niciun fiier, introduce spaiul de nume cgroup al procesului inta. Daca este specificat fiier, se introduce spaiul de nume al cgroup specificat de fiier. -T, --time[=fiier] Introduce spaiul de nume de timp. Daca nu se specifica niciun fiier, introduce spaiul de nume de timp al procesului inta. Daca se specifica fiier, se introduce spaiul de nume de timp specificat de fiier. -G, --setgid gid Stabilete ID-ul grupului care va fi utilizat in spaiul de nume introdus i se renuna la grupurile suplimentare. nsenter stabilete intotdeauna GID pentru spaiile de nume de utilizator, valoarea implicita este 0. Daca se specifica argumentul ,,follow", se utilizeaza GID-ul procesului inta. -S, --setuid uid Stabilete ID-ul utilizatorului care va fi utilizat in spaiul de nume introdus. nsenter stabilete intotdeauna UID pentru spaiile de nume de utilizator, valoarea implicita este 0. Daca se specifica argumentul ,,follow", se utilizeaza UID-ul procesului inta. --keep-caps In cazul in care se ofera opiunea --user, se asigura ca capacitaile acordate in spaiul de nume al utilizatorului sunt pastrate in procesul-copil. --preserve-credentials Nu modifica UID i GID atunci cand intra in spaiul de nume de utilizator. Valoarea implicita este de a renuna la grupurile suplimentare i de a stabili GID i UID la 0. -r, --root[=director] Stabilete directorul radacina. Daca nu se specifica niciun director, se stabilete directorul radacina la directorul radacina al procesului inta. Daca este specificat directorul, se stabilete directorul radacina la directorul specificat. Se deschide directorul specificat inainte de a trece la spaiile de nume solicitate. -w, --wd[=director] Stabilete directorul de lucru. Daca nu se specifica niciun director, se stabilete directorul de lucru la directorul de lucru al procesului inta. Daca se specifica directorul, se stabilete directorul de lucru la directorul specificat. Directorul director specificat este deschis inainte de a trece la spaiile de nume solicitate, ceea ce inseamna ca directorul specificat funcioneaza ca un ,,tunel" catre spaiul de nume curent. A se vedea, de asemenea, --wdns. -W, --wdns[=director] Stabilete directorul de lucru. directorul este deschis dupa trecerea la spaiile de nume solicitate i dupa apelul chroot(2). Opiunile --wd i --wdns se exclud reciproc. -e, --env Transfera variabilele de mediu de la procesul inta la noul proces care se creeaza. Daca aceasta opiune nu este furnizata, variabilele de mediu vor ramane aceleai ca in spaiul de nume curent. -F, --no-fork Nu creeaza o bifurcaie inainte de a executa programul specificat. In mod implicit, atunci cand se intra intr-un spaiu de nume PID, nsenter apeleaza fork inainte de a apela exec, astfel incat toate procesele-copil sa fie, de asemenea, in spaiul de nume PID nou intrat. -Z, --follow-context Stabilete contextul de securitate SELinux utilizat pentru executarea unui nou proces in funcie de procesul deja in desfaurare specificat prin --target PID (util-linux trebuie sa fie compilat cu suport SELinux, altfel opiunea nu este disponibila). -c, --join-cgroup Adauga procesul iniiat in cgroup-ul procesului inta. -h, --help Afieaza acest mesaj de ajutor i iese. -V, --version Afieaza versiunea i iese. NOTE Opiunea --user-parent necesita Linux 4.9 sau o versiune mai recenta, nucleele mai vechi vor genera un ioctl necorespunzator pentru erori de dispozitiv. AUTORI Eric Biederman , Karel Zak CONSULTAI I clone(2), setns(2), namespaces(7) RAPORTAREA ERORILOR Pentru rapoarte de eroare, folosii sistemul de urmarire al erorilor . DISPONIBILITATE Comanda nsenter face parte din pachetul util-linux care poate fi descarcat de la Linux Kernel Archive . util-linux 2.41 2025-03-29 NSENTER(1)