ОПИС¶
Програма
nsenter виконує
програму
у
просторах
назв, які
вказано у
параметрах
рядка
команди
(описаних
нижче). Якщо
програму
не задано,
буде
запущено
«${SHELL}» (типово,
/bin/sh).
Можливий
вхід до
таких
просторів
назв:
mount namespace
Монтування
і
демонтування
файлових
систем не
впливає на
решту
системи,
окрім
файлових
систем,
якщо явно
позначено
як спільні
(за
допомогою
mount --make-shared; див.
/proc/self/mountinfo щодо
прапорця
shared). Щодо
подробиць,
див.
mount_namespaces(7) і
обговорення
прапорця
CLONE_NEWNS у
підручнику
з
clone(2).
UTS namespace
Встановлення
назви
вузла або
назви
домену не
стосуватиметься
решти
системи.
Щоб
дізнатися
більше, див.
uts_namespaces(7).
IPC namespace
Процес
матиме
незалежний
простір
назв для
черги
повідомлень
POSIX, а також
черг
повідомлень
System V, наборів
семафорів
та
сегментів
спільної
пам’яті.
Щоб
дізнатися
більше,
ознайомтеся
зі
сторінкою
підручника
ipc_namespaces(7).
network namespace
Процес
матиме
незалежні
стеки IPv4 і IPv6,
таблиці
IP-маршрутизації,
правила
брандмауера,
ієрархії
каталогів
/proc/net і
/sys/class/net,
сокети
тощо. Щоб
дізнатися
більше, див.
network_namespaces(7).
PID namespace
Дочірні
процеси
матимуть
окремий
набір PID для
прив’язок
процесів
щодо
процесу
nsenter.
nsenter, типово,
виконає
відгалуження
при зміні
простору
назв PID, отже,
нова
програма і
її дочірні
процеси
матимуть
спільний
простір
назв PID, який
буде
видимим
для
кожного з
них. Якщо
використано
--no-fork, для
нової
програми
буде
використано
exec без
відгалуження.
Щоб
дізнатися
більше,
ознайомтеся
зі
сторінкою
підручника
щодо
pid_namespaces(7).
user namespace
Процес
матиме
окремий
набір UID, GID і
можливостей.
Щоб
дізнатися
більше,
ознайомтеся
зі
сторінкою
підручника
щодо
user_namespaces(7).
cgroup namespace
Процес
матиме
віртуалізований
перегляд
/proc/self/cgroup і нові
монтування
cgroup матимуть
корінь у
корені cgroup
простору
назв. Щоб
дізнатися
більше,
ознайомтеся
зі
сторінкою
підручника
щодо
cgroup_namespaces(7).
time namespace
Процес
може мати
окремий
перегляд
CLOCK_MONOTONIC і/або
CLOCK_BOOTTIME, що може
бути
змінено за
допомогою
/proc/self/timens_offsets. Щоб
дізнатися
більше,
ознайомтеся
зі
сторінкою
підручника
щодо
time_namespaces(7).
ПАРАМЕТРИ¶
До різних
параметрів,
описаних
нижче,
таких, що
стосуються
просторів
назв,
додають
аргумент
файл. Це
має бути
один з
файлів /proc/[pid]/ns/*,
які
описано на
сторінці
підручника
щодо namespaces(7),
або шлях
монтування
з
прив’язкою,
яке було
створено
для одного
з цих
файлів.
-a, --all
Увійти
до усіх
просторів
назв
процесу
призначення
за
типовими
шляхами
простору
назв
/proc/[pid]/ns/*.
Типові
шляхи до
просторів
назв
призначення
може бути
перезаписано
певними
параметрами
простору
назв
(наприклад,
--all --mount=[
шлях]).
Простір
назв
користувача
буде
проігноровано,
якщо він
збігається
із
простором
назв
поточного
користувача
засобу
виклику. Це
запобігає
повторному
набуттю
прав
доступу
засобу
виклику,
який
скинув
права
доступу за
допомогою
виклику setns().
Див. setns(2), щоб
дізнатися
більше.
-t, --target PID
Вказати
цільовий
процес для
отримання
контексту.
Шляхами до
контексту,
що
задається
pid, є такі:
/proc/pid/ns/mnt
простір
назв
монтування
/proc/pid/ns/uts
простір
назв UTS
/proc/pid/ns/ipc
простір
назв IPC
/proc/pid/ns/net
простір
назв
мережі
/proc/pid/ns/pid
простір
назв PID
/proc/pid/ns/user
простір
назв
користувача
/proc/pid/ns/cgroup
простір
назв cgroup
/proc/pid/ns/time
простір
назв часу
/proc/pid/root
кореневий
каталог
/proc/pid/cwd
відповідний
робочий
каталог
-m,
--mount[=файл]
Увійти
до
простору
назв mount. Якщо
файл не
вказано,
увійти до
простору
назв mount
цільового
процесу.
Якщо
вказано
файл,
увійти до
простору
назв mount, який
вказано
файлом.
-u,
--uts[=файл]
Увійти
до
простору
назв UTS. Якщо
файл не
вказано,
увійти до
простору
назв UTS
цільового
процесу.
Якщо
вказано
файл,
увійти до
простору
назв UTS, який
вказано
файлом.
-i,
--ipc[=файл]
Увійти
до
простору
назв IPC. Якщо
файл не
вказано,
увійти до
простору
назв IPC
цільового
процесу.
Якщо
вказано
файл,
увійти до
простору
назв IPC, який
вказано
файлом.
-n,
--net[=файл]
Увійти
до
простору
назв
мережі.
Якщо файл
не вказано,
увійти до
простору
назв
мережі
цільового
процесу.
Якщо
вказано
файл,
увійти до
простору
назв
мережі,
який
вказано
файлом.
-p,
--pid[=файл]
Увійти
до
простору
назв PID. Якщо
файл не
вказано,
увійти до
простору
назв PID
цільового
процесу.
Якщо
вказано
файл,
увійти до
простору
назв PID, який
вказано
файлом.
-U,
--user[=файл]
Увійти
до
простору
назв
користувача.
Якщо файл
не вказано,
увійти до
простору
назв
користувача
цільового
процесу.
Якщо
вказано
файл,
увійти до
простору
назв
користувача,
який
вказано
файлом.
Див. також
параметри
--setuid і --setgid.
--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[=файл]
Увійти
до
простору
назв cgroup. Якщо
файл не
вказано,
увійти до
простору
назв cgroup
цільового
процесу.
Якщо
вказано
файл,
увійти до
простору
назв cgroup, який
вказано
файлом.
-T,
--time[=файл]
Увійти
до
простору
назв time. Якщо
файл не
вказано,
увійти до
простору
назв time
цільового
процесу.
Якщо
вказано
файл,
увійти до
простору
назв time, який
вказано
файлом.
-G, --setgid gid
Set the group ID which will be used in the entered
namespace and drop supplementary groups. nsenter always sets GID for
user namespaces, the default is 0. If the argument "follow" is
specified the GID of the target process is used.
-S, --setuid uid
Set the user ID which will be used in the entered
namespace. nsenter always sets UID for user namespaces, the default is
0. If the argument "follow" is specified the UID of the target
process is used.
--keep-caps
When the --user option is given, ensure that
capabilities granted in the user namespace are preserved in the child
process.
--preserve-credentials
Не
змінювати UID
і GID при вході
до
простору
назв
користувача.
Типовим є
скидання
додаткових
груп і
встановлення
для GID і UID
значень 0.
-r,
--root[=каталог]
Встановити
кореневий
каталог.
Якщо
каталог не
вказано,
для
кореневого
каталогу
буде
використано
кореневий
каталог
процесу
призначення.
Якщо
каталог
вказано,
встановити
для
кореневого
каталогу
вказаний
каталог.
Вказаний
каталог
буде
відкрито
до того, як
буде
виконано
перехід на
бажані
простори
назв.
-w,
--wd[=каталог]
Встановити
робочий
каталог.
Якщо
каталог не
вказано,
для
робочого
каталогу
буде
використано
робочий
каталог
процесу
призначення.
Якщо
каталог
вказано,
для
робочого
каталогу
буде
використано
вказаний
каталог.
Вказаний
каталог
буде
відкрито
до
перемикання
до бажаних
просторів
назв. Це
означає, що
вказаний
каталог
працюватиме
як
«тунель»
до
поточного
простору
назв. Див.
також --wdns.
-W,
--wdns[=каталог]
Встановити
робочий
каталог.
Каталог
буде
відкрито
після
перемикання
до бажаних
просторів
назв і
після
виклику
chroot(2).
Параметри
--wd і
--wdns є
взаємно
виключними.
-e, --env
Pass environment variables from the target process to the
new process being created. If this option is not provided, the environment
variables will remain the same as in the current namespace..
-F, --no-fork
Не
робити
відгалуження
до
виконання exec
для
вказаної
програми.
Типово, при
вході до
простору
назв PID nsenter
викликає fork
до виклику
exec, отже,
будь-який
дочірній
процес
також
потрапить
до нового
простору
назв PID, до
якого
здійснено
вхід.
-Z, --follow-context
Встановити
контекст
захисту SELinux,
який буде
використано
для
виконання
нового
процесу
відповідно
до вже
запущеного
процесу,
який
вказано за
допомогою PID
--target. (util-linux має
бути
зібрано з
підтримкою
SELinux, інакше
параметром
не можна
буде
скористатися.)
-c, --join-cgroup
Add the initiated process to the cgroup of the target
process.
-h, --help
Вивести
текст
довідки і
завершити
роботу.
-V, --version
Вивести
дані щодо
версії і
завершити
роботу.