scp、rsync远程文件同步

scp -r langchain_dev.zip root@1.2.2.5:/home/

/usr/bin/rsync -avP --partial --progress root@1.1.1.1:/home/langchain_dev.zip .

scp 命令本身‌不支持断点续传‌功能。

如果在传输大文件时网络中断或连接超时,scp 会终止传输,且已传输的部分不会被保留,下次必须从头开始重新传输整个文件。这是因为 scp 基于 SSH 协议设计,其传输机制是"原子式"的,没有记录偏移量、校验块或续传标记的能力。


✅ 推荐替代方案:使用 rsync 实现断点续传

rsync 是更强大的文件同步工具,通过 SSH 传输时可完全替代 scp,并天然支持断点续传和增量传输:

复制代码
rsync -avP --partial --progress /本地文件路径 用户@主机:/远程路径 
  • -a:归档模式,保持文件属性。
  • -v:显示详细信息。
  • -P:等价于 --partial --progress,保留已传部分并显示进度。
  • --append--append-verify:适用于大文件,从文件末尾追加,确保数据一致性。

💡 ‌小技巧‌:可以为常用命令设置别名,例如:

复制代码
alias scpr="rsync -avP --rsh=ssh" 

之后即可用 scpr 命令实现"安全续传版的 scp"。


🔧 其他支持断点续传的工具

工具 说明
‌**sftp**‌ OpenSSH 自带,支持 reput(上传续传)和 reget(下载续传)命令。
‌**lftp**‌ 支持 SFTP/FTP/HTTP 等协议,使用 -c 参数即可启用断点续传。
‌**可视化工具(如 WinSCP)**‌ 提供图形界面和稳定传输,适合频繁操作。

远程主机也需要安装 rsync 命令‌,才能成功执行远程同步操作。

原因说明:

在使用 rsync 进行远程文件同步时(例如:rsync -avz user@remote:/path/to/source/ /local/destination/),rsync 会通过 SSH 协议连接到远程主机,并在远程主机上执行 rsync 命令来处理文件传输。因此,远程主机必须安装并运行 rsync 服务或至少具备 rsync 可执行文件。


如何确认远程主机是否已安装 rsync?

你可以通过以下方式检查远程主机是否安装了 rsync

复制代码
ssh root@192.168.109.110 "rsync --version" 

如果输出类似如下信息,则表示已安装:

复制代码
rsync version 3.1.3 protocol version 31 Copyright (C) 1996-2018 by Andrew Tridgell, Wayne Davison, and others. 

如果提示 command not found,则说明远程主机未安装 rsync,需要先安装。


安装 rsync 的方法(以常见 Linux 发行版为例):

Ubuntu/Debian 系统:
复制代码
sudo apt-get update sudo apt-get install rsync 
CentOS/RHEL 系统:
复制代码
sudo yum install rsync 
Arch Linux 系统:
复制代码
sudo pacman -S rsync 

总结:

要实现远程 rsync 同步,‌本地和远程主机都必须安装 rsync ‌,否则会报错如 rsync: command not found 或连接被意外关闭等。

相关推荐
宋浮檀s2 小时前
应急响应——Web漏洞:命令执行+SSRF+弱口令
运维·数据库·sql·网络安全·oracle·应急响应
日取其半万世不竭2 小时前
iftop、nethogs 和 nload:Linux 服务器网络流量实时监控工具介绍
linux·运维·服务器
mounter6252 小时前
Linux 内核资源管理:控制组(cgroup)的演进与“策略组”新提案
linux·运维·服务器·cgroup·kernel
bksczm2 小时前
文件在磁盘中的存储方式
linux·运维·服务器
L1624762 小时前
OpenSSH 半自动升级方案(独立编译 + 手动迁移 + 重建 systemd 服务)
linux·服务器·ssh
半旧夜夏2 小时前
【保姆级】微服务组件环境搭建(Docker Compose版)
java·linux·spring cloud·微服务·云原生·容器
Wpa.wk2 小时前
win环境本地文件上传远程服务器(scp/远程连接工具)
运维·服务器
Soari3 小时前
SSH 主机密钥冲突
运维·网络·ssh
爱莉希雅&&&3 小时前
zabbix快速搭建和使用
android·linux·数据库·zabbix·监控
z200509303 小时前
【linux学习】深入理解linux文件I/O,从C标准库到内核态
linux·学习·操作系统