rsync全网备份
1.首先检查服务器中是否有rsync服务
查看方式使用rpm -qa|grep "rsync" 进行查看是否已存在,
如果不存在就是用yum install rsync -y 进行下载安装
2.将备份服务器端的rsync进程启动.
启动方式:rsync --daemon
然后进行查看进程是否开启 ps -ef |grep "rsync"
3.创建虚拟用户reync,并不指定家目录
创建方式 useradd -s /sbin/nologin/ -M rsync
使用tail /etc/passwd进行查看rsync用户是否创建完毕.
4.在服务器端的/etc/rsyncd.conf文件里创建配置文件.文件内容如下:
######rsyncd.conf start#######
uid = rsync ##指定rsync服务运行的时候,指定的用户和用户组,
gid = rsync##指定rsync服务运行的时候,指定的用户和用户组,
use chroot =no #防止出现安全问题
max connections = 200 #最大连接数
timeout = 300 # 超时时间
pid file =/var/run/rsyncd.pid #存放服务运行的时候进程的id号码(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 #准许访问rsync服务器的客户范围
#hsts deny =0.0.0.0/32#禁止访问reync服务器的客户范围一般不设置.
auth users =rsync_backup #不存在的用户,至用户开门(认证)
secrets file= /etc/rsync.password #不存在的用户的用户对应的密码(进门)
#reync_config___________end
以上配置文件是单一客户端推送到backup服务备份.
多服务器进行推送备份使用以下配置文件进行添加对应服务器:
######rsyncd.conf start#######
uid = rsync ##指定rsync服务运行的时候,指定的用户和用户组,
gid = rsync##指定rsync服务运行的时候,指定的用户和用户组,
use chroot =no #防止出现安全问题
max connections = 200 #最大连接数
timeout = 300 # 超时时间
pid file =/var/run/rsyncd.pid #存放服务运行的时候进程的id号码(pid)
lock file =/var/run/rsync.lock #进程的锁文件
log file =/var/log/rsyncd.log #日志文件
ignore errors #-忽略错误
read only =false#是否只读
list = false #是否允许列表
hosts allow =172.16.1.0/24 #准许访问rsync服务器的客户范围
hsts deny =0.0.0.0/32#禁止访问reync服务器的客户范围一般不设置.
auth users =rsync_backup #不存在的用户,至用户开门(认证)
secrets file= /etc/rsync.password #不存在的用户的用户对应的密码(进门)
[backup] #模块名称
path = /backup/ #模块对应位置(或者路径)
[nfs01backup]#添加的第二块模块
path = /nfs01backup/#第二块模块的对应的位置
#reync_config___________end
5.在备份服务器端的根目录下创建一个backup目录,(若是多个服务器在本服务器上进行备份就对应配置文件中的模块路径进行对应添加.)
使用命令 mkdir -p /backup 创建第一个备份服务器的备份目录.
若是多个模块依次进行创建即可.(只要此处创建的文件路径和配置文件中一致即可).
6.将以上在根目录下创建的目录的用户属主,和属组进行变更.更改为rsync.
使用命令chown rsync.rsync /backup此处打的backup目录对应的rsync用户是应该与配置文件中的uid=rsync;gid=rsync,和刚刚创建的虚拟用户rsync完全一致.(此处指的就是一个虚拟用户.)
7.设置文件对应密码:
在服务器端.也就backup端的/etc/rsync.password文件中写入对应密码,密码格式如下:
echo "rsync_backup:123456" > /etc/rsync.password
此处的rsync_backup书写必须要与配置文件中的一致.
然后将此文件权限更改为600.
使用命令 chmod 600 /etc/rsync.password进行修改
8.切换到客户端.也就是web01,或者nfs01服务器.进行如下修改.
1.在目录/etc/rsync.password文件中写入密码(此处的密码就是访问backup服务器用的密码.要与服务器端.也就是backup端的 /etc/rsync.password中的密码一致.但是仅仅书写密码即可.没有模块对应关系.)
执行如下命令进行修改.
echo "123456" > /etc/rsync.password
然后查看密码是否已经追加进去.
使用cat /etc/rsync.password
将此文件的权限更改为 600
命令:
chmod 600 /etc/rsync.password
9.使用命令进行推送内容进行备份.以下是不输入密码的执行方式:
rsync -avz /var rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
这条命令的意思就是 使用rsync的命令 对/var目录本身以及下面的所有文件进行推送,备份.
推送的目标是172.16.1.41下面的backup模块.密码是来自/etc/rsync.password 中.
因为配置文件中的uid=rsync,gid=rsync,所以只有在备份服务器上的虚拟用户rsync才可以对文件本身进行操作.
10.以上为一台服务器进行备份处理.若有多台服务器同样的道理.改变的东西就是备份服务器端的配置文件.和客户服务器的新创建的密码文件.其余不变.
本文出自 “张鹏飞-决心书” 博客,请务必保留此出处http://12865481.blog.51cto.com/12855481/1940983
原文地址:http://12865481.blog.51cto.com/12855481/1940983