php解决系统调用rsync失败

3827阅读 9评论2010-11-25 hkebao
分类:

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
发现问题解决!

上一篇:存储虚拟化:架构在虚拟层上的进阶应用
下一篇:Puppet英文翻译整理资料[翻译三]

文章评论