我想Rsync这个软件大家都熟悉吧,它是类unix系统下的数据镜像备份工具.
优点有:
可以镜像保存整个目录树和文件系统.
可以很容易做到保持原来文件的权限、时间、软硬链接等等.
无须特殊权限即可安装.
优化的流程,文件传输效率高.
可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接.
支持匿名传输,以方便进行网站镜象.
Rsync的主页地址为:http://rsync.samba.org/,目前最新版本为3.0.9.
一、Rsync的安装
装rsync非常简单且花样繁多:
1、挂载安装光盘:
# mount /dev/cdrom /mnt/
# rpm -ivh /mnt/CentOS/rsync-2.6.8-3.1.x86_64.rpm
2、使用YUM安装:
# yum -y install rsync
3、源码编译安装
# wget http://rsync.samba.org/ftp/rsync/src/rsync-3.0.9.tar.gz
# tar zxvf rsync-3.0.9.tar.gz
# cd rsync-3.0.9
# ./configure --prefix=/usr/local/rsync && make && make install
二、Rsync的配置文件和命令参数
在配置之前我们先来了解一下Rsync的配置文件及其命令参数.
1、Rsync的主配置文件rsyncd.conf
全局参数:
port
指定后台程序使用的端口号,默认为873.
motd file
指定一个消息文件,当客户连接到服务器时该文件的内容显示给客户,默认是没有motd文件的.
log file
指定日志文件.
pid file
指定pid文件.
syslog facility
指定rsync发送日志消息给syslog时的消息级别,常见的消息级别是:uth, authpriv, cron, daemon, ftp, kern, lpr, mail, news, security, sys-log, user, uucp, local0, local1, local2, local3,local4, local5, local6和local7.默认值 是daemon.
拥有帝国一切,皆有可能。欢迎访问phome.net
模块参数:
comment
模块功能描述
path
指定备份目录的路径
use chroot
是否使用chroot模式
uid
指定当该模块传输文件时守护进程应该具有的uid,默认为nobody
gid
指定当该模块传输文件时守护进程应该具有的gid,默认为nobody.
max connections
指定最大并发连接数.默认为0,也就是没有任何限制.
list
设定当客户请求可以使用的模块列表时,该模块是否应该被列出.如果设置该选项为false,可以创建隐藏的模块.默认值是true.
read only
是否允许客户上载文件.如果为true那么任何上载请求都会失败,如果为false并且服务器目录读写权限允许那么上载是允许的.默认值为true.
exclude
用来指定多个由空格隔开的多个文件或目录(相对路径),并将其添加到exclude列表中.这等同于在客户端命令中使用--exclude来指定模式,一个模块只能指定一个exclude选项.但是需要注意的一点是该选项有一定的安全 性问题,客户很有可能绕过exclude列表,如果 希望确保特定的文件不能被访问,那就最好结合uid/gid选 项一起使用.
exclude from
指定一个包含exclude模式的定义的文件 名,服务器从该文件中读取exclude列表定义.
include
用来指定不排除符合要求的文件或目录.这等同于在客户端命令中使用--include来指定模式,结合include和exclude可以定义复杂的exclude/include规则.
拥有帝国一切,皆有可能。欢迎访问phome.net
include from
指定一个包含include模式的定义的文件 名,服务器从该文件中读取include列表定义.
auth users
指定由空格或逗号分隔的用户名列表,只有这些用户才允许连接该模块.
secrets file
指定密码文件存放路径
hosts allow
指定哪些IP的客户允许连接该模块.
hosts deny
指定不允许连接rsync服务器的机器,默认没有hosts deny定义.
ignore errors
操作时忽略server上的IO错误
ignore nonreadable
指定rysnc服务器完全忽略那些用户没有访 问权限的文件.这对于在需要备份的目录中有些文件是不应该被备份 |