IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux中rsync备份服务器的简单部署 -> 正文阅读

[系统运维]Linux中rsync备份服务器的简单部署

文章目录


一、rsync是什么?

rsync 是一个开源实用程序,可提供快速的增量文件传输。 rsync 在 GNU 通用公共许可证下免费提供,目前由 Wayne Davison 维护。

可用rsync实现快速的,远程文件备份。

二、rsync的安装部署过程

1.在服务端安装软件程序

代码如下(示例):

yum install -y rsync  #安装程序

具体安装过程省略,出现下图表示安装成功。

Total download size: 404 k
Installed size: 815 k
Downloading packages:
rsync-3.1.2-10.el7.x86_64.rpm                                                          | 404 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : rsync-3.1.2-10.el7.x86_64                                                                  1/1 
  Verifying  : rsync-3.1.2-10.el7.x86_64                                                                  1/1 

Installed:
  rsync.x86_64 0:3.1.2-10.el7                                                                                 

Complete!

注意:一般的系统部署好yum仓库后,rsync服务是自动安装好的,所以可以使用rpm -qa rsync直接查看是否已经安装。如果已经安装,则不需要执行此步骤。

?

2.创建管理备份目录以及用户数据信息

?代码如下(示例):

useradd rsync -M -s /sbin/nologin  #创建一个rsync的虚拟用户,不创建家目录,设置成不能登录到系统模式。
rsync用户只需要管理服务端的备份目录,所以只需创建一个虚拟用户即可。

?

3.创建备份数据目录

?代码如下(示例):

mkdir /backup/    #创建一个备份目录
chown rsync.rsync /backup/ #将备份目录的属主和属组全部改成之前创建的管理用户rsync,由它来管理备份目录。

?

?这时可以看到备份目录的属主和属组均已改变。

4.创建用户列表文件

?代码如下(示例):

echo 'rsync_backup:oldboy123' >> /etc/rsync_password    #创建一个保存用户账户与密码的信息,让服务端进行身份验证。

chmod 600 /etc/rsync_password #设置用户密码文件的权限,不让其他人看到。

注意:此处创建的用户账户不需要使用useradd命令系统创建一个;在自定义的用户列表文件里创建就行。

5.编写配置文件

想要查找rsync服务的配置文件,可以使用rpm -qc来查找某个服务对应的配置文件。

rpm -qc rsync 
/etc/rsyncd.conf        #此处用到这一个配置文件
/etc/sysconfig/rsyncd

?在/etc/rsyncd.conf文件中进行编辑,具体编辑内容如下:

vim /etc/rsyncd.conf
uid = rsync                            #指定rsync服务备份目录或数据信息的管理用户
gid = rsync                            #指定rsync服务备份目录或数据信息的管理用户组
port = 873                             #指定端口号
fake super = yes                       #将uid伪装成root,uid不是root的情况下一定要写成yes,
                                        如果uid为root,要写成no以避免冲突
use chroot = no                        #提高数据备份安全性,但前提要将uid和备份目录的权限全部设置成root
max connections = 200                  #最大连接数
timeout = 300                          #连接会话超时时间,单位为秒
pid file = /var/run/rsyncd.pid         #保存服务程序进程文件路径
lock file = /var/run/rsync.lock        #保存服务程序锁文件路径
log file = /var/log/rsyncd.log         #保存服务程序日志文件路径
ignore errors                          #可以忽略简单的错误
read only = no                         #是否将备份目录设置成只读,肯定是No
list = false                    
hosts allow = 172.16.1.0/24            #允许172.16.1.0网段的客户端主机访问
hosts deny = 0.0.0.0/32                #拒绝0.0.0.0网段的客户端主机访问
auth users = rsync_backup              #指定可以进行认证用户信息,不需要系统创建
secrets file = /etc/rsync_password     #用户密码文件路径,权限一定要设成600
[backup]                               #模块信息
comment = "backup dir by oldboy"       #注释说明
path = /backup                         #数据备份目录的路径

6.启动服务程序

systemctl start rsyncd        #启动rsync服务
ps -ef|grep "rsync"           #查看rsync相应的进程信息
netstat -lntup|grep "rsync"   #查看rsync网络服务状态信息

可使用systemctl status rsyncd 查看rsync的状态,若显示为actice,则启动成功,可以进行使用!?

7.实例演示

rsync可以实现远程方式数据备份,其具体格式如下:

Access via remote shell:

Push: rsync [OPTION...] SRC... [USER@]HOST:DEST? ?将本地数据推送到远程主机上 ?
? Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]? ?将远程数据拉取到本地主机上
??

将本地数据推送到远程主机上:(标红的为我的备份服务端)代码如下:

rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup

这时,我们再到备份服务端中,此时可以看到,数据已经远程备份成功,并且属主和属组也自动更改为我们指定的rsync。

将远程数据拉取到本地主机上,可进行一个数据恢复,代码如下:

rsync -avz rsync_backup@172.16.1.41::backup/hosts /etc/

?

?

?

总结

这里对文章进行总结:
本文仅仅简单介绍了rsync服务的安装部署,其使用途径依然还有很多,想要部署成功,至少需要两台主机,并且能够互相访问。

本人为Linux初学者,经验有限,文章如有不足,欢迎指正,我会积极修改,谢谢!?????


?

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-10-20 12:54:25  更:2021-10-20 12:56:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 20:53:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码