如何终止一些使用kill运行sudo的进程

时间:2013-07-05 13:20:17

标签: kill sudo sigint sigkill

使用无特权的用户帐户,使用bash,我可以这样做:

sudo /bin/sleep 6000

并使用Ctrl-c将其杀死。但是,从另一个终端发送SIGINT或SIGKILL将不能用于此目的。

任何人都知道为什么会这样?我希望能够杀死发送信号的过程,例如在脚本中使用。

问候。

1 个答案:

答案 0 :(得分:1)

您只能向使用相同UID运行的进程发送信号(除非发送进程以root身份运行)。当您使用sudo时,新进程以root身份运行,但如果您尝试终止它,则表示您正在以普通用户标识运行。你必须使用sudo kill PID来杀死它。

终端控制字符发送的信号被特别处理:它们可以被发送到与终端在同一登录会话中运行的任何进程。