zoukankan      html  css  js  c++  java
  • Rsyn软件介绍

    Rsync软件介绍

    rsync是一款实现全量与增量复制同步的软件工具
    

    Rsync软件的七大特性

    一、支持拷贝普通文件与特殊文件,如链接文件、设备等
    二、支持排除指定文件或目录同步的功能,如tar命令的排除功能
    三、支持保留原文件或目录的所有属性信息不变
    四、支持增量同步,只同步变化数据,提升数据传输效率
    五、支持rcp、rsh、ssh等方式来配合进行隧道加密传输方式
    六、支持使用通过socket(守护进程方式)传输文件或目录信息
    七、支持用户认证方式传输数据,提升数据同步安全性
    

    Rsync软件的参数

    命令参数 参数说明
    -v, --verbose 详细模式输出,详细显示数据传输备份情况
    -z, --compress 传输时进行压缩以提高传输效率,--compress-level=NUM可按级别压缩。局域网可以不用压缩
    -a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等价于-rtopgDl
    -r, --recursive(属于-a参数) 对子目录以递归模式,即目录下的所有目录都同样传输
    -t, --times(属于-a参数) 保持文件时间属性信息
    -o, --owner(属于-a参数) 保持文件属主信息
    -p, --perms(属于-a参数) 保持文件权限
    -g, --group(属于-a参数) 保持文件属组信息
    -D, --devices (属于-a参数) 保持设备文件信息
    -l, --links(属于-a参数) 保留软链接(小写字母l)
    -P, --progress 显示同步的过程及传输时的进度等信息
    -e, --rsh=COMMAND 使用的信道协议(remote shell),指定替代rsh的shell程序。例如:ssh
    --exclude=PATTERN 指定排除不需要传输的文件信息
    --exclude-from=file 文件名所在的目录文件,即可以实现排除多个文件
    --bwlimit=RATE 实现数据传输过程限速传输,限制速率单位为kbytes

    Rsync软件三种工作方式

    一、本地数据备份方式
    Local:  rsync [OPTION...] SRC... [DEST]
    rsync       ---- 数据传输命令
    [OPTION...] ---- 与rsync命令相关的参数
    SRC         ---- 要进行备份的数据(文件/目录)
    [DEST]      ---- 将数据备份到什么位置(相应的路径)
    #实例:
    [root@backup tmp]# rsync /etc/hosts /tmp
    [root@backup tmp]# ll
    total 4
    -rw-r--r-- 1 root root 352 Feb 11 14:54 hosts
    
    二、远程数据备份方式
    Access via remote shell:
             Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
             Push: rsync [OPTION...] SRC... [USER@]HOST:DEST
    Pull方式:
    rsync       ---- 数据传输命令
    [OPTION...] ---- 与rsync命令相关的参数
    [USER@]HOST ---- 指定以什么身份来登陆到远程主机,如果省略则会心当前用户进行登陆,HOST指远程主机的IP地址或者域名
    SRC         ---- 指定远程主机要传输到本地的数据信息
    [DEST]      ---- 指定数据保存在什么位置
    
    实例:
    [root@backup tmp]# rsync -a -e 'ssh -p 10000' 172.16.1.31:/etc/sysconfig/network /tmp
    root@172.16.1.31's password: 
    [root@backup tmp]# ll
    total 8
    -rw-r--r-- 1 root root 352 Feb 11 14:54 hosts
    -rw-r--r-- 1 root root  30 Feb 10 23:45 network
    
    Push方式:
    rsync       ---- 数据传输命令
    [OPTION...] ---- 与rsync命令相关的参数
    [USER@]HOST ---- 指定以什么身份来登陆到远程主机,如果省略则会心当前用户进行登陆,HOST指远程主机的IP地址或者域名
    SRC         ---- 指定本地主机要传输到远程的数据信息
    [DEST]      ---- 指定本地数据保存远程主机的什么位置
    
    实例:
    本地端
    [root@backup tmp]# rsync -a -e 'ssh -p 10000' 172.16.1.31:/etc/sysconfig/network /tmp
    root@172.16.1.31's password: 
    [root@backup tmp]# ll
    total 8
    -rw-r--r-- 1 root root 352 Feb 11 14:54 hosts
    -rw-r--r-- 1 root root  30 Feb 10 23:45 network
    [root@backup tmp]# rsync -a -e 'ssh -p 10000' /tmp/ 172.16.1.31:/tmp
    root@172.16.1.31's password: 
    [root@backup tmp]# 
    远程端
    [root@nfs01 tmp]# ll
    total 640
    -rw-r--r-- 1 root root    352 Feb 11 14:54 hosts
    -rw-r--r-- 1 root root     30 Feb 10 23:45 network
    
    三、守护进程传输模式
    Access via rsync daemon:
             Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
                   rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
             Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
                   rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST
    pull方式:
    rsync       ---- 数据传输命令
    [OPTION...] ---- 与rsync命令相关的参数
    [USER@]HOST:: -- 指定远程连接的用户
    SRC         ---- 指定相应的模块
    [DEST]      ---- 将远程数据保存在本地的什么位置
    
    Push方式:
    rsync       ---- 数据传输命令
    [OPTION...] ---- 与rsync命令相关的参数
    [USER@]HOST:: -- 指定远程连接的用户
    SRC         ---- 指定本地要进行推送的数据信息
    [DEST]      ---- 远程进行保存数据的模块信息
    

    Rsync的简单应用(1v4)

    一、Rsync=cp
    #cp命令
    [root@backup tmp]# cp /etc/services /tmp
    [root@backup tmp]# ll
    total 632
    -rw-r--r-- 1 root root    352 Feb 11 09:22 hosts
    -rw-r--r-- 1 root root 641020 Feb 11 10:01 services
    #rsync命令
    [root@backup tmp]# rsync /etc/passwd /tmp
    [root@backup tmp]# ll
    total 636
    -rw-r--r-- 1 root root    352 Feb 11 09:22 hosts
    -rw-r--r-- 1 root root   1056 Feb 11 10:02 passwd
    -rw-r--r-- 1 root root 641020 Feb 11 10:01 services
    [root@backup tmp]# 
    
    二、rsync=scp
    #scp备份到远程服务器
    [root@backup tmp]# scp -rp -P 10000 /tmp 172.16.1.31:/tmp
    root@172.16.1.31's password: 
    services                                                    100%  626KB 626.0KB/s   00:00    
    passwd                                                      100% 1056     1.0KB/s   00:00    
    hosts                                                       100%  352     0.3KB/s   00:00    
    [root@backup tmp]# 
    #rsync备份到远程服务器
    注:同步数据时,/tmp/目录后有/信息,表示将目录下面的数据内容进行备份同步
       同步数据时,/tmp目录后没有/信息,表示将目录及目录下面的数据内容进行备份同步
    [root@backup tmp]# rsync -rp -e 'ssh -p 10000' /tmp/ 172.16.1.31:/tmp
    root@172.16.1.31's password: 
    [root@backup tmp]# 
    
    三、rsync=rm
    说明:rsync实现删除目录中数据内容过程,就将一个空目录和一个有数据的目录进行同步,最终会将有数据的目录中的文件进行清空
    [root@backup tmp]# mkdir /null
    [root@backup tmp]# ll
    total 636
    -rw-r--r-- 1 root root    352 Feb 11 09:22 hosts
    -rw-r--r-- 1 root root   1056 Feb 11 10:02 passwd
    -rw-r--r-- 1 root root 641020 Feb 11 10:01 services
    [root@backup tmp]# rsync -r --delete /null/ /tmp
    [root@backup tmp]# ll
    total 0
    [root@backup tmp]# 
    
    四、rsync=ls
    [root@backup tmp]# ls -l /etc/hosts
    -rw-r--r--. 2 root root 352 Feb 10 20:35 /etc/hosts
    [root@backup tmp]# rsync /etc/hosts
    -rw-r--r--         352 2019/02/10 20:35:35 hosts
    [root@backup tmp]# 
    
  • 相关阅读:
    2020-2021-1 20209314《Linux内核原理与分析》第七周作业
    2020-2021-1 20209314《Linux内核原理与分析》第六周作业
    2020-2021-1 20209314《Linux内核原理与分析》第五周作业
    2020-2021-1 20209314《Linux内核原理与分析》第四周作业
    2020-2021-1 20209314《Linux内核原理与分析》第三周作业
    选做题MyOD 20209314
    2020-2021-1 20209314《Linux内核原理与分析》第二周作业
    2020-2021-1 20209322《Linux内核原理与分析》第十二周作业
    2020-2021-1 20209322《Linux内核原理与分析》第十一周作业
    2020-2021-1 20209322《Linux内核原理与分析》第九周作业
  • 原文地址:https://www.cnblogs.com/yjiu1990/p/10375903.html
Copyright © 2011-2022 走看看