SSH 服务器之间互传文件指南:SCP 与 RSYNC 的核心区别与实战技巧
SSH 服务器之间互传文件(常用两种)
前提:两台服务器都能互通(A 能 ping 通 B、防火墙放行 22 端口)
1. scp(最简单,适合单次传文件 / 文件夹)
语法:
# 本地(当前服务器) 文件 → 远程服务器
scp 本地文件 用户名@目标IP:/目标路径
例子
单个文件:
scp /root/test.zip [email protected]:/root/
传文件夹(加 -r):
scp -r /root/data [email protected]:/root/
如果目标服务器 SSH 不是默认 22 端口,加 `-P 端口`(大写 P)
scp -P 2222 /root/test.zip [email protected]:/root/
注意:`-P` 放在 IP 前面
2.rsync
# 推送文件到另一台服务器
rsync -avz /root/test.zip [email protected]:/root/
# 推送整个目录
rsync -avz /root/data/ [email protected]:/root/data/
参数说明:
-a:归档,保留权限、时间、目录结构-v:显示进度-z:传输时压缩,节省带宽
非 22 端口:
rsync -avz -e "ssh -p 2222" /root/test.zip [email protected]:/root/
-
SCP 优势与劣势:配置简单、开箱即用且适合单次小型文件快速传输,但缺乏增量同步和断点续传功能,面对大文件或中断后需要重新传输。
-
RSYNC 优势与劣势:支持增量同步、断点续传和带宽限制,极其高效适合大文件与目录同步,但其参数配置相对复杂且首次全量扫描时开销稍大。