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 或连接被意外关闭等。

相关推荐
迦南的迦 亚索的索2 小时前
LINUX环境
linux·运维·服务器
yuanjj882 小时前
linux下调试域格CLM920 NC5等9x07平台模块 QMI拨号
linux·运维·服务器
IMPYLH2 小时前
Linux 的 printenv 命令
linux·运维·服务器·bash
SilentSamsara2 小时前
SSH 远程管理:密钥登录 + 隧道转发,一次性配置好
linux·运维·服务器·ubuntu·centos·ssh
LN花开富贵2 小时前
【ROS】鱼香ROS2学习笔记一
linux·笔记·python·学习·嵌入式·ros·agv
疏星浅月2 小时前
数据对齐的底层原理与性能优化
linux
Jurio.3 小时前
本机开发 + 多机执行的极简远端运行工具
linux·git·python·github·远程工作
2501_945837433 小时前
OpenClaw:开启 “行动 AI“ 新纪元,从聊天机器人到自主智能体的范式革命
服务器
阿巴~阿巴~3 小时前
Git版本控制完全指南:从入门到实战(简单版)
linux·服务器·git