다른 네임스페이스에서 프로세스 실행

다른 네임스페이스에서 프로세스 실행

다른 네트워크 네임스페이스에서 새 프로세스(예: xterm)를 실행하고 싶습니다. 이는 다음과 같이 수행할 수 있습니다.

sudo ip netns exec otherns sudo -u $USER xterm

sudo이 명령 은 약간 복잡해 보이며 ip마지막 sudo.xterm

새 네임스페이스에서 프로세스를 실행하는 더 직접적인 방법이 있나요?

네임스페이스를 전환하고, 권한과 사용자를 복원하고, 명령을 실행할 수 있는 작은(SUID 또는 기능 활성화) 바이너리를 작성하려고 하는데, 이를 수행할 수 있는 표준 도구가 이미 있어야 하지 않습니까?

이렇게 하면 다음과 같이 간단히 호출할 수 있습니다.

runns otherns xterm

답변1

--setuid선택 이 가능한가요?nenter(1)당신을 구하러 오셨나요? 좋다:

sudo nsenter --net=/run/netns/otherns --setuid 1000 --setguid 1000 xterm

관련 정보