rsync是一个远程数据同步工具,可以实现数据的增量备份,这点比scp要好,scp只能全量备份。同步可以保持文件原有属性,传输过程加密,数据传输全。

rsync 的传输模式有:
        1. 本地shell模式
        本地shell模式用于复制本机的目录到另一个目录,和cp一样
        2. 远程shell模式
        远程shell模式可以把本机的数据复制到远程的机器上,和 scp一样
        3.  服务器模式
        服务器模式是使用最多的方式,其他3个模式都可以用其他指令替代,远程自动同步也是使用服务器模式

  • 安装rsync
[root@yufu tmp]# yum install rsync -y
  • rsync 常用的参数说明:
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD

-v, --verbose 详细模式输出

-p, --perms 保持文件权限

-g, --group 保持文件属组信息

-o, --owner 保持文件属主信息

-r, --recursive 对子目录以递归模式处理。同步目录的时候要加上这个

-R --relative:使用-R与-r选项可以同步整个目录,而不是目录下的文件,单独使用-r选项值同步目录下所有的文件,并不会同步目录

-l, --links 保留软链结,加上这个参数,同步过来的文件会保持之前的软链接属性不变

-H, --hard-links 保留硬链结

-e, --rsh=COMMAND 指定使用rsh、ssh方式进行数据同步

-z, --compress 对备份的文件在传输时进行压缩处理

--stats 给出某些文件的传输状态

--progress 打印同步的过程

--timeout=TIME 同步过程中,IP超时时间,单位为秒

--delete 删除那些目标目录中有而源目录中没有的多余文件。这个是rsync做增量方式的全备份的最佳选择方案!

--delete-before 接受者在输出之前进行删除操作。即先将目标目录中文件全部删除,再将源目录文件拷贝过去。

这是rsync保持目标目录跟源目录一致的方案!!!

--delete-after 在同步操作之后做比较,删除那些目标目录中有而源目录中没有的多余文件

--delete-excluded 删除目标目录中那些被该选项指定排除的文件

--ignore-errors 即使出现IO错误也进行删除,忽略错误

--exclude 指定同步时需要过滤掉的文件或子目录(即不需要同步过去的),后面直接跟不需要同步的单个文件名或子目录(不需要跟路径) 

过滤多个文件或子目录,就使用多个--exclude

--exclude-from 指定同步时需要过滤掉的文件或子目录,后面跟文件(比如/root/exclue.txt)

然后将不需要同步的文件和子目录放到/root/exclue.txt下。

--version 打印版本信息

--port=PORT 指定其他的rsync服务端口

--log-format=formAT 指定日志文件格式

--password-file=FILE 从FILE中得到密码

--bwlimit=KBPS 限制I/O带宽,KBytes per second
  • 基本使用方法(类似cp)

复制/etc/fstab 到/tmp下

[root@localhost tmp]#rsync -a /etc/fstab /tmp/   #-a:保留原文件属性
[root@localhost tmp]#ls
fstab

复制/etc目录到/tmp下

[root@localhost tmp]#rsync -ar /etc /tmp/     #注意/etc后面加斜线与不加斜线的区别,加斜线是复制该目录下的所有文件,不加斜线是复制整个目录
[root@localhost tmp]#ls
etc fstab

远程文件传输 –shell方式

[root@localhost tmp]#rsync -arvz /tmp/fdd root@192.168.214.187:/tmp/  # -z :压缩传输
root@192.168.214.187's password:
sending incremental file list
fdd/
fdd/f1
fdd/f2
fdd/f3 sent bytes received bytes 72.86 bytes/sec
total size is speedup is 0.00

##远程传输会将文件的属组信息改为ssh登录使用的用户属组属主,如上面的fdd目录的属组属主会变成root

开启加密传输,加强传输安全性

[root@localhost tmp]#rsync -arvze ssh /tmp/nginx root@192.168.214.187:/tmp/
root@192.168.214.187's password:
sending incremental file list
nginx/
nginx/nginx.txt
nginx/mysql/ sent bytes received bytes 38.00 bytes/sec
total size is speedup is 0.00 检查远程主机目录 [root@yufu tmp]# tree nginx
nginx
├── mysql
└── nginx.txt directory, file

rsync常用命令和使用方法的更多相关文章

  1. Git常用命令的使用方法

    推荐一个比较好的GIT的教学地址,廖雪峰老师的git教程! 这里简述Git常用命令的使用方法: 一.初始化git 右键进入 Git Bash 1.建立身份信息 git config --global ...

  2. Linux常用命令及使用方法

    一.Linux命令格式 command [-option] [parameter1] ..... 即:命令名 [选项] [参数] 选项:控制命令 参数:可有0个,1个或多个 二.常用命令及用法 1.与 ...

  3. rsync常用命令及格式

    rsync在同步文件夹内容这个工作上应用非常广泛,但是rsync本身命令还是比较复杂,本文总结一下: rsync = remote sync的简称 ,它 被用于在linux/unix系统中执行备份操作 ...

  4. linux介绍、命令(基本命令、常用命令、使用方法、基本格式)

    操作系统(科普章节) 目标 了解操作系统及作用 1. 操作系统(Operation System,OS) 一个例子说明操作系统 操作系统作为接口的示意图 没有安装操作系统的计算机,通常被称为 裸机 如 ...

  5. Linux 常用命令及使用方法

    1.  type   :查询命令 是否属于shell解释器 2.  help  : 帮助命令3.  man : 为所有用户提供在线帮助4.  ls  : 列表显示目录内的文件及目录 -l    以长格 ...

  6. Git的常用命令的使用方法和解释

    我们常用的git命令: add        Add file contents to the index(将文件添加到暂存区)  用法: 保存某个文件到暂缓区:git add 文件名 保存当前路径的 ...

  7. Vim 常用命令和编辑方法

    命令模式 :e <path/to/file> → 打开一个文件 :w → 存盘 :wq → 存盘 + 退出 (:w 存盘, :q 退出)   (陈皓注::w 后可以跟文件名) :savea ...

  8. rsync 常用命令

    rsync -auvrtzopgP --progress --delete --exclude-from=exclude.list SRC DST \\保留原文件属性并详细输出 删除那些DST中SRC ...

  9. db2 查看进程 db2中的常用命令及使用方法

    一 高(重要度) 1 启动一个db 2实例使用: net start instanceName 2 停止一个db 2实例使用: net stop instanceName 3 启动配置助手: db2= ...

随机推荐

  1. Selenium WebDriver原理(二):Selenium是如何操纵浏览器的?

    前言 上一篇文章<selenium webdriver 是怎么运行的>用了一个简单的例子--搭出租车,形象地讲解selenium webdriver 是如何运行的,而这一篇文章可以理解为深 ...

  2. 【ACM】组合数 - 全排列

    组合数 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 找出从自然数1.2.... .n(0<n<10)中任取r(0<r<=n)个数的所有组合 ...

  3. JVM基础知识2 垃圾收集器与内存分配策略

    如何判断堆中的哪些对象可以被回收 主流的程序语言都是使用根搜索算法(GC Roots Tracing)判定对象是否存活 基本思路是:通过一系列名为“GC Roots”的对象作为起点,从这些节点开始向下 ...

  4. Linux与DOS的常用命令比较

    命令类型 DOS Linux DOS示例 Linux示例 复制文件   copy cp copy c:\teacher1\file1 d:\tmp cp /home/teacher1/file1 /t ...

  5. VMware下linux与window文件夹共享

    这里说的是在虚拟机下来实现在windows下共享一个文件夹. 下面来说明一下是如何实现的: 1.  安装VMware.Workstation. 2.  安装Redhat Linux 9.0,在虚拟机下 ...

  6. Java引用外部字体(路径引用)的一些坑

    一 原因 后端负责字体...哎,我们公司的前端真的任性啊... 然后,一路踩了jvm关于字体的坑,重点是,java的报错很随意,甚至不报错,建议直接看最后面. 二 代码 正常要windows装一次字体 ...

  7. python_2开发简单爬虫

    2017年12月03日 16:43:01 独行侠的守望 阅读数:204 标签: python爬虫 更多个人分类: Python编辑版权声明:本文为博主原创文章,转载请注明文章链接. https://b ...

  8. 初始html(常用标签)

    今天我们来学习Web前端的一些知识,这一阶段需要记忆的东西相对来说比较多,需要花时间记忆以及做好练习. 一.HTML初识 1.web服务本质 import socket def main(): soc ...

  9. agc007B - Construct Sequences(构造)

    题意 题目链接 给出一个$1-N$的排列$P$,构造两个数组$a, b$满足 Sol 发现我的水平也就是能做一做0-699的题.... 直接构造两个等差数列$a, b$,公差为$20000$ 然后从小 ...

  10. System Center Configuration Manager 2016 必要条件准备篇(Part1)

    步骤4.创建系统管理容器 SCCM 2016 配置管理系列(Part 1- 4) 介绍AD01上配置了Active Directory域服务(ADDS),然后将Configuration Manag ...