情况

情况

情况

我已经建立了一个环境,用户可以从多个端点登录并使用tmuxscreen...所以当他们结束工作时,他们可以注销他们的 ssh 会话,这不会杀死任何终端多路复用器中保存的任何进程,他们可以这样做一个pkill -u ${USER}killall -u ${USER}杀死他们的所有进程,为此我将函数包装在名为 .a 的脚本中fulllogout

问题

当跑步pkill -u ${USER}killall -u ${USER},终止进程可以在终止所有其他进程之前终止自身或其外壳,从而导致某些进程保持活动状态。

在不允许提升权限的情况下如何成功地做到这一点?

答案1

kill -TERM -1将向它有权这样做的每个进程发送 SIGTERM(除了 pid 1),同样kill -KILL -1 会杀死所有可能的东西。这是在单个系统调用中完成的,因此不能中途杀死自己。

相关内容