脚本作为超级用户执行

时间:2012-09-07 11:16:30

标签: php admin root

如何从我的PHP脚本中判断它是否以超级用户权限执行?

如果它不像sudo php script.php那样被调用,我可以抛出错误

if (!is_sudo()) {
  die('Please execute with sudo');
}

我确信有一种简单的方法可以检查,但我还没找到它

1 个答案:

答案 0 :(得分:5)

您可以使用posix_getuid()(0是root):

if (posix_getuid() != 0) {
    die('Please execute with sudo');
}

@Dave Random建议:

function is_sudo () {
    return posix_getuid() === 0;
}