如何从PHP脚本暂停/重新启动Linux Ubuntu?

如何从PHP脚本暂停/重新启动Linux Ubuntu?,php,linux,ubuntu,restart,Php,Linux,Ubuntu,Restart,我有个问题。我想用php代码重新启动ubuntu,但我不能。我已经试过了互联网上的所有代码,比如 <?php shell_exec("/usr/sbin/reboot"); exec("/usr/sbin/reboot"); system("/usr/sbin/reboot"); ?> 及 但他们都什么也不做。请帮帮我。我需要这段代码。我不建议给PHP用户root访问权限 请点击此处: 如果PHP代码是由Web服务器执行的,那么它是在ubuntu的用户“www data”下

我有个问题。我想用php代码重新启动ubuntu,但我不能。我已经试过了互联网上的所有代码,比如

<?php
shell_exec("/usr/sbin/reboot");
exec("/usr/sbin/reboot");
system("/usr/sbin/reboot");
?>



但他们都什么也不做。请帮帮我。我需要这段代码。

我不建议给PHP用户root访问权限

请点击此处:

如果PHP代码是由Web服务器执行的,那么它是在ubuntu的用户“www data”下运行的

www数据可能无权关闭,这是一个明智的默认设置

您可以授予www data sudo关闭权限,而无需提供密码,并使用sudo调用reboot

仔细查看
mansudoers
,确保在编辑sudo配置之前理解安全含义:这将有效地使任何PHP脚本都有权关闭服务器(未经测试)

在PHP中,您可以使用:

shell_exec("/usr/bin/sudo /usr/sbin/reboot");

我看到了你的链接。但我不太明白。我知道这很危险,但我需要这个代码来练习
# /etc/sudoers (edit using the visudo command)

Cmnd_Alias     SHUTDOWN = /usr/sbin/shutdown
Cmnd_Alias     HALT = /usr/sbin/halt
Cmnd_Alias     REBOOT = /usr/sbin/reboot

Host_Alias     LOCALHOST = 127.0.0.1

www-data       LOCALHOST = NOPASSWD: SHUTDOWN, HALT, REBOOT
shell_exec("/usr/bin/sudo /usr/sbin/reboot");