rsync 配置
服务端:
1、我使用系统的版本
[root@oldboy ~]# cat /etc/redhat-release
CentOS release 6.8 (Final)
[root@oldboy ~]# uname -r
2.6.32-642.el6.i686
2、which一下,查看是否有安装此服务(我是最小化安装系统,所以没有)
[root@oldboy ~]# which rsync
/usr/bin/which: no rsync in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
3、安装此服务,我这里通过yum安装
[root@oldboy ~]# yum install rsync -y
4、再which一下,现在有了
[root@oldboy ~]# which rsync
/usr/bin/rsync
5、创建一个/etc/rsyncd.conf ,这个文件在安装服务后也是不存在的,要手动创建,并且复制以下内容(这里我就不对内容做解释)
[root@oldboy ~]# vim /etc/rsyncd.conf
uid = rsync
gid = rsync
use chroot = no
max connections = 200
timeout = 300
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[backup]
path = /backup
ignore errors
read only = false
list = false
hosts allow = 172.16.1.0/24
#hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
6、创建rsync用户,用户默认也是不存在的,所以要创建(也可以用其他用户,但是一般用rsync)
[root@oldboy ~]# useradd rsync -s /sbin/nologin -M (参数解释:不允许登录,不创建家目录)
7、检查用户是否创建创建成功
[root@oldboy ~]# cat /etc/passwd |grep "rsync"
rsync:x:501:501::/home/rsync:/sbin/nologin
8、创建/etc/rsync.password认证密码文件,并且降低权限(这里千万别把属主root改为rsync)
[root@oldboy ~]# touch /etc/rsync.password
[root@oldboy ~]# vim /etc/rsync.password
rsync_backup:oldboy
[root@backuptest ~]# ll -d /etc/rsync.password
-rw------- 1 root root 20 9月 15 00:36 /etc/rsync.password
9、启动rsync服务,并且加入到开机自启动
[root@oldboy ~]# rsync --daemon
[root@oldboy ~]# ps -ef |grep "rsync"
root 1647 1 0 00:23 ? 00:00:00 rsync --daemon
root 1649 1268 0 00:23 pts/0 00:00:00 grep rsync
[root@oldboy ~]#
[root@oldboy ~]# echo "rsync --daemon" >>/etc/rc.local
客户端上:
10、安装rsync
yum install rsync -y
11、配置密码文件
echo "oldboy" > /etc/password
12、创建一个目录给rsync同步使用
[root@oldboy]mkdir /backupkhd/
13、同步文件命令
[root@oldboy]# rsync -avz /backupkhd/ rsync_backup@172.16.1.42::backup/ --password-file=/etc/rsync.password
一下为扩展
a,b两个文件不同步
[root@nfs backup]# rsync -avz --exclude={a,b} /backupkhd/ rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password
排除某一个文件(这里的文件名为file)
[root@nfs backup]# rsync -avz --exclude=file /backup/ rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password
无差异化同步,就是会把服务端的目录下的数据变成跟客户端的一样(这个很危险,会删除服务端的数据)
[root@nfs backup]# rsync -avz --delete /backup/ rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password
限速(在企业遇到白天同步可以加这个参数,不至于占用过多带宽影响网速)
[root@nfs backup]# rsync -avz --bwlimit=10 /backup/ rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password