配置RSYNC实现定时同步镜像VPS网站备份 替换增量备份文件

  • A+
所属分类:Wiki

一个最简单的配置脚本,应用之处很多,例如VPS增量备份,或者,SLB之间做文件同步等。

安装

  1. apt-get install -y rsync  

配置文件压缩包下载:1.rsync服务器端配置

                                  2. rsync客户端配置

一、首先是配置服务器端,例如IP:111.111.111.111

下载 rsync-server.zip 文件,解压后,上传到/etc目录,需要设置4个地方:

1.设置 /etc/rsyncd/rsyncd.conf 中的服务器端IP(第7行)为您VPS的IP

  1. address = 111.111.111.111

2.设置 /etc/rsyncd/rsyncd.conf 中允许同步的客户端IP(第20行),多IP用空格隔开:

  1. hosts allow=222.222.222.222

3.设置 /etc/rsyncd/rsyncd.conf 中的需要同步的目录(第35行)

  1. path = /home/wwwroot

4.设置 /etc/rsyncd/rsyncd.secrets 中用户名及密码,并用命令给予600权限

  1. chmod 600 /etc/rsyncd/rsyncd.secrets

二、设置服务器端IP、允许客户端IP以及用户名密码,设置后服务器端运行rsync,命令:

  1. /usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf

为了避免每次重启vps后都要输入命令开起服务端,可以把上面的命令加在

/etc/rc.local 文件的 exit 0 之前实现每次开机自动启动同步服务端.

三、配置备份客户端,例如IP:222.222.222.222
下载 rsync-root.zip 文件,解压后,上传至/root目录中:

1.设置rsync密码/root/pass文件(无须用户名),与服务器端一至,并给予600权限,命令:

  1. chmod 600 /root/pass

2.设置rsync路径/root/rs.sh,与服务器端一至,并给予可执行权限,命令:

  1. rsync -avzP --delete  --password-file=/root/pass lucktanguser@111.111.111.111::lucktanghome /home/wwwroot
  2. #其中lucktanguser为服务器端/etc/rsyncd/rsyncd.secrets中用户名
  3. #其中111.111.111.111为服务器端IP
  4. #其中lucktanghome为/etc/rsyncd/rsyncd.conf中34行自定义命名
  5. #其中/home/wwwroot为需要同步的网站目录
  1. chmod +x /root/rs.sh

配置RSYNC实现定时同步镜像VPS网站备份 替换增量备份文件

四、可以用 crontab 功能,每1小时,或每天同步一次数据:

  1. crontab -e
  1. 25 */1 * * * /root/rs.sh
  2. //每个小时的第25分钟自动运行一次
  3. 25 04 */1 * * /root/rs.sh
  4. //每天的25分04时自动运行一次

五、常见错误解答
1.服务器端/etc/rsyncd/rsyncd.secrets和备份端/root/pass,均需要600权限
2.可以手动执行/root/rs.sh,看是否能够同步成功
3.切记,此同步是数据完全同步,会删除掉备份端有,而服务器端没有的文件
4.此为增量备份,只同步修改过或没有的文件,原有文件不会下载,很节省时间和流量

  • 我的微信
  • 使用微信扫一扫
  • weinxin
  • IT运维交流群
  • 使用QQ扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: