day 30 备份服务rsync

网络命令总结

ping命令

作用:测试命令是否可以ping通
选项:
-c :测试ping的次数
-w:测试Ping的次数
-i: 发送包的间隔时间
-q: 查看ping的结果,不显示过程
-f:快速ping

nc/telent /nmap命令

telnet: 检查主机的远程端口是否开启
telnet 10.0.0.200 22
nc 10.0.0.200 22
nmap -p [port ] 22 10.0.0.200
-p:设置本地主机使用的通信端口

tcpdump命令

作用:网络抓包命令 (命令行)
wireshark 图形化抓包软件
格式:tcpdump [选项]
-i: 指定监听的接口
-nn:用Ip地址进行监听
-c:指定抓包的次数
-X:把协议网关和包内容都以16进制显示
-w:将流量保存到文件当中
-r:读取raw packets文件

备份服务rsync

系统主机克隆说明
  1. 虚拟主机准备工作
    (1) 虚拟主机网络配置
    (2) 虚拟主机系统优化
  2. 主机克隆过程说明
    链接克隆:利用模板主机做为克隆主机生成链接克隆主机,节省资源空间,效率高,但是依赖模板主机,一旦模板主机删除,链接主机就不能使用了。
    完整克隆:独立于模板主机,浪费物理磁盘容量,效率低。
rsync概述

概念说明:rsync是一款开源的备份工具,可以在不同之间进行同步,可实现全量备份与增量备份,因此非常适合用于构集中式备份或异地备份等应用。
Rsync的监听端口号:873
rsync的运行模式:C/S
备份方式:
完全备份:将客户端的所有数据备份到服务端下,效率低下,占用空间。
增量备份:将客户端的数据增量备份到服务端下,效率高,节省空间,适合异地备份。
作用:
(1)用于将数据信息进行恢复;
(2)用于出现问题进行文件信息的对比。
(3)对网站服务数据进行统一管理。
增量备份实现的两种方式:
(1)比对文件属性;
(2)比对md5加密数据;用到的是md5sum命令,如果修改文件的信息,md5sum输出的信息会大有不同。或者可以用rsync -c /etc/hosts命令和md5sum会有一样的效果。

▽root@oldboy ~]# md5sum /etc/hosts
79cdfa52462ba75cac1c728451a045e6  /etc/hosts
[root@oldboy ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.5    lb01
10.0.0.6    lb02
10.0.0.7    web01
10.0.0.8    web02
10.0.0.9    web03
10.0.0.31   nfs01
10.0.0.41   backup
10.0.0.51   db01
10.0.0.61   m01
10.0.0.71   zabbix

~                                                                                                         
~                                                                                                                                                                                                  
"/etc/hosts" 13L, 336C written                                                               
[root@oldboy ~]# md5sum /etc/hosts
a14fefb7723d76ea86c2de2bce6bff6b  /etc/hosts
rsync的应用场景

推(push):将所有主机的数据推下服务端,会导致数据同步缓慢(适合少量数据备份)
拉(pull): 将服务器的数据下载到主机,会导致备份服务器开销大。
在工作中备份服务器设置的数量说明:
同一机房应该有多个备份服务器;
不同机房应该有多个备份服务器;
不同地址位置应该有多个备份服务器。
例如:中石油备份数据架构解决方案:两地三中心
需要备份什么样的数据:
1.内部人员就备份的数据信息包括:脚本信息或者代码信息,每个服务的配置文件,数据库文件,日志文件等。这些文件都以定时任务的方式进行数据备份;
2.外部人员备份的数据信息包括:主要是用户信息,视频,图片和附件信息。这些文件都以实时数据备份。

rsync的本地传输方式

Local: rsync [OPTION...] SRC... [DEST]
Rsync:命令
Option:选项
SRC:目标主机源文件
DEST:下载至本地哪个位置

[root@oldboy ~]# rsync /etc/hosts /tmp/
[root@oldboy ~]# ls /tmp/
hosts        vmware-root_5884-969520887   vmware-root_6057-1681202140  vmware-root_6134-1003139195
oldboy1.txt  vmware-root_5963-1690049222  vmware-root_6064-734560284
oldboy2.txt  vmware-root_6052-692291465   vmware-root_6108-960608207
oldboy3.txt  vmware-root_6054-700614155   vmware-root_6111-1983327635

[root@oldboy ~]# rsync -a oldboy /tmp/
[root@oldboy ~]# ls /tmp/
hosts                        vmware-root_6052-692291465   vmware-root_6108-960608207
oldboy                       vmware-root_6054-700614155   vmware-root_6111-1983327635
vmware-root_5884-969520887   vmware-root_6057-1681202140  vmware-root_6134-1003139195
vmware-root_5963-1690049222  vmware-root_6064-734560284
PS:可以看出,备份的是oldboy目录及以下的所有文件

[root@oldboy ~]# rsync  -a oldboy/ /tmp/
[root@oldboy ~]# ls /tmp/
hosts        vmware-root_5884-969520887   vmware-root_6057-1681202140  vmware-root_6134-1003139195
oldboy1.txt  vmware-root_5963-1690049222  vmware-root_6064-734560284
oldboy2.txt  vmware-root_6052-692291465   vmware-root_6108-960608207
oldboy3.txt  vmware-root_6054-700614155   vmware-root_6111-1983327635
PS:如果oldboy后面加/,备份的是下面的所有文件信息。
rsync备份的远程信息

Access via remote shell:
Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
Push: rsync [OPTION...] SRC... [USER@]HOST:DEST
Pull:下载,拉取命令
[USER@]:登录远程主机用户信息,默认使用当前用户进行连接
HOST::远程主机IP信息或者主机名称信息
SRC...:远程主机信息备份到本地信息
[DEST]: 将数据保存到本地主机路径
Push:上传,推命令
SRC...:本地主机信息备份到远程主机
[USER@]:登录远程主机用户信息,默认使用当前用户进行连接
HOST::远程主机IP信息或者主机名称信息
DEST:将数据保存到远程主机路径

[root@oldboy ~]# scp -r /etc/hosts 172.16.1.41:/tmp/
The authenticity of host '172.16.1.41 (172.16.1.41)' can't be established.
ECDSA key fingerprint is SHA256:qh/xYmE6E7fb4x5uxLP1ZgTA5W4Vsp/Kjy4VLOputcQ.
ECDSA key fingerprint is MD5:99:3d:3a:63:01:ed:d8:bf:14:ca:ab:34:29:9f:48:d1.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.16.1.41' (ECDSA) to the list of known hosts.
root@172.16.1.41's password: 
hosts                                                                        100%  336   465.0KB/s   00:00    

[root@backup ~]# ls /tmp/
hosts             vmware-root_5647-1958685219  vmware-root_6023-1715281389  yum.log
ks-script-1g4Paa  vmware-root_5931-1957964446  vmware-root_6057-1681202140
rsync守护进程配置方式
  • 服务端的配置方式
    第一步:检查软件是否安装
[root@backup ~]# rpm -qa | grep rsync
rsync-3.1.2-4.el7.x86_64

第二步:配置文件信息内容

[root@backup ~]# cat /etc/rsyncd.conf 
uid = rsync
gid = rsync
port = 873
#fake super = yes
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
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
[backup]
comment = "backup dir by oldboy"
path = /backup
注释信息:
# 管理备份目录的属主信息 uid = rsync
# 管理备份目录的属组信息 gid = rsync
# 备份服务的默认端口信息 port = 873
# 不让rsync以root用户运行,允许接收文件的完整属性#fake super = yes
# 禁锢推送的数据至某个目录,不允许跳出该目录 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
# 忽略错误信息 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
# 定义rsync服务用户连接认证的密码文件路径 secrets file = /etc/rsync.password
# 模块名称[backup]
# 模块注释 信息comment = "backup dir by oldboy"
# 定义接收备份数据目录 path = /backup

第三步:创建虚拟用户rsync

Useradd -M -s /sbin/nologin rsync

第四步:创建密码文件,并修改密码文件权限信息

[root@backup ~]# cat /etc/rsync.password
rsync_backup:oldboy123

第五步:创建备份目录,修改目录的属主和属组信息

[root@backup ~]# ll /backup/ -d
drwxr-xr-x 2 rsync rsync 6 Aug 12 19:06 /backup/
[root@backup ~]# chown   -R rsync.rsync /backup/    

第六步:启动或重启服务

Systemctl restart rsyncd
  • 客户端进行测试
[root@oldboy ~]# rsync -avz /root/read.sh  rsync_backup@172.16.1.41::backup
Password: 
sending incremental file list
read.sh
rsync: chgrp ".read.sh.nkY1Sc" (in backup) failed: Operation not permitted (1)

sent 325 bytes  received 126 bytes  100.22 bytes/sec
total size is 450  speedup is 1.00
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1178) [sender=3.1.2]
rsync的原理

rsync的原理
第一步:客户端向服务端发送请求传输数据,数据内容包括命令信息,认证用户信息和传输数据信息。
第二步:服务端向客户端发送接收信息,并审核认证的用户,会回复提示输入密码的信息;
第三步:客户端接收到服务端的指令,并输入密码信息,发送请求并传输数据;
第四步:服务端接收到客户端的密码信息,并进行审核密码是否正确,正确则会发送客户端确认信息;
第五步:客户端向服务端发送数据进行传输,对用户信息进行转换------>rsync
第六步:服务端接收数据完毕,保存到备份目录当中,备份目录的属主为rsync。

rsync的命令格式
image.png
守护进程多模块的调用
  • 守护进程多模块的创建
[root@backup ~]# tail /etc/rsyncd.conf 
[sa_backup]
comment = "backup dir by oldboy"
path = /sa_backup
exclude from = /backup/sa_backup/oldboy/exclude.txt
[dev_backup]
comment = "backup dir by oldboy"
path = /backup/dev_backup
[dba_backup]
comment = "backup dir by oldboy"
path = /backup/dba_backup
  • 守护进程 数据排除功能
    --exclude :排除指定文件信息
    --exclude-from:排除多个文件信息
    服务端:
    exclude
    exclude from
    在全局模式中, 所有模块都可以生效;
    在局部模式中,只有设置exclude模块可以生效。
  • 守护进程无差异同步
    --delete 客户端数据向服务端无差异性传输数据。
  • 守护进程模式创建子目录
  • 守护进程模式访问控制策略
    白名单/黑名单
    第一种情况:只有允许的白名单策略,没有禁止黑名单,白名单可以放行,其它流量阻止;
    第二种情况:没有允许的白名单,只有禁止黑名单,黑名单阻止,其它放行;
    第三种情况:有白名单也有黑名单,对白名单放行,对黑名单阻止,默认允许。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,717评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,501评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,311评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,417评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,500评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,538评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,557评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,310评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,759评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,065评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,233评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,909评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,548评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,172评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,420评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,103评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,098评论 2 352

推荐阅读更多精彩内容

  • 转载自骏马金龙的博客 2.1 说在前面的话 rsync官方网站 rsync是可以实现增量备份的工具。配合任务计划,...
    whisshe阅读 3,859评论 0 3
  • 一、服务学习技巧 1.安装部署 yum、rpm(一解决软件之间的依赖关系;二知晓软件属于哪个安装包)、编译(在ng...
    荆俊玮阅读 401评论 0 0
  • 1.ping --- 测试网络连通性 -c ---指定数据包发送数量-i --- 指定数据包发送间隔-q ---指...
    斗魂_2e5d阅读 203评论 0 0
  • rsync 备份服务器,相当于仓库 1.什么是rsync? (片面理解:sync是把数据写入磁盘,前边加一个r,...
    国王12阅读 458评论 0 0
  • 测试环境: rsync-server:192.168.1.132 rsync-client:192.168.1.2...
    lailai900201阅读 2,358评论 0 10