rsync命令的基本使用
rsync命令的基本使用
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
rsync服务软件是一款开源,高速的,数据同步(拷贝)工具。
一.rsync服务的特点
1>.本地拷贝
可以把数据从一个路径复制到另一个路径,类似与cp和mv的功能。
2>.异地拷贝
可以从一台机器把数据复制到另一台机器,类似与scp。
3>.增量备份
可以实现增量拷贝,只把多的内容拷过去,效率很高。
4>.删除功能
rsync本身并没有删除功能,但是可以通过它的参数来实现删除功能,类似于Linux的rm命令。
5>.rsync服务模式
可以挂起后台进程,接受别人访问,这也是它的特殊的地方。
二.rsync实操案例
1>.本地拷贝
[root@yinzhengjie ~]# rsync -avz /var/log/messages /tmp/
与cp不同的是它默认就是增量拷贝,当第一个拷贝一个较大的文件时,若第二次在继续拷贝该文件时,它只会拷贝新增的内容。

rsync命令参数:
-v:--verbose,显示输出过程
-z:--compress,压缩
-a:--archive,多参数集合,也叫归档模式,包括多个参数,相当于:-rlptgoD(no -H,-A,-X)。
-r:--recursive,递归
-t:--times,保持修改时间属性
-o:--owner 保持属主不变
-p:--perms 保持权限不变
-g:--group 保持用户组不变
-l:--links 保证用户组不变
-q:--quiet 安静的拷贝
2>.删除功能
[root@yinzhengjie ~]# mkdir /yinzhengjie
[root@yinzhengjie ~]# rsync -avz --delete /yinzhengjie/ /opt/
表示将目标文件的内容和本文件的内容一致,若目标文件中存在本目录中不存在的文件时,直接删除!

3>.排除文件
--exclude:排除文件,当然也支持排除多个文件,用“{a.log,b.log,c.log}”替换图中的"a.log"即可。

--exclude-from:从文件中排除

4>.异地拷贝
[root@yinzhengjie ~]# rsync -avz /yinzhengjie -e 'ssh -p 5200' yinzhengjie@172.16.3.210:~
可以从一台机器把数据赋值到另一台机器,相当于scp命令。只不过scp命令是全量拷贝,而rsync是增量拷贝(只拷贝变化的文件),各自有自己的特点。
提示:"/yinzhengjie"和"/yinzhengjie/"这两个目录的区别是什么?
/yinzhengjie: 指的是目录本身及目录下的内容。
/yinzhengjie/ :指的是目录下的内容。
5>.关于远程拷贝的shell脚本
#!/bin/bash
#@author :yinzhengjie
#blog:http://www.cnblogs.com/yinzhengjie
#EMAIL:y1053419035@qq.com #判断用户是否传参
if [ $# -lt ];then
echo "请输入参数";
exit
fi #获取文件路径
file=$@ #获取子路径
filename=`basename $file` #获取父路径
dirpath=`dirname $file` #获取完整路径
cd $dirpath
fullpath=`pwd -P` #同步文件到DataNode
for (( i=;i<=;i++ ))
do
#使终端变绿色
tput setaf
echo =========== s$i %file ===========
#使终端变回原来的颜色,即白灰色
tput setaf
#远程执行命令
rsync -lr $filename `whoami`@s$i:$fullpath
#判断命令是否执行成功
if [ $? == ];then
echo "命令执行成功"
fi
done
rsync命令的基本使用的更多相关文章
- rsync命令详解
介绍 rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部 ...
- 烂泥:【转】rsync命令参数详解
本文由秀依林枫提供友情赞助,首发于烂泥行天下. rsync安装完毕后,我们可以通过rsync –help查看rysnc命令的使用.如下: 有关rsync的命令格式,在此我们就不多介绍了.如果有想了解的 ...
- Linux rsync 命令详解
服务器之间常常要保持些文件或目录的一致,比如一些大的软件下载网站,它们通常使用多台服务器来提供下载服务.当一台服务器上的文件更新后,其它的服务器 也需要更新,而且 在更新的时候应该是只对新增或是修改过 ...
- rsync命令(同步/备份数据)
rsync命令rsync命令是一个远程数据同步工具,可通过 lam/wan快速同步多台主机间的文件.rsync使用所谓的 "rsync算法"来使用本地和远程两个主机之间的文件达到同 ...
- rsync命令来实现将服务器端的文件备份到客户端
rsync命令来实现将服务器端的文件备份到客户端
- 使用rsync命令提高文件传输效率
众多数据库服务器的管理过程中,在不同服务器间的文件传输是免不了的.您可以使用scp命令或FTP方法完成文件的发送和接收,这篇文章我将给大家介绍另外一种方法,这就是rsync命令.rsync是文件传输程 ...
- man rsync翻译(rsync命令中文手册)
本文为命令rsync的man文档翻译,几乎所有的选项都翻译了,另外关于筛选规则部分只翻译了一部分.由于原文很多地方都比较啰嗦,所以译文中有些内容可能容易让国人疑惑,所以我个人在某些地方加上了注释.若有 ...
- rsync命令解释
-v, --verbose 详细模式输出-q, --quiet 精简输出模式-c, --checksum 打开校验开关,强制对文件传输进行校验-a, --archive 归档模式,表示以递归方式传输文 ...
- Rsync(远程同步): linux中Rsync命令的实际示例
rsync的 ( 远程同步 )为在Linux / Unix系统局部 拷贝和同步文件和目录远程以及一个最常用的命令. 随着rsync命令的帮助,您可以复制并在目录中远程和本地同步数据,在磁盘和网络,进行 ...
- rsync命令详解、rsync用ssh隧道方式同步
● rsync格式安装命令 yum install -y rsync与scp的区别:scp复制为完全覆盖,rsync为增量同步,只同步修改过的数据.rsync命令格式如下: rsync 选项 源文件 ...
随机推荐
- java第四次实验报告
课程:Java程序与设计 班级:1352 姓 名:池彬宁 小组成员: 20135212池彬宁 20135208贺邦 学号:20135212 成绩: 指导教师:娄嘉鹏 ...
- Task 3 求最大数组和
题目:返回一个整数数组中最大子数组的和. (要求:输入一个整形数组,数组里有正数也有负数. 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. 求所有子数组的和的最大值.要求时间复杂度为 ...
- 1~n中1的和
题目:给定一个十进制的正整数,写下从1开始,到N的所有整数,然后数一下其中出现“1”的个数: 要求:写一个函数f(n),返回1到n之间出现“1“的个数, 思路: 1.先判断这个数共多少位,假设为n位: ...
- Unity发布Exe后,去掉提示分辨率的窗口
Unity版本:2017.4 菜单File->Build Settings...,修改如下图的位置,将“Display Resolution Dialog”从Enabled改为Disabled
- Linux(Red hat)无网离线安装TensorFlow
文件下载 首先,下载想要安装的版本,目前最新的是1.8.0 根据你的python版本下载对应的whl文件,下载连接:https://pypi.org/project/tensorflow/#files ...
- BeanUtil工具类的使用
BeanUtils的使用 1.commons-beanutils的介绍 commons-beanutils是Apache组织下的一个基础的开源库,它提供了对Java反射和内省的API的包装,依赖内省, ...
- C51中的关键字data,idata,xdata,pdata,bdata
写在最前面的话:官方网站的解答是最可信的.英语不错的必看.http://www.keil.com/support/man/docs/c51/c51_le_memtypes.htm 下面转载几篇中文的, ...
- mongodb的命令介绍
db.help() 查看库级别的命令 db.stats() 查看数据库状态 db.version() 查看数据库版本 db.serverStatus() 查看数据库服务器状态 db.mycoll.he ...
- Alpha阶段敏捷冲刺④
1.提供当天站立式会议照片一张. 每个人的工作 (有work item 的ID),并将其记录在码云项目管理中: 昨天已完成的工作. 改善界面设计 今天计划完成的工作. 数据库和程序的连接 后端框架的继 ...
- plsql 只有三个文本框,无法登陆
plsql版本与oracle版本不一致,如 你装的是oracle 64位,但是plsql装的是32位,就会出问题了,解决方案就是下载个64位plsql