您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux

Rsync如何利用SSH加密隧道同步文件

时间:2019-11-12 09:15:17  来源:  作者:

1. 前言

本文主要讲解linux系统中的Rsync如何利用SSH加密隧道同步文件。

在网络系统之间传输或同步文件时,Linux和Unix用户可以使用很多工具。

Rsync如何利用SSH加密隧道同步文件

Rsync如何利用SSH加密隧道同步文件

最流行的数据传输协议是SSH和FTP。虽然FTP非常流行,但我总是更喜欢使用SSH,因为它是同步或传输文件的最安全的方式。

有一些专门的工具可以在SSH上传输文件,比如scp和sftp,但是没有一个具有rsync提供的所有特性。rsync可以用于镜像数据、增量备份、在系统之间同步和复制文件等等。

在本教程中,我们将解释如何通过SSH使用rsync同步和复制文件。

2. Rsync加密同步文件前提条件

Rsync如何利用SSH加密隧道同步文件

Rsync加密同步文件前提条件

  • SSH可以访问远程计算机。
  • 运行rsync命令的用户和远程SSH用户必须具有读取和写入文件的适当权限。

rsync实用程序必须同时安装在目标服务器系统和源服务器系统上。即Rsync有服务端和客户端。
如果没有安装,可以使用发行版的包管理器安装:

Ubuntu和Debian系统:

sudo apt install rsync

centos和Fedora系统:

sudo yum install rsync

3. 利用SSH加密隧道同步文件或传输流量

使用rsync,您可以利用SSH加密隧道将文件和目录从远程服务器传输到远程服务器。

Rsync如何利用SSH加密隧道同步文件

利用SSH加密隧道同步文件或传输流量

使用rsync传输文件的一般语法如下:

Local to Remote: rsync [OPTION]... -e ssh [SRC]... [USER@]HOST:DEST
Remote to Local: rsync [OPTION]... -e ssh [USER@]HOST:SRC... [DEST]

其中SRC是源目录,DEST是目标目录,USER是远程SSH用户名,HOST是远程SSH主机或IP地址。

最新版本的rsync被配置为使用SSH作为默认远程shell,因此可以省略-eSSH选项。

例如,要将一个文件/opt/file.zip从本地系统传输到IP为10.1.1.1的远程系统的/var/www/目录,您需要运行:

rsync -a /opt/file.zip user@10.1.1.1:/var/www/

-a选项代表存档模式,它将递归地同步目录、传输特殊和块设备、保存符号链接、修改时间、组、所有权和权限。

如果您还没有为远程机器设置无密码SSH登录,系统将提示您输入用户密码。
ssh免密码登录的教程可以参考这里:

ssh免密码登录

如果文件存在于远程服务器上,那么它将被覆盖。如果您想将文件保存在另一个名称下,请指定新名称:

rsync -a /opt/file.zip user@10.1.1.1:/var/www/file2.zip

要将数据从远程传输到本地机器,使用远程位置作为源,本地位置作为目标:
执行以下命令:

rsync -a user@10.1.1.1:/var/www/file.zip /opt/

在SSH上使用rsync传输目录与传输文件相同。

重要的是要知道,rsync对后面带有斜杠/的源目录提供了不同的处理。当源目录后面有一个斜杠时,rsync将只将源目录的里面的内容复制到目标目录。当省略后面的斜杠时,源目录将会被复制到目标目录中。

例如,要将本地/opt/website/images/目录传输到远程机器上的/var/ww /images/目录,您可以输入:

rsync -a /home/zcwyou/images/ user@10.1.1.1:/var/www/images/

如果要同步本地和远程目录,请使用--delete选项。使用此选项时要小心,因为如果目标目录中不存在源目录中的文件,它将删除这些文件。

rsync -a --delete /home/zcwyou/images/ user@10.1.1.1:/var/www/images/

如果远程主机上的SSH监听的端口不是默认的22,那么使用-e选项指定端口。例如,如果SSH正在监听端口1234,您将使用:

rsync -a -e "ssh -p 1234" /home/zcwyou/images/ user@10.1.1.1:/var/www/images/

当传输大量数据时,建议在屏幕会话中运行rsync命令,或者使用-P选项,告诉rsync在传输过程中显示一个进度条,并保存部分传输的文件:

rsync -a -P /home/zcwyou/images/ user@10.1.1.1:/var/www/images/

4. 总结

Rsync如何利用SSH加密隧道同步文件

总结如何在SSH加密隧道上的利用rsync工具来复制和同步文件和目录


通过本文,我们已经学习了如何在SSH加密隧道上的利用rsync工具来复制和同步文件和目录。

如果你有任何问题,请留下你的意见。

本文已同步至博客站,尊重原创,转载时请在正文中附带以下链接:
https://www.linuxrumen.com/rmxx/1424.html



Tags:Rsync   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
1. 几大实时同步工具比较1.1 inotify + rsync最近一直在寻求生产服务服务器上的同步替代方案,原先使用的是inotify + rsync,但随着文件数量的增大到100W+,目录下的文件列表就达...【详细内容】
2021-05-19  Tags: Rsync  点击:(198)  评论:(0)  加入收藏
1. 前言linux之间传文件命令用什么命令?本文介绍一种最常用,也是功能强大的文件同步和传输工具Rsync,本文提供详细傻瓜式教程。在本教程中,我们将通过实际使用案例和最常见的rsy...【详细内容】
2020-09-17  Tags: Rsync  点击:(150)  评论:(0)  加入收藏
OpenSSH 项目表示,他们认为 scp 协议已经过时,不灵活,而且不容易修复,然后他们继而推荐使用 sftp 或 rsync 来进行文件传输。• 来源:linux.cn • 作者:Chasinglogic &bu...【详细内容】
2020-09-03  Tags: Rsync  点击:(106)  评论:(0)  加入收藏
前言之前毕设有用到文件增量同步,于是乎就记录一下。场景在A和B两个不同端之间有相似度很高的文件,同时这个文件又比较大。如果通过全量传输来更新,http传输量很大,非常不友好。...【详细内容】
2020-08-28  Tags: Rsync  点击:(155)  评论:(0)  加入收藏
1、准备好系统环境与软件:这里使用的linux是centos 7.8,如下:查linux版本windows使用的是win10。Rsync 服务端linux使用的是3.1.2:rsync版本linux端可以使用yum install -y rsyn...【详细内容】
2020-08-04  Tags: Rsync  点击:(107)  评论:(0)  加入收藏
概述:烟台某企业Oracle 的数据备份有逻辑备份和Rman备份,备份策略只保存到本机,为了数据安全性,再增加一份保险,通过NFS和rsync把数据备份到异机,服务端redhat,目标端centos,操作如...【详细内容】
2020-07-28  Tags: Rsync  点击:(94)  评论:(0)  加入收藏
1. 前言本文主要讲解Linux系统中的Rsync如何利用SSH加密隧道同步文件。在网络系统之间传输或同步文件时,Linux和Unix用户可以使用很多工具。Rsync如何利用SSH加密隧道同步文...【详细内容】
2019-11-12  Tags: Rsync  点击:(167)  评论:(0)  加入收藏
概述由于业务需要,需在ftp服务器创建多一个目录,用于给另外一个新系统做测试用。简单画图如下:目前架构: 计划方案: 下面简单记录下方案实现过程。一、搭建rsync服务1、Linux搭建...【详细内容】
2019-10-25  Tags: Rsync  点击:(224)  评论:(0)  加入收藏
概述Rsync是一款不错的文件免费同步软件,可以镜像保存整个目录树和文件系统,同时保持原来文件的权限、时间、软硬链接。第一次同步时 rsync 会复制全部内容,下次只传输修改过的...【详细内容】
2019-08-21  Tags: Rsync  点击:(456)  评论:(0)  加入收藏
Rsync(remote synchronize)是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机间的文件。Rsync 使用所谓的 “Rsync 算法” 来使本地和远 程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每...【详细内容】
2019-04-24  Tags: Rsync  点击:(455)  评论:(0)  加入收藏
▌简易百科推荐
作用显示文件或目录所占用的磁盘空间使用命令格式du [option] 文件/目录命令功能显示文件或目录所占用的磁盘空间一些写法的区别du -sh xxx 显示总目录的大小,但是不会列出...【详细内容】
2021-12-23  mitsuhide1992    Tags:du命令   点击:(12)  评论:(0)  加入收藏
什么是linux内核linux就像是一个哲学的最佳实践。如果非要对它评价,我真的不知道该怎么赞叹,我只能自豪地说着:“linux的美丽简直让人沉醉。”我只能说是我处在linux学习的修炼...【详细内容】
2021-12-23  linux上的码农    Tags:linux内核   点击:(15)  评论:(0)  加入收藏
本文将比较 Linux 中 service 和 systemctl 命令,先分别简单介绍这两个命令的基础用法,然后进行比较。从 CentOS 7.x 开始,CentOS 开始使用 systemd 服务来代替 service服务(dae...【详细内容】
2021-12-23  软件架构    Tags:systemctl   点击:(14)  评论:(0)  加入收藏
mv是move的缩写,可以用来移动文件或者重命名文件名,经常用来备份文件或者目录。命令格式mv [选项] 源文件或者目录 目标文件或者目录命令功能mv命令中第二个参数类型的不同(...【详细内容】
2021-12-17  入门小站    Tags:mv命令   点击:(23)  评论:(0)  加入收藏
大数据技术AI Flink/Spark/Hadoop/数仓,数据分析、面试,源码解读等干货学习资料 98篇原创内容 -->公众号 Linux sed 命令是利用脚本来处理文本文件。sed 可依照脚本的指令来处...【详细内容】
2021-12-17  仙风道骨的宝石骑士    Tags:sed命令   点击:(22)  评论:(0)  加入收藏
Node是个啥?  写个东西还是尽量面面俱到吧,所以有关基本概念的东西我也从网上选择性地拿了下来,有些地方针对自己的理解有所改动,对这些概念性的东西有过了解的可选择跳过这段...【详细内容】
2021-12-15  linux上的码农    Tags:node   点击:(25)  评论:(0)  加入收藏
难道只有我一个人觉得Ubuntu的unity桌面非常好用吗?最近把台式机上面的Ubuntu 16.04格式化了,装了黑苹果用了一周,不得不说,MacOS确实很精美,软件生态比Linux丰富很多,比Windows简...【详细内容】
2021-12-14  地球末日村    Tags:ubuntu   点击:(41)  评论:(0)  加入收藏
简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行net...【详细内容】
2021-12-13  窥镜天    Tags:Linux netstat   点击:(28)  评论:(0)  加入收藏
对于较多数量的文件描述符的监听无论是select还是poll系统调用都显得捉襟见肘,poll每次都需要将所有的文件描述符复制到内核,内核本身不会对这些文件描述符加以保存,这样的设计...【详细内容】
2021-12-13  深度Linux    Tags:Linux   点击:(19)  评论:(0)  加入收藏
今天,我们来了解下 Linux 系统的革命性通用执行引擎-eBPF,之所以聊着玩意,因为它确实牛逼,作为一项底层技术,在现在的云原生生态领域中起着举足轻重的作用。截至目前,业界使用范...【详细内容】
2021-12-10  架构驿站    Tags:eBPF   点击:(29)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条