2.2备份服务器_Rsync传输模式

1.本地传输模式(local-only mode)
  • 语法

rsync [OPTION…] SRC… [DEST]
语法说明:

  1. rsync 为同步的命令
  2. [OPTION…]为同步时的参数选项
  3. SRC为源,即待拷的分区,文件或目录等
  4. [DEST]为目的分区,文件或目录等
  • 同步参数选项

-a --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rtopgDl
-b --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用–suffix选项来指定不同的备份文件前缀
-B --block-size=SIZE 检验算法使用的块尺寸,默认是700字节
-c --checksum 打开校验开关,强制对文件传输进行校验
-C --cvs-exclude 使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件
-D --devices 保持设备文件信息
-e --rsh=COMMAND 使用的信道协议,指定替代rsh的shell程序,例如:ssh
-g --group保持文件属主信息
-H --hard-links 保留硬链结
-I --ignore-times 不跳过那些有同样的时间和长度的文件
-l --links 保留软链接
-L --copy-links 想对待常规文件一样处理软链结
-n --dry-run现实哪些文件将被传输
-o --owner 保持文件属主信息
-P --perms 保持文件权限
-P --progerss 显示同步的过程及传输时的进度等信息
-q --quiet 精简输出模式
-r --recursive 对子目录已递归模式,即目录下的所有目录都同样传输,注意是小写r
-R --relative 使用相对路径信息
-S --sparse 对稀疏文件进行特殊处理以节省DST的空间
-t --times 保持文件时间信息
-T --temp-dir=DIR 在DIR中创建临时文件
-u --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
-v --verbose 详细模式输出,传输时的进度等信息
-W --whole-file 拷贝文件,不进行增量检测
-x --one-file-system 不要跨越文件系统边界
-z --compress 传输时进行压缩以提高传输效率,–compress-lever=NUM可按级别压缩
-h --help 显示帮助信息


–exclude=PATTERN 指定排除不需要传输的文件模式
–exclude-from=file(文件名所在的目录文件)
–bwlimit=RATE 限制I/O带宽,KBytes per second
–delete 让目目录SRC和源数据DST一致
–delete-excluded 同样删除接收端那些被该选项指定排除的文件
–delete-after 传输结束以后再删除
–backup-dir 将备份文件(如~filename)存放在在目录下。
-suffix=SUFFIX 定义备份文件前缀
–copy-unsafe-links 仅仅拷贝指向SRC路径目录树以外的链结
–safe-links 忽略指向SRC路径目录树以外的链结
–rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息
–existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件
–ignore-errors 及时出现IO错误也进行删除
–max-delete=NUM 最多删除NUM个文件
–partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输
–force 强制删除目录,即使不为空
–numeric-ids 不将数字的用户和组ID匹配为用户名和组名
–timeout=TIME IP超时时间,单位为秒
–size-only 当决定是否要备份文件时,仅仅察看文件大小而不考虑文件时间
–modify-window=NUM 决定文件是否时间相同时使用的时间戳窗口,默认为0
–compare-dest=DIR 同样比较DIR中的文件来决定是否需要备份
–progress 显示备份过程
–include=PATTERN 指定不排除而需要传输的文件模式
–include-from=FILE 不排除FILE指定模式匹配的文件
–version 打印版本信息
–address 绑定到特定的地址
–config=FILE 指定其他的配置文件,不使用默认的/etc/rsyncd.conf文件
–port=PORT 指定其他的rsync服务端口
–blocking-io 对远程shell使用阻塞IO
-stats 给出某些文件的传输状态
–progress 在传输时现实传输过程
–log-format=formAT 指定日志文件格式
–password-file=FILE 从FILE中得到密码

  • 实例操作

eg1:把系统的hosts文件同步到/opt目录
 rsync /etc/hosts /opt/

eg2:把opt目录拷贝到/mnt下
 rsync -avz /opt/ /mnt/
 rsync -vzrtopg /opt/ /mnt/

eg3:删除tmp1(非常危险,少用)
  rsync -avz --delete /tmp1 /mnt/

2.通过远程shell数据传输(remote shell mode)
  • 语法

拉取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 -vzrtopgP -2 ‘ssh -p 22’ silly@192.168.47.41:/opt /tmp


推送实例语法:
  rsync -vzrtopgP -e ‘ssh -p 22’ /etc silly@192.168.47.51:/tmp


关键语法说明:
  1. -vzrtopg相当于本地模式的-avz,表示同步时文件的目录属性不变
  2. --progress显示同步的进程,可以用-P替换
  3. -e ‘ssh -p 22’表示通过ssh的通道传输数据,-p 22可省略

  • 同步参数选项

-avz 相当于-vzrtopgDl,表示同步时文件和目录属性不变
-P 显示同步的过程,可以用–progress替换
-e‘ssh -p 22’,表示通过ssh 的通道传输数据

  • 实例操作

eg1:将/etc/hosts文件同步到41远程服务器/mnt下
  rsync -avz /etc/hosts -e ‘ssh -p 22’ root@192.168.47.41:/mnt/
  rsync -avz -e “ssh -p 22” /etc/hosts root@192.168.47.41:/mnt/
在这里插入图片描述

3.使用守护进程(socket)的方式数据传输(daemon mode)
  • 语法

拉取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


拉取实践命令:
  rsync -avzrtopgP rsync://rsync_backup@192.168.47.41:/opt/ /test/   --password-file=/etc/rsync.password


推送实践命令:
  rsync -avzrtopgP /test/ rsync://rsync_backup@192.168.47.41:/opt/  --password-file=/etc/rsync.password

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值