php解决系统调用rsync失败
1.技术准备
由root用户切换到apache用户:su - apache
修正apache的执行bash目录:vim /etc/passwd
2.PHP代码
$a = 'rsync -avzuCP --password-file=/opt/my /tmp/hosts root@192.168.0.110::hostserver';
$str = shell_exec($a);
在命令行下运行php a.php成功rsync
切换到web界面访问a.php死活不成功!
解决办法:
1.在命令行将用户切换到apache
su - apache
再去执行php a.php 直接报错!
提示我/opt/my 没有权限
赋上权限chown apache /opt/my 解决!
方法二:
将命令行修改成rsync -avzuCP --password-file=/opt/my /var/www/html/ams/src/tmp/hosts root@192.168.0.117::hostserver 2>&1
直接在web界面debug
发现问题解决!
阅读(3720) | 评论(9) | 转发(0) |