> os: ubuntu 12.04 server
> server: 192.168.33.201
> client: 192.168.33.202
## 什么是rsync?
> rsync是Unix下的一款应用软件,它能同步更新两处计算机的文件与目录,并适当利用差分编码以减少数据传输。rsync中一项与其他大部分类似程序或协议中所未见的重要特性是镜像对每个目标只需要一次传送。rsync可拷贝/显示目录属性,以及拷贝文件,并可选择性的压缩以及递归拷贝。
## rsync的安装
sudo apt-get install rsync
## 配置rsync服务器 server
mkdir /etc/rsyncd #创建配置目录 touch /etc/rsyncd/rsyncd.conf #创建主配置文件 touch /etc/rsyncd/rsyncd.secrets #创建用户密码文件 chmod 600 /etc/rsyncd/rsyncd.secrets #修改用户密码文件权限 touch /etc/rsyncd/rsyncd.motd #创建定义服务信息的文件
### 编辑主配置文件
vim /etc/rsyncd/rsyncd.conf
pid file = /var/run/rsyncd.pid port = 873 #监听端口 address = 192.168.33.201 #监听地址 uid = root gid = root use chroot = yes #是否限制在指定目录,为了安装,一般需要启用 read only = no hosts allow=192.168.33.0/255.255.255.0 #允许网段 hosts deny=* max connections = 5 motd file = /etc/rsyncd/rsyncd.motd log format = %t %a %m %f %b syslog facility = local3 timeout = 300 #定义一个同步目录 [webhome] path = /usr/share/nginx/www list = yes ignore errors auth users = nginx secrets file = /etc/rsyncd/rsyncd.secrets #指定上述账号密码文件 comment = web home exclude = data/ #排除目录
vim /etc/rsyncd/rsyncd.secrets
#Account and password #注意:这里账号虽然用的是系统账号,但是密码是自定义的密 nginx:password123
### 启动使rsync生效
rsync --daemon --config=/etc/rsyncd/rsyncd.conf
## rsync客户端实现数据同步
> 安装同上
### 配置rsync客户端 client
mkdir /etc/rsync echo "password123" > /etc/rsyncd/rsyncd.password chmod 600 /etc/rsyncd/rsyncd.password
### 同步
rsync -avzP --password-file=/etc/rsyncd/rsyncd.password nginx@192.168.33.201::webhome /usr/share/nginx/www
> 将同步命令加入计划任务定时同步即可
原文地址:http://bstdn.blog.51cto.com/8667020/1600347