rsync的简单使用

安装

在Ubuntu/debain上安装rsync

sudo apt-get install rsync

查看rsync版本

rsync --version

相关参数

-a:指归档模式,会保持文件的所有属性,递归同步子目录文件并保留符号链接、权限、时间戳、用户和组信息等。

-v:指详细模式,会显示同步过程中的详细信息。

-z:压缩传输数据,在传输过程中对数据进行压缩,以减少传输的数据量和时间,对于网络带宽有限的情况可以显著提升传输效率。没有此参数时,数据将未压缩地传输。

–delete:rsync只能确保源目录的所有内容(明确排除的文件除外)都同步到目标目录,不会使两个目录保持相同,并且不会删除文件。如果要使得目标目录成为源目录的镜像副本,则必须使用–delete参数,这将删除只存在于目标目录、不存在于源目录的文件。

–exclude:同步时排除某些文件或文件夹

1、在本机上进行同步目录操作

将source目录同步到目标目录destination

rsync -av /path/to/source /path/to/destination

要将 /home/test/project 目录同步到 /backup/project 目录,而不同步源目录中的test.txt文件

rsync -av --exclude 'test.txt' /home/test/project /backup/project

要将 /home/test/project 目录同步到 /backup/project 目录,而不同步源目录中的隐藏文件

rsync -av --exclude '.*' /home/test/project /backup/project

例:要将 /home/test/project 目录同步到 /backup/project 目录

rsync -av /home/test/project /backup/project

rsync -avz /home/test/project /backup/project

在本地同步文件,原理同上,例:

要将 /home/test/project/test.txt 文件同步到 /backup/project 目录

rsync -avz /home/test/project/test.txt /backup/project

2、本机两个目录保持同步

将 /path/to/source/ 同步到 /path/to/destination/ 并删除目标目录多余的文件

rsync -av --delete /path/to/source/ /path/to/destination/

3、远程同步数据

1、将本地系统的文件同步到远程服务器

将本地服务器上的/path/to/source/同步到远程服务器/path/to/destination/目录

此处user指用户名,remote替换为ip地址即可,执行完成输入密码确认传输即开始,注意源服务器与目标服务器均需安装rsync

rsync -av /path/to/source/ user@remote:/path/to/destination/

2、将远程服务器文件同步到本地服务器

将远程服务器/path/to/source/同步到本地服务器/path/to/destination/

rsync -av user@remote:/path/to/source/ /path/to/destination/

参考链接:

linux中rsync这一强大命令的用法详解 – 知乎

rsync 命令 菜鸟教程

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注