2013-04-29 246 views
0

这段代码在PHP中不会同步“测试”文件夹。在php中使用rsync同步远程服务器文件夹和本地服务器文件夹?

PHP

exec('/usr/bin/rsync -a /etc/test [email protected]:/etc/test'); 

rsync -a /etc/test/ [email protected]:/etc/test/ 

的工作。所以我需要通过使用php文件来同步这些“测试”文件夹。我该怎么做?

+0

我认为这也是我的问题。刚刚发现http://stackoverflow.com/a/9204543/1862107。是这个问题吗? – 2013-04-29 09:49:36

回答

1

首先,您需要检查您是否需要成为root或(sudo用户)才能运行rsync。如果是,那么 exec命令将仅在php-cli中的相同用户(不是由apache用户的浏览器)上运行时才起作用。

+0

对不起,兄弟,我没有明白你的意思。你可以解释一下吧 – 2013-04-29 09:43:43

+0

你将哪个用户登录到shell中运行rsync。如果它是root用户或任何具有sudo权限的权限用户,那么这个rsync命令可能不适用于当php脚本从浏览器运行时正在工作的apache/www-data用户。 – 2013-04-29 09:46:50

+0

作为根我要去登录 – 2013-04-29 09:51:36

相关问题