php无法调用shell脚本文件,php调用shell脚本--126错误

写个页面的东西,来执行服务器上命令,最简单的比如reboot命令,用php来调用 参考网上方法如下

先建立一个脚本( /root/reboot_server.sh ),重启用的。

代码如下:

#!/bin/bash

reboot

再给他赋予权限 4755

chown root:root /root/reboot_server.sh

chmod 4755 /root/reboot_server.sh

chmod 4777 /sbin/reboot

再在 php 里, 想办法做如下调用 php

reboot.php 代码如下:

exec ("/root/reboot_server.sh",$out,$status);

print_r($out);

print_r($status);

?>

然后,通过页面来访问reboot.php(lnmp平台做了虚拟主机,可以通过域名来访问x.x.com/reboot.php)

其结果返回 126的状态码,搜索网上解决方案,一直无果

索性将/root/reboot_server.sh移到了和reboot.php 同一个目录中

访问,可以了,返回状态码0 系统重启了

意识到是目录权限的问题,/root目录对php的用户www没有可执行权限

chmod -R 755 /root

然后把reboot_server.sh移动到了/root 重新测试

搞定了

。。。。。。一说都是泪啊,因为一个目录的权限,折腾啊

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值