rsync命令来自于英文词组“remote sync”的缩写,其功能是用于远程数据同步。rsync命令能够基于网络(含局域网和互联网)快速的实现多台主机间的文件同步工作,并与scp或ftp发送完整文件不同,rsync有独立的文件内容差异算法,会在传送前对两个文件进行比较,只传送两者内容间的差异部分,因此速度更快。
语法格式:rsync [参数]
常用参数:
-v |
详细模式输出 |
-z |
压缩文件 |
-o |
保留文件原始所有者身份 |
-g |
保留文件原始所有组身份 |
-p |
保留文件原始权限信息 |
-b |
备份目标文件 |
-r |
递归目录文件(传输目录内的子文件) |
-d |
不递归目录文件(不传输目录内的子文件) |
-P |
显示进度信息 |
-q |
精简输出模式 |
-h |
显示帮助信息 |
参考实例
将本地目录(/test)与远程目录(192.168.10.10:/test)相关联,保持文件同步:
[root@linuxcool ~]# rsync -r /test 192.168.10.10:/haha
root@192.168.10.10's password: 此处输入远程服务器密码
将远程目录(192.168.10.10:/test)与本地目录(/test)相关联,保持文件同步:
[root@linuxcool ~]# rsync -r 192.168.10.10:test /test
root@192.168.10.10's password: 此处输入远程服务器密码
关联两个本地的目录,保持文件同步:
[root@linuxcool ~]# rsync -r /root /linuxprobe
列出本地指定目录内的文件列表:
[root@linuxcool ~]# rsync /linuxprobe/
drwxr-xr-x 18 2022/10/19 16:46:42 .
dr-xr-x--- 4,096 2022/10/19 16:46:54 root
列出远程指定目录内的文件列表:
[root@linuxcool ~]# rsync 192.168.10.10:/tmp/
root@192.168.10.10's password: 此处输入远程服务器密码
drwxrwxrwt 4,096 2022/10/19 16:47:41 .
-r--r--r-- 11 2022/10/17 03:13:19 .X0-lock
-r-------- 11 2022/10/17 03:05:57 .X1024-lock
-rw------- 532 2022/10/17 02:31:58 .viminfo
-rw-r--r-- 2,587 2022/10/17 02:59:47 anaconda.log
-rw-r--r-- 2,604 2022/10/17 02:59:34 dbus.log