……致我那曾经苦逼的岁月……
全部博文(83)
分类: LINUX
2012-02-28 21:37:09
环境:远程服务器IP:192.168.137.20/255 假如这台机器是生产线的web服务器,需要备份的目录是/www。
备份服务器IP:192.168.137.10/255 将/www目录备份到你要指定的目录,比如/root/backup目录。
1、在远程服务器上安装rsync软件包,如果已安装则跳过
yum -y install rsync
或者可以先查看是否已安装的命令,安装则显示rsync的版本号,如果没有任何输出,则返回上一步安装即可!
rpm -qa | grep rsync
2、新建一个rsync的主配置文件
touch /etc/rsyncd.conf
下面是rsyncd.conf文件内容
uid = nobody =====指的是进行备份的用户,nobody则是任何用户。
gid = nobody =====指的是进行备份的组,nobody则是任意组。
use chroot = no ======如果use chroot指定为true,那么rsync在传输文件以前首先chroot到path参数所指定的目录下,这样做可实现额外的安全防护功能,但缺点是需要给用户root权限,并且不能备份通过外部的符号链接所指向的目录文件。在默认情况下,chroot值为true,但是这一版不需要,可选no或者false。
max connections = 200 ======表示最大连接数。
timeout = 600 ======表示覆盖客户指定的IP超时时间,也就是说rsync服务器不会永远等待一个崩溃的客户端。
pid file = /var/run/rsyncd.pid =======指定pid文件的存放位置。
lock file = /var/run/rsyncd.lock =======指的是锁文件的存放位置。
log file = /var/run/rsyncd.log =======指的的日志文件的存放位置。
[www] =======这个是认证模块名,即跟Samba语法一样,是对外公布的名字。
path = /www ======这是参与同步的目录。
ignore errors ======表示可以忽略一些无关的I/0错误。
read only = no =======表示允许读和写。
list = false =====表示不允许列清单
hosts allow = 192.168.137.0/255.255.255.0 ======表示只允许这个网段同步,其他的拒绝。
auth users = test =====指的是认证的用户名。不需要是服务器上真实的用户。
secrets file = /etc/rsyncd.password ====指定密码文件的存放地址。
3、修改/etc/xinetd.d/rsync文件
将disabled = yes修改为disables = no,保存重启xinetd即可!
/etc/init.d/xinetd restart
4、第二步最下面我们指定了密码文件,现在我们必须去创建它
echo "test:test" > /etc/rsyncd.password
chmod 600 /etc/rsyncd.password 为了安全将权限设置为600
5、下面我们在客户端设置密码文件
echo "test" > /etc/rsyncd.password
chmod 600 /etc/rsyncd.password 为了安全将权限设置为600
6、测试是否能正常同步了?
可以同步/www目录了。
下面说说rsync加的参数吧!
-v 详细模式输出
-z 对备份的文件在传输时进行压缩处理
-r 对子目录以递归模式处理
-t 保持文件时间信息
-o 保持文件属主信息
-p 保持文件权限
-g 保持文件属组信息
--delete 删除那些DST中存在而SRC中不存在的文件和目录
--exclude 指定不需要同步的目录
继续测试!远程服务器上新建一个文件和一个目录
备份服务器上测试
下面再在远程服务器上删除1.txt文件,看看备份服务器是否也删除了?
测试
也删除了哈!
这里就记录这么多了。