23

我正在编写一个 rake 脚本,并希望检测(如果可能,使用 Ruby 而不是 bash)执行 rake 脚本的用户是否具有 root 权限。

如果它不是root,那么我想终止脚本。

4

2 回答 2

41

在类中使用uid或:euidProcess

raise 'Must run as root' unless Process.uid == 0
于 2009-03-13T04:29:14.357 回答
1

我不知道 Ruby,但您要检查的是用户 ID 是否为 0。在 C 中,您可以通过检查getuid(). 从 Unix 命令行,您还可以检查id -u.

于 2009-03-13T04:26:41.290 回答