我有一个需要在Linux系统上以root权限运行的命令行PHP脚本。
在我们旧的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");
然而,我们已经升级了服务器,并且现在使用的是一个更现代化的Linux版本(Amazon Linux)。 这很棒,但上述方法不再起作用。在AML上,您实际上没有root密码,但您可以从ec2-user
使用sudo。我甚至尝试过sudo -i
,但这不会更改环境变量-因此上述代码会失败。
因此,在继续之前,我需要一种新的方法来确保具有根级别权限。
有人有什么想法吗?
谢谢!