【发布时间】:2015-07-06 20:07:04
【问题描述】:
我正在尝试启动 sar 并通过 php 脚本让它永远运行。但无论出于何种原因,它从未真正启动过。我尝试了以下方法:
exec('sar -u 1 > /home/foo/foo.txt &');
exec('sar -o /home/foo/foo -u 1 > /dev/null 2>&1 &');
但是它从不启动 sar。如果我只是使用:
exec('sar -u 1')
它可以工作,但它只是挂起 php 脚本。我的理解是,如果一个程序是用 exec 函数启动的,为了让它继续在后台运行,程序的输出必须重定向到一个文件或另一个输出流。
【问题讨论】:
-
如果您希望它永远运行,为什么要使用 PHP 脚本启动它?
-
它是星号 agi 脚本的一部分,它执行 php 脚本来启动它。然后在一系列事件之后调用另一个 php 脚本来停止它。在上述情况下,虽然它永远不会真正启动和运行。