在Linux中,使用rsync同步数据时,假如采用的是ssh方式,并且目标机器的sshd端端并不是默认的22端口,该如何做?

简介: 在Linux中,使用rsync同步数据时,假如采用的是ssh方式,并且目标机器的sshd端端并不是默认的22端口,该如何做?

在使用rsync通过SSH进行数据同步时,如果目标机器的SSH服务没有运行在默认的22端口上,你需要指定SSH连接应该使用的端口。这可以通过-e选项来实现,后面跟上ssh命令和-p参数来指定端口号。

以下是使用非默认端口的SSH进行rsync同步的基本命令格式:

rsync -avz -e "ssh -p <port>" <source> <user>@<host>:<destination>

这里的参数解释如下:

  • -a:代表--archive,它使得rsync同步时保持原有文件的属性,如权限、时间戳等。
  • -v:代表--verbose,它使得rsync在同步过程中提供详细的输出信息。
  • -z:代表--compress,它在传输过程中压缩数据,以减少传输的数据量。
  • -e:允许你指定一个命令来创建到远程主机的安全连接。在这个例子中,我们使用ssh
  • -p <port>:指定SSH连接应该使用的端口号。
  • <source>:源文件或目录的路径。
  • <user>:目标机器上的用户名。
  • <host>:目标机器的主机名或IP地址。
  • <destination>:目标文件或目录的路径。

例如,如果目标机器的SSH服务运行在端口2222上,你可以使用以下命令:

rsync -avz -e "ssh -p 2222" /path/to/source/ user@example.com:/path/to/destination/

在这个例子中,/path/to/source/是本地要同步的源目录,user@example.com是目标机器的用户名和地址,/path/to/destination/是目标目录,而-p 2222指定了使用端口2222

此外,如果你经常需要使用非默认端口进行同步,可以将这个端口号配置在~/.ssh/config文件中,这样你就不需要在每次使用rsync时都指定端口号。配置文件示例如下:

Host myserver
    HostName example.com
    User myuser
    Port 2222

在这个配置中,Host myserver是一个别名,你可以在rsync命令中使用它来代替完整的主机名和端口信息:

rsync -avz -e "ssh -p 2222" /path/to/source/ myserver:/path/to/destination/

综上所述,你就不需要在每次命令中都指定端口号,因为SSH客户端会从配置文件中读取端口信息。

综上所述,请确保在使用这些命令之前,你已经正确配置了SSH密钥或密码认证,以便rsync能够无障碍地通过SSH连接到远程主机。

相关文章
|
8月前
|
Unix Linux Shell
指定端口-SSH连接的目标(告别 22 端口暴力破解)
本文介绍了 SSH 命令 `ssh -p 44907 root@IP` 的含义与使用方法,包括命令结构拆解、完整示例及执行过程详解,帮助用户安全地远程登录服务器。
1252 0
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
972 5
|
网络安全 Python
Python编程--目标IP地址段主机指定端口状态扫描
Python编程--目标IP地址段主机指定端口状态扫描
246 1
|
监控 Linux Shell
Rsync 基于 SSH 同步
Rsync 实时同步配置
546 3
|
机器学习/深度学习 Ubuntu Linux
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?
|
Linux Shell 网络安全
在Linux中,rsync同步时,如何删除目标数据多出来的数据,即源上不存在,但目标却存在的文件或者目录?
在Linux中,rsync同步时,如何删除目标数据多出来的数据,即源上不存在,但目标却存在的文件或者目录?
在Linux中,rsync同步数据时,如果目标⽂件比源⽂件还新,则忽略该文件,如何做?
在Linux中,rsync同步数据时,如果目标⽂件比源⽂件还新,则忽略该文件,如何做?
|
8月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
880 1
二、Linux文本处理与文件操作核心命令
|
8月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
497 137
|
8月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
1360 58