rsync命令源自英文词组”remote sync”的缩写,在Linux系统的功能是远程数据同步。rsync命令能够基于网络(包含局域网和互联网)快速地实现多台主机间的文件同步工作。
与scp或ftp命令会发送完整的文件不同,rsync有独立的文件内容差异算法,会在传送前对两个文件进行比较,只传送两者内容间的差异部分,因此速度更快。
一、语法格式
rsync 参数 目录名
二、常用参数
1、-b:备份指定目标文件。
2、-o:保留文件原始所有者身份。
3、-B:设置检验算法使用的块大小。
4、-p:保留文件原始权限信息。
5、-c:对文件传输进行校验。
6、-P:显示进度信息。
7、-d:不递归目录文件,不传输子文件。
8、-q:使用精简输出模式。
9、-D:保留设备文件信息。
10、-r:递归处理所有子文件。
11、-g:保留文件原始所有组身份。
12、-R:使用相对路径。
13、-h:显示帮助信息。
14、-t:保留文件时间信息。
15、-H:保留硬链接文件。
16、-v:显示执行过程详细信息。
17、-l:保留软链接文件。
18、-x:设置不跨越文件系统边界。
19、-n:显示将要传输的文件列表。
20、-z:压缩文件。
三、参考示例
1、将本地目录(/Dir)与远程目录(192.168.10.10:/Dir)相关联,保持文件同步:
[root@zzbaike ~]# rsync -r /Dir 192.168.10.10:/Dir root@192.168.10.10's password: # 输入远程服务器密码
2、将远程目录(192.168.10.10:/Dir)与本地目录(/Dir)相关联,保持文件同步:
[root@zzbaike ~]# rsync -r 192.168.10.10:Dir /Dir root@192.168.10.10's password: # 输入远程服务器密码
3、关联两个本地的目录,保持文件同步:
[root@zzbaike ~]# rsync -r /Dir1 /Dir2
4、列出本地指定目录内的文件列表:
[root@zzbaike ~]# rsync /Dir2/ drwxr-xr-x 18 2023/10/19 16:46:42 . dr-xr-x--4,096 2023/10/19 16:46:54 root
5、列出远程指定目录内的文件列表:
[root@zzbaike ~]# rsync 192.168.10.10:/Dir/ root@192.168.10.10's password: # 输入远程服务器密码 drwxrwxrwt 4,096 2023/10/19 16:47:41 . -r--r--r-11 2023/10/17 03:13:19 .X0-lock -r-------11 2023/10/17 03:05:57 .X1024-lock -rw------532 2023/10/17 02:31:58 .viminfo -rw-r--r-2,587 2023/10/17 02:59:47 anaconda.log -rw-r--r-2,604 2023/10/17 02:59:34 dbus.log