2019-04-15课堂笔记

Rsync复制软件应用与实践

What 什麽是?

Why         为什么要用?

Whereis  在哪用?


[if !supportLists]1.     [endif]什麽是rsync?

Rsync,rsync英语全称为remote synchronization    缩写rsync

是开源、高速的、可实现本地以及远程,全量以及增量的数据复制(拷贝)工具。


2、rsync的作用


工作中需要数据备份。不同的机器、本地服务器目录、不同的机房之间的数据备份。都可以rsync完成。


3、rsync功能特性

[if !vml]

2019-04-15课堂笔记_第1张图片

[endif]


全量喝增量的区别

[if !vml]

2019-04-15课堂笔记_第2张图片

[endif]



5、增量复制原理

使用quick check 算法,只对增量的部分复制,根据大小属性的变化进行复制。

                  2.x比对差异後复制,3.x一边比对一边复制。


6、rsync三种工作模式介绍


[if !supportLists]1) [endif]本地模式(local)

Rsync就是一个命令


命令操作:

Rsync命令:

[if !supportLists]A. [endif]把数据从一个地方复制到另一个地方(仅在一台机器增量),相当于cp。

[if !supportLists]B. [endif]通过加参数实现删除的功能,相当于rm命令。

[if !supportLists]C. [endif]查看属性信息功能,相当于ls。




实践:基础不牢,地动山摇。——老男孩

听话出活——老男孩


[if !vml]

[endif]

2019-04-15课堂笔记_第3张图片


[if !supportLists]D. [endif]可以查看属性


[if !supportLists]2) [endif]远程shell模式

借助类似ssh隧道传输数据,适合不同的机器之间复制。


拉门推门思考:

Pull,拉:从远端拉取到本地。

[if !vml]

[endif]



Push,推:从本地推到远端。

[if !vml]

[endif]

[if !supportLists]3) [endif]rsync守护进程模式

首先要搭建rsync服务端(要有守护进程),然后才能在客户端实践推拉数据

重要模式,重点讲。

客户端语法暂时不讲。

Rsync服务模式:*****开启后台进程,接受别人访问。





7、rsync命令参数

[if !vml]

[endif]

--delete 删除

--exclude 排除

--exclude-from  从文件中排除

[if !vml]

2019-04-15课堂笔记_第4张图片

[endif]

企业常用参数组合:-avz或者-vzrtopg




8、rsync守护进程模式应用实践

[if !vml]

2019-04-15课堂笔记_第5张图片

[endif]


[root@backup~]# cat /etc/rsyncd.conf -n

    1    #rsync_config_______________start

    2    #created by oldboy

    3    #site:http://www.oldboyedu.com

    4    uid = rsync                                                   管理备份目录的用户

    5    gid = rsync                                                   管理备份目录的用户组

    6    use chroot = no                                          安全功能,数据是否算定到备份目录

    7    max connections = 200                            并发连接,同时多少客户端访问

    8    timeout = 600                                          超时时间

    9    pid file = /var/run/rsyncd.pid                  进程号所在的文件

   10    lock file =/var/run/rsync.lock                         锁文件

   11    log file =/var/log/rsyncd.log                          日志文件,查看报错等

   12    ignore errors                                              忽略错误

   13    read only = false                                        可写

   14    list = false                                                    不允许列表

   15    hosts allow = 172.16.1.0/24                   哪些主机可以访问

   16    hosts deny = 0.0.0.0/32                           拒绝哪些主机不允许访问。

   17    auth users = rsync_backup                      远程虚拟连接用户

   18    secrets file =/etc/rsync.password                 存放密码的文件,格式:用户名:密码权限必须600

   19    [backup]                                                      【模块名】远程访问使用模块名访问

   20    comment = welcome tooldboyedu backup!  说明注释

21    path = /backup/                        服务器端用户备份的目录,用户和组,rsync.rsync

启动和检查

Rsync –daemon

Systemctl start rsyncd



要了解知识的源头:

Man rsync 查命令的参数

Man rsyncd.conf  查配置参数




3)启动和检查

rsync --daemon

(c6及以前)

systemctl start rsyncd

systemctl enable rsyncd

systemctl status rsyncd

[root@backup ~]# ps -ef|grep sync|grep -v grep  #

检查进程

root       7521      1  0 11:39 ?        00:00:00 /usr/bin/rsync --daemon --no-detach

[root@backup ~]# netstat -lntup|grep 873 #

检查端口

tcp        0      0 0.0.0.0:873             0.0.0.0:*               LISTEN      7521/rsync

tcp6       0      0 :::873                  :::*                    LISTEN      7521/rsync

[root@backup ~]# lsof -i :873 #

检查端口

COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

rsync   7521 root    3u  IPv4  41439      0t0  TCP *:rsync (LISTEN)

rsync   7521 root    5u  IPv6  41440      0t0  TCP *:rsync (LISTEN)


如何查看某端口对应什麽服务?上面是答案

学会获取知识的源头。

配置密码文件

面试题:如何查看某端口对应什么服务?答案就是上面两个。

[if !supportLineBreakNewLine]

[endif]

4)配置密码文件

[root@backup ~]# echo "rsync_backup:oldboy" > /etc/rsync.password

[root@backup ~]# chmod 600 /etc/rsync.password

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

rsync_backup:oldboy

[root@backup ~]# ls -l /etc/rsync.password

-rw------- 1 root root 20 4

月  15 11:51 /etc/rsync.password

Rsync服务端配置完成。


客户端操作服务器

[if !supportLists]1.     [endif]方法1:认证密码文件

方法1:认证密码文件

[root@nfs01

~]# echo "oldboy" > /etc/rsync.password

[root@nfs01

~]# chmod 600 /etc/rsync.password

[root@nfs01

~]# cat /etc/rsync.password

oldboy

[root@nfs01

~]# ls -l /etc/rsync.password

-rw-------

1 root root 7 4月  15 11:55 /etc/rsync.password


方法2:

[root@nfs01

~]# echo ' export RSYNC_PASSWORD=oldboy' >>/etc/bashrc

[root@nfs01

~]# tail -1 /etc/bashrc

 export RSYNC_PASSWORD=oldboy

[root@nfs01

~]# . /etc/bashrc

[root@nfs01

~]# echo $RSYNC_PASSWORD

Oldboy



Rsync客户端 nfs01 配置完成



守护进程模式,客户端rsync的命令语法:

配置服务器端守护进程,实现数据传输:


[if !supportLists]1.     [endif]服务器端守护进程。2.客户端执行命令。

[if !vml]

2019-04-15课堂笔记_第6张图片

[endif]




 此时成果


克隆完成后,配置步骤

[if !supportLists]1.     [endif]主机名

[if !supportLists]2.     [endif]IP



配置rsync服务C/S架构

配置服务端

         安装rsync服务

         配置配置文件

         创建用户

         创建对应目录backup 并授权用户

         配置对应密码文件并授权600



配置客户端

         配置密码文件并授权600

         创建对应本分目录backup并授权用户为

你可能感兴趣的:(2019-04-15课堂笔记)