php -- 实现linux关机、重启功能
有时候,我们自己可以DIY一个控制面板实现linux的关机重启功能。众所周知,linux是一个基于文件的操作系统,所以要实现系统的关机重启功能必须满足以下两点
一、知道命令的绝对路径
在linux下操作的时候,我们们直接敲入命令即可。但用PHP执行linux命令就不能这么操作了,需要知道命令的绝对路径。
重启命令reboot绝对路径/sbin/reboot
关机命令shutdown绝对路径/sbin/shutdown
二、用PHP执行linux命令
有许多函数,之前我有些过博文介绍。这里推荐使用exec函数。
1 2 3 4 5 6 7 | <?php /** * php执行linux命令 */ // 返回命令执行结果,注意命令要写绝对路径 exec ( '/sbin/reboot' ); |
三、给重启命令添加权限
linux的权限表现的非常细腻,默认reboot权限只能root拥有,想要php执行关机只能给reboot命令相应权限
方式一:把nginx/apache的操作组加入一个管理组,比如web。然后把reboot加入管理组,给g加x命令
方式二:直接chmod 4777 /sbin/reboot 回车搞定,但不建议,因为这样等于所有用户都有重启权限了。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· Browser-use 详细介绍&使用文档
· 智能Agent如何改造传统工作流:从搜索到全能助手