systemd 保护 /proc:ProtectProc 和 ProcSubset

systemd 保护 /proc:ProtectProc 和 ProcSubset

我正在尝试使用 systemd保护程序过程子集对调用者隐藏“其他”进程的指令:

# systemd-run  --wait -p ProtectProc=invisible -p ProcSubset=pid --pty --collect --service-type=exec ls -lh /proc/ | wc -l
Running as unit: run-u2896.service
Press ^] three times within 1s to disconnect TTY.
Finished with result: success
Main processes terminated with: code=exited/status=0
Service runtime: 25ms
CPU time consumed: 8ms
312

我们可以看到,里面有 312 个进程。我们还看到/proc似乎安装正确:

# systemd-run  --wait -p ProtectProc=invisible -p ProcSubset=pid --pty --collect --service-type=exec grep proc /proc/self/mountinfo
<...>
992 971 0:92 / /proc rw,nosuid,nodev,noexec,relatime shared:481 - proc proc rw,hidepid=invisible,subset=pid
<...>

我是否正确理解了什么hidepid=subset=做什么?我希望在这里看到 1-2 个进程,而不是 300 多个

Linux 5.10.0-3-amd64、systemd 247.3-1(debian bullseye)

答案1

上游,一旦回复就会在这里发布。

编辑:这是可能的,但对于非 root 用户。这导致了文档更新

相关内容