为什么在 Linux 中运行 kill 需要 sudo 权限

为什么在 Linux 中运行 kill 需要 sudo 权限

在一台服务器(我的开发桌面)上,我能够kill在没有 sudo 的情况下执行命令,但在另一台服务器上,我会得到kill: kill 1 failed: operation not permitted

我假设该kill命令将会执行/usr/bin/kill

当我在两台服务器上检查该文件的权限时,权限部分显示的内容相同lrwxrwxrwx 1 root root,这意味着每个用户都拥有该文件的读、写和执行权限。那我为什么需要sudo在另一台服务器上这样做呢?我很好奇两台服务器之间的哪个部分造成了这种差异。

答案1

错误消息kill: kill 1 failed: operation not permitted表明它来自kill命令,而不是试图执行它的 shell。否则,您会看到类似这样的消息bash: /usr/bin/kill: Permission denied(以“bash”为标题)。

相反,问问自己,你试图杀死哪个进程,以及运行该进程的用户是谁。作为受限用户,你不能杀死其他人的进程,命令kill本身也会告诉你不允许这样做……

相关内容