Rsync 的备份

实验所需环境

准备两台服务器
服务器1的ip地址为: eth0 10.0.0.31 NAT eth1 172.16.1.31 LAN
服务器2的IP地址为: eth0 10.0.0.41 NAT eth1 172.16.1.41 LAN

今日内容:备份

1.什么是备份

备份就是把文件在复制一份存储起来(给文件增加一个副本)

2.为什么要做备份

2.1数据非常重要

2.2保证数据不丢失

2.3快速的恢复数据

3.能不能不做备份

可以不做数据备份,不重要的数据不做备份,重要的数据一定要做备份。

4.备份应该咋样做,分为两种

完全备份:完整的复制一份。但是完整备份缺点是效率低下,占用的空间多。

增量备份:只备份数据变化的那一部分,效率较高节省空间。

5.备份使用的工具

本地备份:cp (完整备份,每次都全部拷贝一下)

远程备份:scp 、rsync

6.备份工具rsync基本介绍

rsync remote rsync远程同步,可以实现不同主机之间的同步,同时支持增量和全量的同步方式。

7.rsync备份工具应用几种场景

前置条件:

​ 推push:将本地的数据推送到备份服务器

​ 拉pull:将备份服务器的数据拉取到本地

8.rsync三大传输模式

#1.本地传输
#2.远程传输
#3.守护进程
##命令安装:yum install rsync -y

9.查看rsync的帮助手册

SYNOPSIS
       Local:  rsync [OPTION...] SRC... [DEST]

       Access via remote shell:
         Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
         Push: rsync [OPTION...] SRC... [USER@]HOST:DEST

       Access via rsync daemon:
         Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
               rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
         Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
               rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST

       Usages  with  just one SRC arg and no DEST arg will list the source
       files instead of copying.

1.本地传输方式:单个主机之间的数据拷贝类似于cp

[root@oldboy ~]# rsync -azv /root/xiaolai.txt /tmp/
sending incremental file list
xiaolai.txt
sent 90 bytes  received 35 bytes  250.00 bytes/sec
total size is 0  speedup is 0.00
[root@oldboy ~]# ls /tmp/
xiaolai.txt
rsync:命令
-azv:选项
/root/xiaolai.txt 备份的源
/tmp/ 备份到哪

2.远程传输方式,借助ssh协议进行传输意味着他在传输的过程中需要知道传输端的用户名和密码

         Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
         Push: rsync [OPTION...] SRC... [USER@]HOST:DEST
远程传输方式以文件为示例
#1.将本地/root/xiaolai.txt文件推送到172.16.1.41服务器的/opt目录使用的41服务器的root用户
[root@oldboy ~]# rsync -azv /root/xiaolai.txt root@172.16.1.41:/opt
root@172.16.1.41's password: 
sending incremental file list
xiaolai.txt
sent 90 bytes  received 35 bytes  22.73 bytes/sec
total size is 0  speedup is 0.00
#查看172.16.1.41服务器的/opt目录
[root@oldboy ~]# ls /opt/
etc  file.txt  xiaolai.txt
#2.将服务器172.16.1.41/opt/目录下的xiaolai.txt拉到本地服务器172.16.1.34 下的/opt目录下
并在服务器172.16.1.41/opt/xiaolai.txt中追加内容为123
[root@oldboy ~]# echo "123">/opt/xiaolai.txt
[root@oldboy ~]# cat /opt/xiaolai.txt
123
[root@oldboy opt]# rsync -azv root@172.16.1.41:/opt/xiaolai.txt /opt/
root@172.16.1.41's password: 
receiving incremental file list
xiaolai.txt
sent 43 bytes  received 97 bytes  40.00 bytes/sec
total size is 4  speedup is 0.03
#查看172.16.1.31服务器的/opt/目录
[root@oldboy opt]# cat /opt/xiaolai.txt 
123

*2.1远程传输方式以文件为示例

##远程传输方式以文件为示例
#推送目录
[root@oldboy ~]# rsync -azv /etc/ root@172.16.1.31:/opt/
查看172.16.1.31服务器的/opt/目录
[root@oldboy opt]# ll  /opt/
总用量 1132
drwxr-xr-x  3 root root      101 2月  28 11:52 abrt
-rw-r--r--  1 root root       16 2月  28 11:59 adjtime
-rw-r--r--  1 root root     1518 6月   7 2013 aliases
-rw-r--r--  1 root root    12288 2月  28 12:02 aliases.db
drwxr-xr-x  2 root root      261 4月  13 20:12 alternatives
-rw-------  1 root root      541 4月  11 2018 anacrontab
[root@oldboy ~]# rsync -azv /etc root@172.16.1.31:/opt/
查看172.16.1.31服务器的/opt/目录
[root@oldboy opt]# ls /opt/
etc
特别需要注意的是:
1.添加/表示推送目录下的所有内容
2.不添加/表示推送该目录本身,以及目录下的内容
依托对端主机的用户身份权限
1.使用系统root用户(不安全)
2.使用系统的普通用户(会出现权限不够的情况)

[root@oldboy ~]# rsync -azv <u>/etc/</u> root@172.16.1.31:/opt/

[root@oldboy ~]# rsync -azv <u>/etc</u> root@172.16.1.31:/opt/

3.守护进程模式:不使用系统用户,使用的是一个虚拟的用户(不存在的用户)来实现推送

  Access via rsync daemon:
         Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
         Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
服务:运行在我们的后台,持续提供服务支持,就三步
0.规划
172.16.1.41 作为我们的rsync服务端
172.16.1.31 作为我们的rsync客户端
1.安装
[root@oldboy ~]# yum install rsync -y
2.配置
[root@backup ~]# vim /etc/rsyncd.conf
uid = rsync
gid = rsync
port = 873
fake super = yes
use chroot = no
max connections = 200
timeout = 600
ignore errors
read only = false
list = false
auth users = rsync_backup
secrets file = /etc/rsync.passwd
log file = /var/log/rsyncd.log
#####################################
[backup]
comment = welcome to oldboyedu backup!
path = /backup
--- 配置详解
[root@backup ~]# vim /etc/rsyncd.conf
uid = rsync                      # 运行进程的用户
gid = rsync                      # 运行进程的用户组
port = 873                       # 监听端口
fake super = yes                 # 不需要rsync已root身份运行,就可以存储文件的完整属性
use chroot = no                  # 禁锢推送的数据至某个目录, 不允许跳出该目录
max connections = 200            # 最大连接数
timeout = 600                    # 超时时间
ignore errors                    # 忽略错误信息
read only = false                # 对备份数据可读写
list = false                     # 不允许查看模块信息
auth users = rsync_backup        # 定义虚拟用户,作为连接认证用户
secrets file = /etc/rsync.passwd # 定义rsync服务用户连接认证密码文件路径

[backup]                # 定义模块信息
comment = commit        # 模块注释信息
path = /backup          # 定义接收备份数据目录
3.根据配置文件解读,我们发现还需要做一些初始化的操作
3.1创建rsync进程运行的用户
useradd -M -s /sbin/nologin rsync
id rsync
3.2定义虚拟用户名rsync_backup的密码
echo "rsync_backup:123456">/etc/rsync.passwd
chmod 600 /etc/rsync.passwd
3.3创建存储的数据目录/backup/
mkdir /backup
chown -R rsync.rsync /backup/
4.启动
systemctl start rsyncd
systemctl enable rsyncd
5.测试
Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
1.使用172.16.1.31推送/root/client.txt文件至备份服务器41的back模块
rsync -avz /root/client.txt rsync_backup@172.16.1.41 ::backup
Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
2.拉取172.16.1.41备份服务器backup模块下的数据
rsync -avz rsync_backup@172.16.1.41::backup /opt

6.rsync选项

-a           #归档模式传输, 等于-tropgDl
-v           #详细模式输出, 打印速率, 文件数量等
-z           #传输时进行压缩以提高效率
-r           #递归传输目录及子目录,即目录下得所有目录都同样传输。
-t           #保持文件时间信息
-o           #保持文件属主信息
-p           #保持文件权限
-g           #保持文件属组信息
-l           #保留软连接
-P           #显示同步的过程及传输时的进度等信息
-D           #保持设备文件信息
-L           #保留软连接指向的目标文件
-e           #使用的信道协议,指定替代rsh的shell程序
--exclude=PATTERN   #指定排除不需要传输的文件模式
--exclude-from=file #文件名所在的目录文件
--bwlimit=100       #限速传输
--partial           #断点续传
--delete            #让目标目录和源目录数据保持一致
##实战案例
实战1:rsync的limit限速1=1MB(推送将/opt/1.txt推送到41服务器的/backup目录)
rsync -azv --bwlimit 1 -P /opt/1.txt rsync_backup@172.16.1.41::backup
实战2:rsync实现数据无差异同步
推:客户端推送到服务端,服务端必须与客户端保持一致
rsync -azv --delete -P /opt/ rsync_backup@172.16.1.41::backup
拉:客户端拉取服务端数据,服务端有什么,客户端就有什么客户端必须与服务端一致
rsync -azv --delete -P rsync_backup@172.16.1.41::backup /opt/
实战3:无需输入密码实现rsync推送和拉取
方式一:--password-file
echo "123456">/etc/rsync.pass
chmod 600 /etc/rsync.pass
rsync -azv --delete rsync_backup@172.16.1.41::backup /opt/ --password-file=/etc/rsync.pass
方式二:设定环境变量方式
在31服务器上执行
cd /opt/
export RSYNC_PASSWORD=123456#只当前窗口有用,换一个窗口就没用了(放到脚本中使用非常方便)
rsync -azv --delete rsync_backup@172.16.1.41::backup /opt/
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,530评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,403评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,120评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,770评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,758评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,649评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,021评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,675评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,931评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,751评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,410评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,004评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,969评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,042评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,493评论 2 343

推荐阅读更多精彩内容