作者:田逸([email]sery@163.com[/email]

rsync是一个广受好评的 linux/unix远程备份工具,而且相对与其他备份工具来说,rsync占用的资源较少,下面我们就按部就班来快速部署rsync 服务。

环境的构成:rsync是基于服务器/客户端(c/s)的模式,因此一个完整的rsync服务应该由客户端和服务器端来组成。按照习惯,我们把要备份的这端叫客户端(rsync client),接受备份的那端叫服务器端(rsync).

安装rsync
1、 下载二进制源码rsync-2.6.7.tar.gz。服务器和客户端都用这个程序。
2、 解压解包 # tar zxvf rsync-2.6.7.tar.gz
3、 配置 # cd rsync-2.6.7 ; ./configure
4、 编译安装 # make ; make install
5、 把上述步骤在客户端和服务器端各执行一遍。

配置rsync:主要的配置工作发生在服务器这端。
1、服务器的配置:安装完rsync以后,并没有在/etc目录生成配置文件/etc/rsyncd.conf,没有这个文件也没关系,手动创建就是了。这个配置文件对整个rsync服务是至关重要的,需要慎重编写。下面是我的服务器的rsyncd.conf
[sery] //第一行是模块的名字,必须有这行
path = /home/rsync //提供给客户端备份的场所(目录),要考虑大一点的空间
uid = nobody
gid = nobody
use chroot = no
auth users = sery //验证用户,没有这行表示匿名,安全起见请加上这行
secrets file = /root/sery.pass //验证密码所在的文件
read = no //可以有写权限,如果只读怎么备份
log file = /var/log/rsync.log //记录日志
接着创建文件/root/sery.pass,在这个文件里添加 <username>:<password>这样的行。比如sery:hswuhswu3,保存文件,然后修改其属性 # chmod 600 /root/sery.pass。创建目录 # mkdir /home/rsync 给予用户的写权限。因为rsync使用的用户帐号不是系统帐号,因此要把/home/rsync的权限设置为777。由于/home/rsync目录开放了所有的权限,这是不安全的,因此一定要限制远程主机的访问权限。

2、rsync服务的启动。执行命令 # rsync --daemon --config=/etc/rsyncd.conf &.在这里指定了配置文件的位置。如果启用了防火墙,请允许873通过。

3、客户端的配置。只要建立验证文件/root/sery.pass,其形式与服务器的哪个文件一样,并给予600的文件属性。

4、开始备份。在客户端执行 # rsync --vzrtopg --password-file=/root/sery.pass <要备份的目录或分区> <username-在服务器的rsyncd.conf中定义的哪个>@<rsync服务器的ip>:::<模块名-在服务器的rsyncd.conf中定义> --delete 就可以了。关于rsync后面的参数,可以通过rsync --help来了解。