rsync服务器文件增量备份

2021/5/14 18:26:56

本文主要是介绍rsync服务器文件增量备份,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

环境
服务端(linux7.5): 172.16.110.137
客户端(linux6.9): 172.16.110.134
客户端(windows): 192.168.14.160

目的:两个不同系统的客户端可以定时向服务端进行数据备份,数据恢复。

为了测试顺利 事先需要统一关闭防火墙和selinux

systemctl stop firewalld
setenforce 0

一,配置rsync服务端(无论客户端还是服务端都需要安装rsync)
1.1安装rsync

yum install -y rsync

在这里插入图片描述
1.2,安装完毕后就可以配置rsyncd.conf文件了
打开rsyncd.conf文件

vim /etc/rsyncd.conf

在这里插入图片描述把现有的注释文件全部删掉并重新编写新的

uid = rsync
gid = rsync

port = 873
fake super = yes
use chroot = no
max connections = 200
timeout = 200
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false

hosts allow = 172.16.110.126/16,192.168.67.30/24
hosts deny = 0.0.0.0/32

auth users = rsync
secrets file = /etc/rsync.password
[backup]
comment = "backup dir by haha"
path = /etc/backup

PS:配置文件详解
在这里插入图片描述

1.3,需要创建一个管理备份目录的虚拟用户

useradd rsync -M -s /sbin/nologin
id useradd

在这里插入图片描述
1.4,根据配置文件里面的授权用户和密码路径的指定接下来就需要在etc目录下创建一个备份服务器认证密码文件了

echo "rsync:wang123" >/etc/rsync.password
cat /etc/rsync.password

加密rsync.password认证文件,只让属主可以查看

chmod 600 /etc/rsync.password

1.5,接下来根据配置文件 开始创建存放备份文件的文件夹

mkdir /etc/backup

此目录现有的属主属组是root 根据配置文件的设置 需要更改为刚刚创建的虚拟用户rsync

查看属主属组信息

ll /etc/backup -d

在这里插入图片描述
更改属主属组为rsync

chown rsync.rsync /ets/backup

在这里插入图片描述
1.6,根据配置文件 到这里基本上都已经配置完毕了,现在开始启动rsync服务端服务并且开机自动运行
启动rsync服务

systemctl start rsyncd

开机自启动

systemctl enable rsyncd

在这里插入图片描述
二,配置rsync(linux6.9)客户端

2.1,安装rsync

yum install -y rsync

2.2,
安装完成后进行一波备份测试
备份命令

rsync -avzP /etc/hosts rsync_backup@172.16.110.137::backup

在这里插入图片描述
测试到这里就算完成了,为了后续的能进行定时任务需要进行免密交互
在客户端上创建一个密码文件

echo “wang123” >/etc/rsync.password

加入属主才可以查看密码文件保障文件的安全

chmod 600 /etc/rsync.password

执行备份命令的时候 加上密码文件的路径,这样既可以不用输入密码也可以保障密码的安全

rsync -avzP --delete /etc/wangxiang rsync_backup@172.16.110.137::backup --password-file=/etc/rsync.password

命令解释:
**

rsync : 程序命令 avzP : 参数,avz代表详细的进行递增传输文件,P代表着传文件的进度
–delete: 在上传的时候文件会做对比,以源目录为准,如果不一样就执行删除命令,从而不会出现本地数据和备份数据不同的情况
/etc/wangxiang : 需要备份的目录
rsync_backup:服务端上配置文件里面的授权用户
@172.16.110.137:服务端地址
::backup:服务端配置文件里面的模块名字
–password-file=/etc/rsync.password:本地上存放的密码文件

**
在这里插入图片描述
后面就可以把命令直接加入到定时任务里面执行了!!!

三,配置rsync(Windows)客户端

下载客户端
https://www.itefix.net/cwrsync
下载完成后解压直接运行cwrsync.cmd 看到文件目录home里有本地的账户名即可

首先先进入安装客户端bin目录

cd  D:\rsync客户端\bin

执行命令

rsync -avzdP --delete /cygdrive/d/123 rsync_backup@172.16.110.137::backup

此处同样会让你输入密码才能进行传输
在这里插入图片描述
在D盘创建一个密码文件名为rsync.password.txt

执行命令

rsync -avzdP --delete /cygdrive/d/123 rsync_backup@172.16.110.137::backup --password-file=/cygdrive/d/rsync客户端/rsync.password.txt

在这里插入图片描述
命令详解:

rsync : 程序命令 avzP : 参数,avz代表详细的进行递增传输文件,P代表着传文件的进度
–delete: 在上传的时候文件会做对比,以源目录为准,如果不一样就执行删除命令,从而不会出现本地数据和备份数据不同的情况
/cygdrive/d/123 : 需要备份目录
rsync_backup:服务端上配置文件里面的授权用户
@172.16.110.137:服务端地址
–password-file=/cygdrive/d/rsync客户端/rsync.password.txt :客户端本地的密码文件
/cygdrive :这个是windows上固定的开头路径

错误合集:
1,一下报的权限错误是因为你的SELINUX安全管理器没关掉,此错误出现在linux6.9的客户端上,关掉就好了 在这里插入图片描述
2,



这篇关于rsync服务器文件增量备份的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程