rsync同步服务器安装配置
1、什么是rsync
rsync 是一个Unix/Linux系统下的文件同步和传输工具。rsync是用 “rsync 算法”提供了一个客户机和远程文件服务器的文件同步的快速方法。
2、rsync 包括如下的一些特性
能更新整个目录和树和文件系统
有选择性的保持符号链链、硬链接、文件属于、权限、设备以及时间等
对于安装来说,无任何特殊权限要求
对于多个文件,内部流水线减少文件等待的延时
能用rsh、ssh 或直接端口做为传输入端口
支持匿名rsync 同步文件,是理想的镜像工具
3、rsync的安装
几种常见的安装方式,根据爱好安装:
(1)yum install rsync
(2)rpm –ivh rsync
(3)tar –zxvf rsync*.tar.gz
configure && make && make install
4、配置rsync
因为rsync的配置灵活多样,所以安装好后并没有提供一个例子配置文件,这就需要我们手动来创建配置文件。
vi /etc/rsyncd.conf
(本例主服务器IP:192.168.1.3 备份服务器IP:192.168.1.9)
# 备份以什么身份进行
uid = root
gid = root
use chroot = no
max connections = 4
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
# 设置认证的模块名
[down]
#待同步文件的位置
path = /home/down/
#认证的用户名,如果没有,则表明是匿名
auth user = root
uid = root
gid = root
#以可读可写方式
read only = no
# 认证密码文件放置位置
secrets file = /etc/rsyncd.secrets
配置实例二
uid = root
gid = root
use chroot = no
max connections = 20
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[web]
path = /var/www/html/bbs/
ignore errors
read only = yes
hosts allow = 192.168.1.0/16
hosts deny = 0.0.0.0/32
创建用户认证文件
vi /etc/rsyncd.secrets
#可以加个用户,一行一用户
root:123123
为了安全,我们给认证文件加上600权限,这样,别的用户无法读到文件里的密码
chmod 600 /etc/rsyncd.secrets
一切准备就绪,下面就可以记动rsync服务了,可以建一个启动脚本:方便每次系统启动
时,服务自启动。
#!/bin/sh
rm -f /var/run/rsyncd.pid
/usr/local/bin/rsync --daemon --config=/etc/rsyncd.conf
netstst -ant 可以查看rsync的工作端口873。如没有些端口,检查配置。
5、配置备份服务器(192.168.1.9)的备份脚本,可以启用计划任务,定时备份。
vi /usr/local/rsync/bakcl.sh(备份脚本可以放在任意地方,加上可执行权限)
#!/bin/sh
rsync -vzrtopg --delete --progress root@192.168.1.3::down /tools/
或者
rsync -av 192.168.1.3::web /tools/
rsync参数这里不做详解,上例是把主服务器192.168.1.3其down下的所有内容备份到当前服务器(192.168.1.9)根下的tools目录下,如果没有其目录,会自动创建。
6、恢复过程。恢复服务器一定要有写的权限。
vi /usr/local/rsync/rebakcl.sh
#!/bin/sh
rsync -vzrtopg --delete --progress /tools/ root@192.168.1.3::down
7、启动计划任务,定时每天早上6:30自动备份:
crontab -e
30 6 * * * root /bin/sh /usr/local/rsync/bakcl.sh
转载于:https://blog.51cto.com/coolface/765609