45IT.COM- 电脑学习从此开始!
DIY硬件教程攒机经验装机配置
设计Photoshop网页设计特效
系统注册表DOS系统命令其它
存储主板显卡外设键鼠内存
维修显卡CPU内存打印机
WinXPVistaWin7unix/linux
CPU光驱电源/散热显示器其它
修技主板硬盘键鼠显示器光驱
办公ExcelWordPowerPointWPS
编程数据库CSS脚本PHP
网络局域网QQ服务器
软件网络系统图像安全
页面导航: 首页 > 电脑学院 > 服务器技术 >

使用rsync对网站进行增量备份(从linux到windows)

电脑软硬件应用网 45IT.COM 时间:2012-09-08 17:15 作者:佚名

以前使用VPS的时候,包括本博客一类的个人网站,一般都用SH脚本利用FTP备份(详情见我之前的一篇博客),这种方法的优点是简单快速。但是最近在给公司的网站做备份时,却遇到了不小的问题,公司的网站数据量较大,有30多个G,如果用FTP备份的话,足足花了我一个上午,更严重的是满足3天备份数据的话,磁盘空间暴涨;如果设置成自动备份的话,每天硬盘要压缩30G数据,然后再传输到备份服务器,我担心不到半月硬盘就得挂掉!

以前做数据库管理的时候,在遇到备份数据较大的时候,可以进行增量备份,原理虽然一样,但是没有接触过文件增量备份,还好我们有GOOGLE,参考了网上常用的一些网站增量备份的办法,发现一个开源的软件rsync

它的特性如下:

1、可以镜像保存整个目录树和文件系统。

2、可以很容易做到保持原来文件的权限、时间、软硬链接等等。

3、无须特殊权限即可安装。

4、优化的流程,文件传输效率高。

5、可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。

 

公司的网站服务器为linux,备份服务器为windows,并不需要考虑实时备份,做到每天备份即可,具体的方法如下:

1.首先在linux服务器上面安装rsync

#wget http://rsync.samba.org/ftp/rsync/rsync-3.0.8.tar.gz

#tar zxvf rsync-3.0.8.tar.gz

#cd rsync-3.0.8

#./configure

#make

#make install

2.在vps上创建rsyncd的配置文件/etc/rsyncd.conf,内容如下:

uid = root # 备份以什么身份进行,用户ID

gid = root # 备份以什么身份进行,组ID

#注意这个用户ID和组ID,如果要方便的话,可以设置成root,这样rsync几乎就可

#以读取任何文件和目录了,但是也带来安全隐患。建议设置成只能读取你要备

#份的目录和文件即可。

#use chroot = no

max connections = 0 # 最大连接数没有限制

pid file = /var/log/rsync/rsyncd.pid

lock file = /var/log/rsync/rsync.lock

log file = /var/log/rsync/rsyncd.log

[web] # 指定认证的备份模块名

path = /home/ # 需要备份的目录

comment = BACKUP wwwroot # 注释

ignore errors # 忽略一些无关的IO错误

read only = false # 设置为只读

list = false # 不允许列文件

#hosts allow = 210.51.0.80 #允许连接服务器的主机IP地址

#hosts deny = 0.0.0.0/0.0.0.0 #禁止连接服务器的主机IP地址

#auth users = wwek # 认证的用户名,如果没有这行,则表明是匿名(建议使用匿名,配合指定运行单一IP地址备份即可)

secrets file = /etc/rsyncd.secrets # 认证文件名,用来存放密码

3.由于指定了密码文件,该文件只能是root用户可读写的,注意,出于安全目的,这个文件的属性必需是只有属主可读,否则rsync将拒绝运行。我们可以设置它的属性为600:

# chmod 600 /etc/rsyncd.secrets

# mkdir /var/log/rsync

4.服务器上启动rsyncd服务:

# /usr/local/bin/rsync –daemon

5.windows安装配置cwrsync 客户端 cwrsync也就是windows上的rsync了。

然后执行备份命令

rsync -vzrtopg –progress –delete [服务器IP]::web [/cygdrive/f/backup]

其中web是服务器配置文件中的模块名,/cygdrive/f/backup是指备份到本地F:/backup

顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
无法在这个位置找到: baidushare.htm
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
推荐知识