Rsync同步数据的心得
软件环境:CentOS X86-64版
很多网上的教程说,如果Rsync要做服务器端,要先装Xinetd,其实大可不必。rsync这个程序是集客户端和服务器于一身的。只要在启动的时候加上【--daemon】参数(注意,是两个短中划线),就可以作为服务器端运行。当然,我们需要一个配置文件来对它的运行做一些设置。这个文件现有系统中没有,需要手动新建。
创新互联公司专业为企业提供邛崃网站建设、邛崃做网站、邛崃网站设计、邛崃网站制作等企业网站建设、网页设计与制作、邛崃企业网站模板建站服务,十余年邛崃做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。#vi /etc/rsyncd.conf
lock file = /var/run/rsync.lock /*运行的锁文件*/
log file = /var/log/rsyncd.log /*生成的日志文件*/
pid file = /var/run/rsyncd.pid /*pid文件*/
[backup] /*这个是资源名称,在同步的时候会用到*/
path = /var/vhosts/wawa81 /*资源的根目录*/
auth users = root /*授权使用的用户,必须是该服务器上真实存在的用户*/
uid = root
gid = root
secrets file = /etc/pwdss.srv /*密码文件,采用“用户名:密码”的格式(中间是英文冒号)*/
read only = no /*是否只读的设置*/
如果有多个资源需要同步,将[backup]的部分,按照实际需要新建一份,起一个不同的名字就可以了。如下
[web]
path = /home/admin/public_html
comment = Mirror to Hk server
read only = true
list = false
auth users = lixiphp
path = /home/admin/public_html
comment = Mirror to Hk server
read only = true
list = false
auth users = lixiphp
rsyncd.conf的共同部分设置还有很多,如有关日志格式的设置,在这里我没做设置,因此没写入文件中。如下可做参考
max connections = 4
read only = true
#hosts allow = 202.207.177.180
hosts allow = *
transfer logging = true
log format = %h %o %f %l %b
slp refresh = 300
read only = true
#hosts allow = 202.207.177.180
hosts allow = *
transfer logging = true
log format = %h %o %f %l %b
slp refresh = 300
采用rsync --daemon --config=/etc/rsyncd.conf的命令行格式,就可以让rsync以服务器模式,并按照配置文件的约束运行。
创建一个密码记录文件,存放的路径和名字任意。这个文件存在的意义在于如果在计划任务的时候,可以从该文件中获取密码,使计划任务可以自动运行。
/etc/pwdss.srv
root:123456
设置权限为只读:
chmod 600 /etc/pwdss.srv
服务器端配置成功,接下来配置客户端
创建一个密码记录文件,存放的路径和名字任意。这个文件和服务器端的是配套的,格式是只写密码就可以了。
/etc/pwdss
123456
设置权限为只读:
chmod 600 /etc/pwdss
rsync -aqzH --progress --delete --password-file=/etc/pwdss rsync://root@192.168.210.152/backup /var/vhosts/wawa81
--password-file这里填写的是客户端的密码文件
rsync://root@192.168.210.152/backup 这里的root要和rsyncd.conf中【backup】里的auth users一致,backup就是前面提到的资源名称,192.168.210.152是服务器的IP或者域名
/var/vhosts/wawa81,是备份到本地的目录。
以“拉”模式同步文件
rsync -avz --delete rsync://root@192.168.210.152/backup /var/vhosts/wawa81 --password-file=/etc/pwdss
计划任务设置(这个还没设置过)
创建backup目录存放备份脚本
mkdir /var/backup
vi /var/backup/sync.sh
#/bin/sh
rsync -aqzH --progress --delete --password-file=/etc/pwdss rsync://root@192.168.210.152/backup /var/vhosts/wawa81
添加定时任务:
crontab -e
*/1 * * * * /var/backup/sync.sh > /dev/null 2>&1
Published by WizNote
网页名称:Rsync同步数据的心得
文章起源:http://hbruida.cn/article/cpjhjh.html