Linux教程丨使用rsync在服务器中高效传输文件,断点续传快速上传下载数据

简介: Linux教程丨使用rsync在服务器中高效传输文件,断点续传快速上传下载数据

rsync文件传输方法详解

在Linux系统中,rsync是一种功能强大且广泛使用的文件同步工具。它能够在本地和远程系统之间实现高效、快速的文件传输和同步,支持断点续传和快速安全的文件上传下载。

本文将详细介绍rsync命令及其常用参数的功能和用法,帮助你更好地利用rsync在Linux系统中管理文件和文件夹的同步。


基本概述

rsync命令是“Remote Sync”的缩写,它使用Rsync算法,可快速地同步本地和远程文件。rsync仅传输修改过的文件,从而减少传输的数据量,大大提高了文件同步的效率,而且支持断点续传,避免由于网络中断导致重新传输。

安装方法

大多数Linux系统默认安装了rsync,但如果你的系统没有安装,可以使用以下命令进行安装:

  • Debian/Ubuntu系统:
sudo apt-get install rsync
  • Red Hat/CentOS系统:
sudo yum install rsync

基本用法

rsync命令的一般格式如下:

rsync [OPTIONS] SOURCE DESTINATION

其中,SOURCE指定源文件或目录,DESTINATION指定目标路径,可以是本地路径或远程主机路径。

常用参数及其功能

以下是rsync命令的一些常用参数及其功能:

-a:归档模式,以递归方式传输文件,并保持文件属性(权限、时间戳等)。

-v:详细模式,输出传输过程中的详细信息。

-r:递归传输,用于同步目录及其子目录。

-z:压缩传输,减少数据传输量,加快传输速度。

--delete:删除目标中不存在于源的文件,保持目标与源的一致性。

--exclude:排除指定文件或目录,不进行同步。

--progress:显示传输过程中的进度信息。

-e:指定远程shell连接命令(例如SSH)。

实际使用示例

现在,来看几个常用的rsync命令示例

从本地上传文件到服务器

rsync -P -t -r -v -e [待传输文件] usr@IP:[接收目录]

从服务器下载文件到本地

rsync -P -t -r -v -e  usr@IP:[待传输文件] [接收目录]

本地文件夹同步:

将本地目录/path/to/source同步到/path/to/destination,保持权限和时间戳,并显示传输过程中的详细信息。

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

远程主机同步:

将本地目录同步到远程主机remote_host的/path/to/destination,使用SSH连接,并压缩传输以加快速度。

rsync -azv -e ssh /path/to/source remote_host:/path/to/destination

删除目标多余文件:

同步时,删除目标目录中不存在于源目录的文件。

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

排除特定文件和目录:

同步时排除/path/to/source/logs和/path/to/source/temp目录,并不进行传输。

rsync -av --exclude='logs' --exclude='temp' /path/to/source /path/to/destination

写在后面

通过rsync命令,可以轻松实现本地和远程文件夹之间的高效同步。rsync的强大功能和灵活的参数选项使其成为Linux系统中不可或缺的工具之一。在实际应用中,根据不同的同步需求,可以灵活地组合和使用不同的参数,以达到最佳的文件同步效果。



希望本文对你理解rsync命令的用法和功能有所帮助。祝你在使用rsync时愉快和高效,如果觉得有帮助欢迎转发收藏!



-end-

© 资料素材来源于网络,侵权请联系后台删除


往期内容推荐

1. 不会吧!你还没用上免费的ChatGPT ?

2. Rstudio Server使用教程,云端生信分析

3. GWAS全基因组关联分析入门教程

4. ChatGPT帮我设计的公众号LOGO

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
2月前
|
运维 安全 Linux
Linux中传输文件文件夹的10个scp命令
【10月更文挑战第18天】本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的方法,涵盖基础文件传输、使用密钥认证、复制整个目录、从远程主机复制文件、同时传输多个文件和目录、保持文件权限、跨多台远程主机传输、指定端口及显示传输进度等场景,旨在帮助用户在不同情况下高效安全地完成文件传输任务。
271 5
|
2月前
|
Unix Linux
Linux | Rsync 命令:16 个实际示例(下)
Linux | Rsync 命令:16 个实际示例(下)
38 3
Linux | Rsync 命令:16 个实际示例(下)
|
2月前
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
145 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
2月前
|
安全 Linux Shell
Linux | Rsync 命令:16 个实际示例(上)
Linux | Rsync 命令:16 个实际示例(上)
74 0
Linux | Rsync 命令:16 个实际示例(上)
|
2月前
|
Python
Flask学习笔记(三):基于Flask框架上传特征值(相关数据)到服务器端并保存为txt文件
这篇博客文章是关于如何使用Flask框架上传特征值数据到服务器端,并将其保存为txt文件的教程。
31 0
Flask学习笔记(三):基于Flask框架上传特征值(相关数据)到服务器端并保存为txt文件
|
2月前
阿里云国际版购买了服务器后如何下载发票?
阿里云国际版购买了服务器后如何下载发票?
|
3月前
|
Java
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
54 4
|
2月前
|
前端开发 Docker 容器
主机host服务器和Docker容器之间的文件互传方法汇总
Docker 成为前端工具,可实现跨设备兼容。本文介绍主机与 Docker 容器/镜像间文件传输的三种方法:1. 构建镜像时使用 `COPY` 或 `ADD` 指令;2. 启动容器时使用 `-v` 挂载卷;3. 运行时使用 `docker cp` 命令。每种方法适用于不同场景,如静态文件打包、开发时文件同步及临时文件传输。注意权限问题、容器停止后的文件传输及性能影响。
235 0
|
2月前
|
弹性计算 网络协议 Linux
云服务器评估迁移时间与测试传输速度
云服务器评估迁移时间与测试传输速度
|
4月前
|
Linux Shell 网络安全
在Linux中,rsync同步时,如何删除目标数据多出来的数据,即源上不存在,但目标却存在的文件或者目录?
在Linux中,rsync同步时,如何删除目标数据多出来的数据,即源上不存在,但目标却存在的文件或者目录?