WSL에 설치된 배포판에서 루트 PID 네임스페이스를 어떻게 입력하나요?

WSL에 설치된 배포판에서 루트 PID 네임스페이스를 어떻게 입력하나요?

저는 WSL 2(Linux v2)용 Windows 하위 시스템을 사용하려고 시도했으며 FAQ에서 모든 배포판이 Hyper-V의 동일한 가상 머신(VM)에 설치되고 격리를 위해 공간을 사용하여 이름이 지정된다는 사실을 알게 되었습니다. 이는 Ubuntu 및 Debian을 부팅하고 다음 명령을 실행하여 활성 가상 머신 목록을 확인하여 확인할 수 있습니다.

PS C:\Users\admin> hcsdiag list
8B389621-7C83-484C-8F24-5CAEDA29AA49
    VM,                         Running, 8B389621-7C83-484C-8F24-5CAEDA29AA49, WSL

이러한 배포판이 네임스페이스로 구분되어 있는 경우 두 배포판에서 동일한 루트 네임스페이스를 사용할 수 없는 이유는 무엇입니까 nsenter?

다음은 PID 1을 사용하는 Ubuntu 배포판에서 실행되는 프로세스입니다 /init.

root@DESKTOP-5VNI36Q:~# ps -Af
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 14:05 ?        00:00:00 /init
root         7     1  0 14:05 ?        00:00:00 /init
root         8     7  0 14:05 ?        00:00:00 /init
nlykkei      9     8  0 14:05 pts/0    00:00:00 -bash
root        52     9  0 14:06 pts/0    00:00:00 sudo su -
root        53    52  0 14:06 pts/0    00:00:00 su -
root        54    53  0 14:06 pts/0    00:00:00 -bash
root        70    54  0 14:06 pts/0    00:00:00 ps -Af

Ubuntu 배포판에서 PID 1에 대한 모든 네임스페이스를 입력하면 원래와 동일한 PID 네임스페이스가 유지되어 더 이상 진행할 수 없습니다(아래 참조).

root@DESKTOP-5VNI36Q:~# nsenter-t1 -a

반대로, Debian 배포판에서 PID 1에 대한 모든 네임스페이스를 입력하면 진행할 수 없으며 원래 생성한 것과 동일한 PID 네임스페이스에 갇히게 됩니다. 또한 PID 네임스페이스는 Ubuntu PID 네임스페이스와 다릅니다.

우분투분배하다:

root@DESKTOP-5VNI36Q:~# ls -la /proc/self/ns
total 0
dr-x--x--x 2 root root 0 Oct 20 14:06 .
dr-xr-xr-x 9 root root 0 Oct 20 14:06 ..
lrwxrwxrwx 1 root root 0 Oct 20 14:06 cgroup -> 'cgroup:[4026531835]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 ipc -> 'ipc:[4026532188]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 mnt -> 'mnt:[4026532186]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 net -> 'net:[4026531992]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 pid -> 'pid:[4026532189]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 pid_for_children -> 'pid:[4026532189]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 user -> 'user:[4026531837]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 uts -> 'uts:[4026532187]'
root@DESKTOP-5VNI36Q:~# ls -la /proc/1/ns
total 0
dr-x--x--x 2 root root 0 Oct 20 14:05 .
dr-xr-xr-x 9 root root 0 Oct 20 14:05 ..
lrwxrwxrwx 1 root root 0 Oct 20 14:06 cgroup -> 'cgroup:[4026531835]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 ipc -> 'ipc:[4026532188]'
lrwxrwxrwx 1 root root 0 Oct 20 14:05 mnt -> 'mnt:[4026532186]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 net -> 'net:[4026531992]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 pid -> 'pid:[4026532189]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 pid_for_children -> 'pid:[4026532189]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 user -> 'user:[4026531837]'
lrwxrwxrwx 1 root root 0 Oct 20 14:06 uts -> 'uts:[4026532187]'

더반분배하다:

root@DESKTOP-5VNI36Q:~# ls -la /proc/self/ns
total 0
dr-x--x--x 2 root root 0 Oct 20 14:10 .
dr-xr-xr-x 9 root root 0 Oct 20 14:10 ..
lrwxrwxrwx 1 root root 0 Oct 20 14:10 cgroup -> 'cgroup:[4026531835]'
lrwxrwxrwx 1 root root 0 Oct 20 14:10 ipc -> 'ipc:[4026532203]'
lrwxrwxrwx 1 root root 0 Oct 20 14:10 mnt -> 'mnt:[4026532211]'
lrwxrwxrwx 1 root root 0 Oct 20 14:10 net -> 'net:[4026531992]'
lrwxrwxrwx 1 root root 0 Oct 20 14:10 pid -> 'pid:[4026532204]'
lrwxrwxrwx 1 root root 0 Oct 20 14:10 pid_for_children -> 'pid:[4026532204]'
lrwxrwxrwx 1 root root 0 Oct 20 14:10 user -> 'user:[4026531837]'
lrwxrwxrwx 1 root root 0 Oct 20 14:10 uts -> 'uts:[4026532202]'
root@DESKTOP-5VNI36Q:~# ls -la /proc/1/ns
total 0
dr-x--x--x 2 root root 0 Oct 20 12:04 .
dr-xr-xr-x 9 root root 0 Oct 20 11:17 ..
lrwxrwxrwx 1 root root 0 Oct 20 12:04 cgroup -> 'cgroup:[4026531835]'
lrwxrwxrwx 1 root root 0 Oct 20 12:04 ipc -> 'ipc:[4026532203]'
lrwxrwxrwx 1 root root 0 Oct 20 12:04 mnt -> 'mnt:[4026532201]'
lrwxrwxrwx 1 root root 0 Oct 20 12:04 net -> 'net:[4026531992]'
lrwxrwxrwx 1 root root 0 Oct 20 12:04 pid -> 'pid:[4026532204]'
lrwxrwxrwx 1 root root 0 Oct 20 14:10 pid_for_children -> 'pid:[4026532204]'
lrwxrwxrwx 1 root root 0 Oct 20 12:04 user -> 'user:[4026531837]'
lrwxrwxrwx 1 root root 0 Oct 20 12:04 uts -> 'uts:[4026532202]'

관련 정보