本篇文章作者使用 CentOS8 系统
有的系统没有自带 rsync,在 CentOS8 下,使用:dnf install rsync
安装,其余系统大同小异。
rsync 指令格式常用选项详解
一般用法
rsync -avz 本机文件夹 远程主机用户名@IP:远程主机文件夹
例子:
rsync -avz . root@127.0.0.1:/root
指备份当前目录下所有文件到远程主机的 root 目录下
配置 ssh 端口/私钥登录
使用 -e 选项指定登录 shell,rsync 默认使用的 shell 登录端口为 22,没有私钥登录。
rsync -avze 'ssh -p 4837 -i ~/.ssh/xxx' . user@ip:/dest
资源模式
-a 开启资源模式传输,这个模式等于几个选项的缩写,主要功能有:
- 递归复制文件夹
- 保留文件夹权限
- 保留文件夹用户组
详细输出
-v 开启详细输出,-q 不输出。
压缩传输
-z 开启压缩
人类可读输出
-h 或者 -P
完整示例
rsync -avzhe 'ssh -p 9969' . user@ip:dest
其中
-az
表示递归的压缩传输当前目录的所有文件-h
表示人类可读的格式输出-e
表示使用自定义的 shell-v
表示输出详细信息