查看: 1527|回复: 0

[PHP实例] Rsync文件同步教程

发表于 2018-3-13 08:00:11

Rsync安装
Rsync分为服务端和客户端,两端的安装方式完全一样。我们使用源码安装
wget https://download.samba.org/pub/rsync/rsync-3.1.2.tar.gz
tar -zxvf rsync-3.1.2.tar.gz
cd rsync-3.1.2
./configure --prefix=/usr/local/rsync
make && make install
服务端配置
假设我们现在有两台机器A和B,要将A中的文件同步到B中,那么B就作为服务端。
rsync安装完成之后,我们需要手动创建配置文件(rsync没有帮我们创建配置文件)
cd /usr/local/rsycn/
mkdir etc
cd etc
vim rsyncd.conf
配置文件内容如下:
pid file = /var/run/rsync.pid
lock file=/var/run/rsync.lock
address = 115.28.70.19 #本机ip地址
port = 873
uid = root
gid = root
use chroot = yes
read only = no #是否只读,如果yes的话,客户端无法同步文件到本机,但可以从本机同步文件到客户端
max connections = 10 #最大连接数
motd file = /usr/local/rsync/etc/rsyncd.motd #在此文件中可以编辑任意文字,在客户端进行同步操作时将显示该文件中的内容
log file = /var/log/rsync.log #日志文件,同步时若发生异常可查看该文件
transfer logging = yes
log format = %t %a %m %f %b #日志格式
syslog facility = local3
timeout = 300
[demo] #一个标示,可以配置多个,分别对应不同的想要同步的文件夹
path = /home/www/deploy/demo/ #同步的目标路径
list = yes
ignore errors
comment = demo #只是个注释
secrets file = /usr/local/rsync/etc/rsync-demo.password #密码文件路径,把账号密码写在该文件中,客户端通过相同的账号密码和服务端连通
[demo2] #参考上方demo1
在上面配置文件中我们有配置了motd file,secrets file,我们需要手动创建几个文件。
motd file
vim /usr/local/rsync/etc/rsyncd.motd
1
1
内容可以随便写
secrets file
vim /usr/local/rsync/etc/rsync-demo.password
内容格式为 账号:密码
rsync:password
修改密码文件的权限
chmod 600 /usr/local/rsync/etc/rsync-demo.password
启动服务
上面都配置完成之后,就可以启动服务了
/usr/local/rsync/bin/rsync --daemon --config /usr/local/rsync/etc/rsyncd.conf
--daemon :守护进程方式启动
--config : 指定配置文件
同步数据
在服务端主机上启动了rsync服务后,进入客户端主机,以相同的方法安装rsync(无需配置,只要安装即可)
创建密码文件(记得修改密码文件的权限,和服务端一样)
vim /usr/local/rsync/etc/rsync-demo.password
内容与服务端配置的密码文件一模一样
然后只要执行一条命令就可以将文件同步到服务端
rsync --password-file=/usr/local/rsync/etc/rsync-demo.password -zarv /home/wwwroot/default/market/ rsync@115.28.70.19::demo
命令中/home/wwwroot/default/market/是你本地要同步的文件夹
rsync@115.28.70.19是你密码中的账号与服务端的ip
demo是在服务端配置文件中配置的
排除文件
如果你想排除某些文件或目录,不进行同步,可以使用--exclude参数,有多个要排除的对象,可以多次使用--exclude
rsync --exclude=Uploads/ --exclude=.git/ -zarv /home/wwwroot/default/market/ rsync@115.28.70.19::demo
来源地址:https://www.imooc.com/article/20154



回复

使用道具 举报