Rsync+Crond实现定时备份

rsync介绍

rsync英文称为remote synchronizetion,从软件的名称就可以看出来,rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像、远程备份的功能,这个功能类似于ssh带的scp命令,但是又优于scp命令的功能,**scp每次都是全量拷贝,而rsync可以增量拷贝。**当然,rsync还可以在本地主机的不同分区或目录之间全量及增量的复制数据,这又类似cp命令。但是同样也优于cp命令,cp每次都是全量拷贝,而rsync可以增量拷贝。

在同步数据的时候,默认情况下,rsync通过其独特的“quick check”算法,它仅同步大小或者最后修改时间发生变化的文件或目录,当然也可根据权限、属主等属性的变化同步,但是需要制定相应的参数,甚至可以实现只同步一个文件里有变化的内容部分,所以,可是实现快速的同步备份数据。

rsync - 快速,通用,可实现全量和增量的远程(和本地)文件复制工具。

rsync监听端口:873

rsync运行模式:C/S

client/server :客户端/服务端

rsync三种工作模式

Rsync有三种传输模式,分别是本地方式、远程方式、守护进程

rsync守护进程模式部署

环境:

主机名角色IP系统
c7-41服务端10.0.0.41CentOS7.7
c7-42客户端10.0.0.42CentOS7.7

服务端部署

1.确认rsync软件服务是否存在

没有的话直接yum安装:# yum -y install rsync

常用参数详解

-v, --verbose详细模式输出
-a, --archive归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-z, --compress对备份的文件在传输时进行压缩处理
-P

显示进度

2.手动配置rsync软件配置文件

vim /etc/rsyncd.conf

##全局配置			
uid = root    #用户			
gid = root    #用户组			
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 = /data      #模块对应的位置(路径)			
ignore errors       #忽略错误程序			
read only = false    #是否只读			
list = false        #是否可以列表			
hosts allow = 10.0.0.0/24  #准许访问rsync服务器的客户范围			
#hosts deny = 0.0.0.0/32      #禁止访问rsync服务器的客户范围			
auth users = rsync_backup    #不存在的用户;只用于认证			
secrets file = /etc/rsync.password  #设置进行连接认证的密匙文件

注意:配置文件中,行后不要有注释和空格

3. 创建rsync备份目录/授权rsync用户管理备份目录;修改备份目录权限

[root@ c7-141 ~]# mkdir -p /data
[root@ c7-141 ~]# useradd rsync -s /sbin/nologin -M
[root@ c7-141 ~]# chown -R  rsync.rsync /data/

4. 创建认证用户密码文件;修改文件权限

[root@ c7-141 ~]# echo "rsync_backup:123456" > /etc/rsync.password
[root@ c7-141 ~]# chmod 600 /etc/rsync.password

5.重启rsync守护进程服务

# systemctl restart rsyncd.service

# systemctl enable rsyncd.server

客户端部署

创建密码文件,客户端密码文件中,只需要密码即可。同时,密码文件的权限是600

[root@ c7-42 ~]# echo "123456" > /etc/rsync.password
[root@ c7-42 ~]# chmod 600 /etc/rsync.password

客户端推送文件

# touch aaa.txt

# rsync -avz aaa.txt rsync_backup@10.0.0.41::backup --password-file=/etc/rsync.password

然后看一下服务端的data/目录下有没有aaa.txt文件

有的话就说明推送成功

# 关闭一下防火墙

客户端拉取文件

# 事例

首先在服务端data/目录下创建一个空文件

再去客户端拉取

# rsync -avz rsync_backup@10.0.0.41::backup --password-file=/etc/rsync.password /root/   #拉取到root目录下

文件就拉取过来啦

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值