DOO*_*iac 4 php linux sudo root
我有一个命令行PHP脚本,需要在Linux系统上使用root级别权限运行.
在我们旧的Redhat Enterprise 2 Linux发行版中,此代码有效:
// If we are linux, make sure we're root
if ($bIsLinux && $_ENV['USER'] != 'root')
die("This script must be run as root.\n");
Run Code Online (Sandbox Code Playgroud)
但是,我们已经升级了服务器,现在使用的是现代版本的Linux(亚马逊Linux).哪个好,但上面不再适用.在AML上,你实际上没有root密码,但你可以sudo ec2-user.我甚至尝试过,sudo -i但这并没有改变环境变量 - 因此上面的代码失败了.
因此,在继续之前,我需要一种新方法来确保根级别权限.
有人有主意吗?
谢谢!
And*_*ndy 11
使用posix_getuid可以检查用户是否是root用户.
<?php
if (posix_getuid() == 0){
echo "This is root !";
} else {
echo "This is non-root";
}
?>
Run Code Online (Sandbox Code Playgroud)
0 是根,其他任何事都不是.
| 归档时间: |
|
| 查看次数: |
3323 次 |
| 最近记录: |