Rsync参数介绍
Rsync参数介绍
一、Rsync
Rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据镜像同步备份的优秀工具。rsync适用于unix/linux/windows等多种操作系统平台。
http://www.samba.org/ftp/rsync/rsync.html
Rsync全称为remote rynchronization,rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像、远程备份的功能,这个功能类似于scp命令,但优于scp。还可以在本地主机的不同分区或目录之间全量及增量的复制数据,这类似于cp命令,同样也优于cp命令。
rsync还可以实现类似rm的删除功能
rsync的特性
支持拷贝特殊文件如链接,设备等
可以有排除揸定文件或目录同步的功能,相当于打包命令tar的排除功能
可以做到保持原文件或目录的权限、时间、软硬链接、属主、组等所有属性均不改变。
可实现增量同步,既只同步发生变化的数据,因此数据传输效率很高。
可使用rcp,rsh,ssh等方式来配合传输文件
可以通过socket(进程方式)传输文件和数据
支持匿名的或认证(无需系统用户)的进程模式传输,可实现主主便安装的进行数据备份及镜像
二、Rsync命令同步参数选项
rsync [OPTION…] SRC… [DEST]
常用参数选项说明:
-v --verbose详细模式输出,传输时的进度等信息
-z --compress 传输时进行压缩以提高传输效率
-r --recursive 对子目录以递归模式
-t --time 保持文件时间信息
-o --owner 保持文件属主信息
-p --perms 保持文件权限
-g --group 保持文件属组信息
-P --progress 显示同步过程及传输时的进度等信息
-a --archive 归档模式,等于-rtopgDl
-D --devices 保持设备文件信息
-l --links保留软链接
-e --rsh=COMMAND 使用的信协议,如ssh
--exclude=PATTERN 指定排除不需要传输的文件模式
三、rsync大致使用三种主要的传输数据的方式:
主机本地间的数据传输(此类似于cp命令的功能)
借助rcp,ssh等通道来传输数据(此类似于scp命令的功能)
以守护进程(socket)的方式传输数据(这个是rsync的重要的功能)
- 本地数据传输模式(local-only mode)
语法:rsync [OPTION…] SRC… [DEST]
1) rsync为同步的命令
2) [OPTION..]为同步时的参数选项
3) SRC为源目录、分区或文件
4) [DEST]为目的分区、文件或目录等
实例1:把系统的hosts文件同步到/opt目录
[root@58server1 ~]# rsync /etc/hosts /opt
实例2:把opt目录拷贝到/mnt下
[root@58server1 ~]# rsync -avz /opt /mnt/
提示:在上面例子中,/opt/和/opt 仅差一个/意义就不大相同,/opt/把/opt/目录里面的内容同步,opt目录本身并不同步,而后者/opt 表示把opt目录本身及里面的内容全都同步到/tmp下
- 通过远程shell进行数据传输(remote shell mode)
通过远程shell (rcp、ssh等)传输可以分为两种情况,其语法分别为
拉取 pull: rsync [OPTION…] [USER@]HOST:SRC… [DEST]
推送 push: rsync [OPTION…] SRC… [USER@]HOST:DEST
1) Rsync为同步的命令
2) [OPTION..]为同步时的参数选项
3) [USER@]HOST为Rsync同步的远程连接用户和主机地址
4) SRC为源分区、文件或目录等,和HOST之间用一个冒号连接
5) [DEST]为目的分区、文件或目录等
其中拉取表示同远端主机把数据同步到执行命令的本地主机相应目录;推送表示从本地主机执行命令把本地的数据同步到远端主机指定目录下。
拉取实例:
rsync -avzP -e "ssh -p22" root@192.168.1.111:/opt /tmp
推送实例:
rsync -avzP /tmp -e "ssh -p22" root@192.168.1.111:/opt
语法说明:
1)-vzrtopg 相当于上文伯-avz 表示同步时文件和目录属性不变
2)--progress显示同步的过程,可以用-P替换
3)-e “ssh -p 22” 表示通过ssh的通道传输数据
4)root@192.168.1.111:/opt 是远程的主机用户,地址和路径
5)/tmp 本地的路径
配置ssh key密钥实现数据免登陆验证
[root@64server1 .ssh]# ssh-keygen -t dsa
[root@64server1 .ssh]# ssh-copy-id -i id_dsa.pub 192.168.1.111
#!/bin/sh
. /etc/init.d/functions
file="$1"
remote_dir="$2"
if [ $# -ne 2 ];then
echo "usage:$0 argv1 argv2"
echo "must have two argvs."
exit
fi
for ip in $(cat /home/scripts/iplist.txt)
do
# scp -P22 -r -p $file root@$ip:~ >/dev/null 2>&1 &&\
#ssh -p22 -t root@$ip sudo rsync ~/$file $remote_dir >/dev/null 2>&1
rsync -avzP $1 -e "ssh -p 22" root@$ip:$2 >/dev/null 2>&1
if [ $? -eq 0 ];then
action "$ip is successful." /bin/true
else
action "$ip is failure." /bin/false
fi
done
Rsync参数介绍的更多相关文章
- rsync的介绍及参数详解,配置步骤,工作模式介绍
rsync的介绍及参数详解,配置步骤,工作模式介绍 rsync是类unix系统下的数据镜像备份工具.它是快速增量备份.全量备份工具. Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主 ...
- Rsync服务介绍与配置
Rsync 简要介绍 rsync 是一个用于增量文件传输的开源工具,不得不说,rsync简直是不同服务器间传输文件.同步文件的利器.与FTP相比,它具有非常简单的安装和配置方法.而且,rsync可以只 ...
- rsync工具介绍
rsync工具介绍 http://man.linuxde.net/rsync rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的“rsync算法” ...
- Linux操作系统的文件查找工具locate和find命令常用参数介绍
Linux操作系统的文件查找工具locate和find命令常用参数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.非实时查找(数据库查找)locate工具 locate命 ...
- SQLMAP参数介绍
转自:http://zhan.renren.com/bugpower?gid=3602888498044629629&checked=true SQLMAP参数介绍 sqlmap的使用方式:p ...
- G++ 参数介绍(转载)
g++参数介绍 From: http://www.cnblogs.com/lidan/archive/2011/05/25/2239517.html gcc and g++分别是gnu的c & ...
- pentaho cde 画图参数介绍
初步接触pentaho,由于在国内的资料很少,唯有看英文文档,做了N次反复尝试,挖掘了pentaho CDE中画图的一些基本参数. 下面就列出来了一些常用参数介绍: crosstabMode:表明如果 ...
- mysql性能优化学习笔记-参数介绍及优化建议
MySQL服务器参数介绍 mysql参数介绍(客户端中执行),尽量只修改session级别的参数. 全局参数(新连接的session才会生效,原有已经连接的session不生效) set global ...
- 【体系结构】Oracle参数介绍
[体系结构]Oracle参数介绍 1 BLOG文档结构图 2 前言部分 2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩ ...
随机推荐
- 二十二:视图之add_url_rule和app.route
flask注册视图有两种方式 一:add_url_rule()add_url_rule源码:rule:接口地址view_func=视图函数endpoint=终结点,可以理解为给当前视图取的别名,最直观 ...
- Sqlserver实现故障转移 — 域控(1)
一 .实现目的:实现两台sqlserver数据库服务器的实时备份及故障转移:即:其中一台数据库服务器宕机后,应用程序可自动连接到另一台数据库服务器继续运行. 二.域控:域控制器是指在“域”模式下,至 ...
- 在Linux命令行模式安装VMware Tools
在Linux命令行模式安装VMware Tools 方法/步骤1: 首先启动CentOS 7,在VMware中点击上方“VM”,点击“Install VMware Tools...”(如已安装则显示“ ...
- js在页面中添加一个元素 —— 添加弹幕
参考地址 [往下拉 —— 使用HTML DOM appendChild() 方法实现元素的添加 ] 一.创建 HTML <div class="right_liuyan"&g ...
- 搜索框的测试checklist
一:简单搜索输入框测试用例1:不输入任何字符,点击搜索按钮,一般搜索出网站所有的信息 2:一般搜索输入框中的有文章显示,当鼠标点击时,文章消失 3:输入全角/半角中文字符(一个字符.超长字符.已经信息 ...
- 找工作Java面试 题搜集
面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面: 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些行为的 ...
- 【Python开发】【神经网络与深度学习】如何利用Python写简单网络爬虫
平时没事喜欢看看freebuf的文章,今天在看文章的时候,无线网总是时断时续,于是自己心血来潮就动手写了这个网络爬虫,将页面保存下来方便查看 先分析网站内容,红色部分即是网站文章内容div,可以看 ...
- vue中,基于echarts 地图实现一个人才回流的大数据展示效果
0.引入echarts组件,和中国地图js import eCharts from 'echarts' import 'echarts/map/js/china.js'// 引入中国地图 1. 设置地 ...
- etcd集群添加节点
查看当前集群节点信息 # etcdctl member list --write-out=table +------------------+---------+------------------- ...
- Linux如何查看进程是否启动,查看端口占用
Linux系统中经常需要查看某个进程是否已经启动,启动位置在哪里,某个端口是否被占用,被哪个进程占用等,这些都可以通过命令来完成,本文讲述如何查看进程是否启动,查看端口占用 1.通过ps -ef | ...