最近程序那边经常要重启,因为用的openvz嘛,他们的程序经常把服务器搞的内存不足。

只能重启了,而我每次都要帮他们重启。

今天想php可以调用系统命令,让他们自己重启行了。

echo “I am Rebooting The Server!”.”

“;

$result = exec(‘sudo vzctl restart 217 2>&1’, $retval);

$retval=str_replace(“r”,”

“,$retval);

foreach($retval as $k => $row)

{

if($k == 0   $k == count($retval)-1)

echo ($row . ”

“);

else

echo “……………

“;

}

echo “The Server Is Up NOW!”;

主要几点就是

  1. 无法显示结果到网页 2>&1 就可以了

  2. 无法运行root权限的指令,把daemon加到 sudo组里

daemon ALL=(ALL) NOPASSWD: /usr/sbin/vzctl (执行指令)

  1. sudo 只能到tty 做如下注释:

#Defaults requiretty