linux常用工具及服务(rsync)

1、什么是rsync?

rsync(remote  synchronization)是一种远程同步工具。

2、rsync的工作原理

(1)客户端构造FileList,其包含有要与服务器同步的所有文件信息对,即name->id(id

是用于唯一表示文件的,比如MD5)。

(2)服务端根据客户端提供的FileList,删除服务器端以及存在的MD5,只保留不存在与服务端的文件信息对,生成一个新的FileList,返回给客户端。

(3)客户端根据收到的新的FileList,发送对应的MD5文件。

3、rsync安装方式

(1)源码安装

1、下载

wget https://download.samba.org/pub/rsync/src/rsync-3.2.3.tar.gz

2、解压并安装

tar -xvf rsync-3.2.3.tar.gz 

3、编译安装

./configure make &&make install

 源码安装rsync时,其编译时所需要的gcc库文件尽量提前安装完毕 , 默认安装到/usr/local/目录下

(2)yum安装(一般都是用yum安装)

yum  install   -y    rsync

-y 的意思是,在安装过程中遇到选择y\n的时候都自动选择yes

4、rsync的认证方式

(1)rsync-daemon方式

这种方式默认监听的端口是873,并且rsync-daemon方式需要客户端和服务端都安装rsync,以及都要配置rsync配置文件,但是只需要启动服务端的rsync服务,客户端不启动服务也不影响。

(2)ssh认证方式

ssh认证方式,只需要客户端和服务端都安装rsync服务,不需要启动

-e  选项指定协议

例如:

rsync   -r   -e   ssh     /root/test     root@10.10.10.10:/root/

5、两种认证方式的区别

ssh 协议认证连接的两端是通过管道完成通信和数据传输的,当连接到远程主机 时,将在远程主机 fork 出 rsync 进程使其成为 rsync server;

而 rsync 协议认证是 事先在远程主机上运行 rsync 守护进程,监听套接字等待客户端的连接,建立连接后 所有通信方式都是通过套接字完成的。

6、rsync命令参数

 [root@localhost ~]# rsync [OPTION] SRC DEST

用于本地备份

[root@localhost ~]# rsync [OPTION] SRC [USER@]HOST:DEST

将客户端的内容传送到服务端(ssh协议)

[root@localhost ~]# rsync [OPTION] [USER@]HOST:SRC DEST

将服务端的指定内容拉回客户端(ssh协议)

[root@localhost ~]# rsync [OPTION] [USER@]HOST::SRC DEST

将客户端的内容传送到服务端(rsync协议)

[root@localhost ~]# rsync [OPTION] SRC [USER@]HOST::DEST

将服务端的指定内容拉回客户端(rsync协议)

(1)相关参数解释

src:表示要备份的目标文件路径

dest:表示目标文件要存放的路径

/tmp --表示将tmp目录本身及目录下的内容进行传输

/tmp/ --表示只传输tmp目录下面的内容信息

user@:指定登录系统的用户名,若不写,则默认为root用户

host:目标IP地址

(2)option常用选项

1、-a         

这是归档模式,表示以递归方式传输文件,并保持所有属 性,它等同于-r、-l、-p、-t、-g、-o、-D 选项。-a 选项 后面可以跟一个 --no-OPTION,表示关闭 -r、-l、-p、- t、-g、-o、-D 中的某一个,比如-a --no-l 等同于 -r、- p、-t、-g、-o、-D 选项。

2、-r   

表示递归处理子目录,只传输文件的时候不需要加,若要将子目录一并传输,需要加

3、-v  

打印一些信息,比如文件列表,数量

4、-p

表示传输文件时保留文件的权限

5、-o

保留属主信息

6、-g

保留属组信息

7、-D

保留设备信息

8、-t

保留时间信息

9、-l

保留软连接信息

(3)option特殊选项

1、--delete

删除dest文件中src没有的文件

2、--exclude=pattern(英文意思是模式)

排除不需要传输的文件,比如.txt格式的文件

3、--progress

在传输过程中显示同步的状态,比如文件数量,文件传输进度

4、-n

如果不确定传输的命令的结果是否正确,可以用-n 参数模拟命令执行的结果

7、rsync命令中如何选择传输时使用的方式?

若使用单冒号:则表示使用ssh隧道传输,

若使用双冒号::则表示使用rsync模块的传输方式。

8、rsync协议和ssh协议的区别?

rsync协议需要额外的配置文件,稍微复杂,但是可靠性高,比较安全。

ssh协议,操作简单,但是有泄露服务器root的password的风险。

9、rsync 命令的其他用法(用法相同)

类似于 cp 命令 -- 实现本地备份传输数据

类似于scp 命令 -- 远程备份传输数据

类似于 rm 命令 -- 实现无差异同步备份

类似于 ls 命令 -- 本地文件信息查看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值