pid-namespace init 프로세스 신호 처리기 제한 비활성화

pid-namespace init 프로세스 신호 처리기 제한 비활성화

Ubuntu 16.04/Linux 버전 4.4.0-47-generic/gcc 버전 5.4.0

Linux cgroup을 사용하여 컨테이너를 구현하고 싶고 구현의 일부는 프로세스를 새로운 pid 네임스페이스로 실행하는 것입니다.

~에서문서

"init" 프로세스가 신호 처리기를 설정한 신호만 PID 네임스페이스의 다른 멤버에 의해 "init" 프로세스로 전송될 수 있습니다. 이 제한은 권한이 있는 프로세스에도 적용되며 PID 네임스페이스의 다른 구성원이 실수로 "init" 프로세스를 종료하는 것을 방지합니다.

불행하게도 이는 init 프로세스 자체에 적용됩니다. 예를 들어, 어설션이 init 프로세스로 중단되고 sig6에 대한 핸들러가 없으면 어설션 코드는 sig11을 보냅니다.

이를 비활성화할 수 있는 방법이 있습니까(적어도 init 프로세스가 자체적으로 신호를 보내는 경우). 이 상황에 대한 신호 처리기를 제공하도록 init 프로세스를 강제할 수 없으며 프로세스가 중지된 이유를 알고 싶습니다.

작은 해킹은 어떻게든 대상 프로그램의 신호를 전달하는 더미 초기화 프로세스를 만드는 것일 수 있지만 해커가 아닌 솔루션이 있습니까?

관련 정보