rsync 简单了解及部署

Linux版本为Ubuntu 16.04(大部分linux版本部署类似)

时间有点久了,忘记看哪个博客留下的记录,在此谢过那位大哥
rsync是可以实现增量备份的工具。配合任务计划,rsync能实现定时或间隔同步,配合inotify或sersync,可以实现触发式的实时同步。
rsync可以实现scp的远程拷贝(rsync不支持远程到远程的拷贝,但scp支持)、cp的本地拷贝、rm删除和"ls -l"显示文件列表等功能
Ps:scp和rsync的常见区别
(1)功能差异:scp不支持链接的拷贝,rsync支持
例如:$ rsync -l src dest
(2)效益差异:scp强调复制,rsync强调同步, rsync和scp在文件夹均不存在时,执行时间相差不大,但是文件夹存在的情况下差异很大。原因是scp是复制:若目的地文件不存在则新建,若存在则覆盖。而rsync是同步,比较两边文件是否相同,相同的话,就什么都不做,若存在差异就直接更新。

一、Rsync基本命令及用法

1、rsync同步基本说明
rsync同步过程中由两部分模式组成:决定哪些文件需要同步的检查模式以及文件同步时的同步模式。
(1)检查模式是指按照指定规则来检查哪些文件需要被同步,例如哪些文件是明确被排除不传输的。
(2)同步模式是指在文件确定要被同步后,在同步过程发生之前要做哪些额外工作。

2、rsync三种工作方式

在这里插入图片描述

3、OPTION说明

以下为常用选项,详细完整的选项说明见附录一(ps:最常用的是avz)
在这里插入图片描述

4、以socket进程监听方式进行数据同步(rsync daemon模式)

(1)Linux-Rsync服务器的搭建

rsync 服务器是指以 deamon 方式运行 rsync 服务的服务器,需要打开 rsync deamon 和启动 xinetd 服务。默认端口873。
rsync 客户端是发起 rsync 连接的服务器,安装rsync即可。
a、下载并安装
命令安装:sudo apt-get install rsync
或者源码安装:
wget https://download.samba.org/pub/rsync/src/rsync-3.1.2.tar.gz
tar -xzf rsync-3.1.2.tar.gz
cd rsync-3.1.2
./configure --prefix=/usr/local/rsync
make && make install
b、配置rsyncd.conf(需要超级用户的权限)(完整配置文件在附录二)
vim /usr/local/rsync/rsyncd.conf

全局参数

port=873 # 【注意:默认端口是873】
motd file=/usr/local/rsync/rsyncd.motd
log file=/usr/local/rsync/rsyncd.log
pid file=/var/run/rsyncd.pid

模块参数

[testmodule]
path=/home/test
use chroot=true
uid=0(如果没有设置成root用户,在使用中就需要超级用户的权限)
gid=0(如果没有设置成root用户,在使用中就需要超级用户的权限)
read only=false
exclude=/readme.txt /runtime
#auth users后的用户名随便给,可以是系统中不存在的用户名
auth users=rsync
secrets file = /usr/local/rsync/rsyncd.secrets
c、配置rsyncd.secrets(需要超级用户的权限)
vim /usr/local/rsync/rsyncd.secrets
rsyncd.secrets的内容的语法为 用户名:登录密码
举例
rsync:password
#rsyncd.secrets文件权限必须设置为600
chmod 600 /usr/local/rsync/rsyncd.secrets
d、配置rsyncd.motd(需要超级用户的权限)
vim /usr/local/rsync/rsyncd.motd

rsyncd.motd的内容举例:
welcome use rsync service !
e、启动rsync服务
/usr/local/rsync/bin/rsync --daemon --config=/usr/local/rsync/rsyncd.conf
f、配置rsync开机启动
vi /etc/rc.local
在末尾加上 /usr/local/rsync/bin/rsync --daemon --config=/usr/local/rsync/rsyncd.conf
**

(2)Linux-Rsync客户端的搭建

**
创建密码文件,/etc/rsyncd/rsyncd.pass,并修改为 600 权限
touch /etc/rsyncd/rsyncd.secrets
chmod 600 /etc/rsyncd/rsyncd.secrets
/etc/rsyncd/rsyncd.secrets 其内密码需要和服务端内/etc/rsyncd/rsyncd.secrets指定用户的密码保持一致
password

(3)客户端向服务端传输文件,如果是 873 端口,可以把 --port 去掉

rsync -vzrtopg --delete --progress /etc/fstab rsync@172.16.18.95::testmodule --password-file=/etc/rsyncd/rsyncd.secrets --port=873

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值