跳转至

rsync命令

欢迎阅读《每天一个Linux命令》系列 !在本篇文章中,将说明rsync命令用法。

一、简介

rsync 是一个快速、灵活且功能强大的文件传输和同步工具,常用于在本地或远程系统之间同步文件和目录。它的核心功能包括高效的数据复制、增量传输、以及保留文件权限、时间戳和符号链接等元数据的能力。

二、安装rsync

在大多数 Linux 发行版中,可以使用包管理器来安装 rsync。以下是使用 yum 包管理器安装 rsync 的命令:

Bash
yum install -y rsync

三、选项

1.rsync同步操作

Bash
命令用法:
-rsync  [选项]    源目录 目标目录

2.同步与复制的差异

Bash
-复制:完全拷贝

-同步:增量拷贝,传输变化数据

3.同步控制

Bash
-n:测试同步过程,不做实际修改

--delete:删除目标文件夹内多余的文档

-a:归档模式,相当于-rlptgoD

-v:显示详细操作信息

-z:传输过程中启用压缩和解压

-r:递归,包括目录/子目录所有文件

-I:保留符号链接文件

-p:保留文件权限

-t:保留文件时间标记

-o:保留文件属主信息

-g:保留文件属组标记

-D:保留设备文件及其它特殊文件

4.rsync本地同步

Bash
rsync   [选项]    本地目录1   本地目录2   #将本地目录1文件夹本身, 同步到本地目录2文件夹下

rsync   [选项]    本地目录1/  本地目录2   #只同步目录下的数据

四、示例

远端同步,使用公钥远程传输:

Python
rsync -avz 192.168.224.136:/tmp/ /tmp      # 将服务器192.168.224.136/tmp文件夹的内容,拷贝到本地/tmp/内

五、总结

rsync 是一个快速、灵活且功能强大的文件传输和同步工具,常用于在本地或远程系统之间同步文件和目录。它的核心功能包括高效的数据复制、增量传输、以及保留文件权限、时间戳和符号链接等元数据的能力。

rsync 的主要特点包括:

  1. 增量传输: rsync 只传输文件中发生变化的部分,而不是整个文件。这使得它非常适合在网络带宽有限的环境下进行大文件的同步和备份。
  2. 保留文件属性: rsync 可以保留文件的权限、时间戳、符号链接、设备文件、硬链接等元数据,确保源文件和目标文件的一致性。
  3. 压缩传输: 通过 -z 选项,rsync 可以在传输时对数据进行压缩,进一步减少带宽使用。
  4. 远程传输: rsync 可以通过 SSH 进行远程文件传输,提供安全的加密数据通道。
  5. 删除文件: rsync 可以删除目标目录中源目录中不存在的文件,使得目标目录与源目录完全同步(使用 --delete 选项)。
  6. 易用的命令行界面: rsync 提供了丰富的命令行选项,可以轻松定制不同的文件同步和备份需求。