蒙面人生蒙面人生

利用rsync对网站进行同步增量备份

虽然我们的小站数据不太多,但是一旦丢失,那就后悔莫及,下面介绍一下利用rsync对网站进行同步增量备份.
首先在需要备份的服务器上安装rsync服务端
yum install rsync -y
创建配置文件和密码文件
mkdir /etc/rsyncd/
 cd /etc/rsyncd/
 vi rsyncd.conf

粘贴下面的配置文件,注意这个文件是没有的,需要你手动建立
pid file = /var/run/rsyncd.pid
 port = 873
 uid = root
 gid = root
 use chroot = yes
 read only = yes
 max connections = 5
 #This will give you a separate log file
 #log file = /var/log/rsync.log
 log format = %t %a %m %f %b
 syslog facility = local3
 timeout = 300
 [test]#模块名,用来标识,可以建立多个.
 path = /home/wwwroot/#这个是你要下载的网站所在路径
 list=yes
 ignore errors
 auth users = name#这个是下载用户
 secrets file = /etc/rsyncd/rsyncd.secrets#这个是用户密码文件,需要和下面的文件名对应
 comment = rsynctest#这个是对话名称,可以任意取

创建用户密码文件,注意这个文件是没有的,需要你手动建立,即和上面配置文件里面的文件名对应
vi rsyncd.secrets
用户密码形式以name:password 可以有多行,一行一个用户.
把上面这个文件的权限设置为600,要不rsync服务启动不了
chmod 600 rsyncd.secrets
启动服务器的rsync服务,这里可以将下面的命令加入crontab中
/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf
下面就是在下载的服务器可以将它看成客户端,客户端就是下载服务端的备份服务器.
客户端安装好rsync.
客户端如果以手动备份,那么只需要执行下面的语句即可,当然需要下载的文件路径自己先创建好
rsync -avzP name@192.168.10.1::test /usr/local/backup
输入在服务端创建的密码即可同步备份.上面的那个name就是你的用户名,192.168.10.1就是你的远程服务器IP,test就是那个rsync的模块名(服务端的),/backup就是你本地要存放文件的路径,执行上面命令后会提示你输入密码,密码就是你那个密码配置文件里:后面的.
如果需要在客户端让他自行运行,还需要在客户端创建密码文件,省的每次都输入密码
客户端vi /etc/rsyncd/rsyncd.secrets
输入密码,这里注意只需要输入密码即可,网上很多教程都是这里出错说输入用户名:密码形式,其实只需要输入密码即可.
然后加入crontab中.
crontab -e
20 1 * * * rsync -avzP --delete --password-file=/etc/rsyncd/rsyncd.secrets name@192.168.0.1::test /usr/local/backup
即在每天1点20自动同步备份

rsync 排除多个目录,需要在客户端新建个exclude.list,然后rsync -av –exclude-from=”exclude.list”指定不需要同步的文件/目录,注意exclude.list里面填写要排除的文件/目录,一行一个,直接写文件名即可。这里,可以把会话flw看成根目录,而不是填写以下完整的文件夹路径,所以如果要排除data/attachment,app_down,app_download,tmp/g,那么exclude.list里就应该写
data/attachment
app_down
app_download
logs
old
app_download
cctv

最后代码如下
rsync -avzP --delete --bwlimit=20000 --password-file=/etc/rsyncd/rsyncd.secrets  --exclude-from=/etc/rsyncd/exclude.list xxx@1.1.1.1::flw /home/www1/xxx

本原创文章未经允许不得转载 | 当前页面:蒙面人生 » 利用rsync对网站进行同步增量备份

评论