将下面的代码复制下来保存为php页面,访问这个页面就能查看实时的树莓派状态信息了。原理是打印shell_exec的结果。
<?php /** * state * * @package custom */ ?> <article class="content"> <section class="post"> <div id='server_state'> <h5>uname -a</h5> <pre><?php echo shell_exec("uname -a"); ?></pre><br/> <h5>Uptime</h5> <pre><?php echo ltrim(shell_exec("uptime"), " "); ?></pre><br/> <h5>cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq </h5> <pre> <?php $t = shell_exec("cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"); echo sprintf("%s/1000=%sKHz", str_replace("\n", "", $t), $t/1000); ?> </pre><br/> <h5>cat /sys/class/thermal/thermal_zone0/temp </h5> <pre> <?php $t = shell_exec("cat /sys/class/thermal/thermal_zone0/temp"); echo sprintf("%s/1000=%sC°", str_replace("\n", "", $t), $t/1000); ?> </pre><br/> <h5>free -h</h5> <pre><?php echo shell_exec("free -h"); ?></pre><br/> <h5>cat /proc/cpuinfo</h5> <pre><?php echo shell_exec("cat /proc/cpuinfo"); ?></pre> </div>
对不起啊,误以为是垃圾评论自动给删除了也没仔看就同意了,贵站大可再写。。。
谢谢你分享这么多关于树莓派的宝贵经验和资料,让我受益匪浅呐:)
错误代码500
空白 什么都没有显示
空白有两个原因,第一:权限问题,当你访问这个页面的时候,是以当前执行php用户的身份去访问的,例如nginx用户是www,这个用户权限肯定不够。第二:php安全问题,php会把这些shell_exec这一类的可以调用脚本的功能给禁掉,你需要修改php.ini配置文件。
我删了
need(‘header.php’); ?>
need(‘footer.php’); ?>
就显示了
你好 shell_exec()不可以执行sudo权限吗?
可以执行,但是你要给执行php的用户root权限,具体你可以参考我上面的回复,点击头像可以去我的博客找到一些解答。