在管理Linux服务器时,经常需要在不同主机之间传输文件。无论是备份数据、部署应用还是迁移服务,选择一种安全高效的文件传输方式至关重要。本文将详细介绍三种最常用的方法:SCP、Rsync和SFTP,并通过实战演示帮助您快速掌握。这些技术都基于SSH协议,确保了传输过程的加密性,是Linux文件传输的首选方案。
SCP(Secure Copy)是最简单的远程文件复制工具,它基于SSH,语法与cp命令类似。适用于一次性、小文件的传输任务。
# 从本地复制到远程scp [选项] 本地文件 用户名@远程IP:远程路径scp [选项] 用户名@远程IP:远程文件 本地路径 -r:递归复制整个目录-P:指定SSH端口(大写P)-C:启用压缩传输-i:指定私钥文件 # 将本地 /backup 目录复制到远程服务器 192.168.1.100 的 /data 下scp -r /backup root@192.168.1.100:/data/scp root@192.168.1.100:/var/log/app.log . 优点:简单直接,适合临时传输。缺点:不支持增量传输,每次覆盖全量文件,不适合大文件或频繁同步。
Rsync是更强大的文件同步工具,支持增量传输、断点续传、差异计算,非常适合定期备份和大规模文件同步。它同样可以通过SSH通道实现安全传输。
# 本地到远程rsync [选项] 本地路径 用户名@远程IP:远程路径rsync [选项] 用户名@远程IP:远程路径 本地路径 -a:归档模式,保留权限、时间戳等-v:显示详细信息-z:传输时压缩--delete:删除目标端多余的文件,使两端完全一致--progress:显示传输进度-e "ssh -p 2222":指定使用SSH及端口 # 将本地网站目录同步到远程,并删除远程多余文件rsync -avz --delete /var/www/ root@192.168.1.100:/var/www/rsync -avz --progress root@192.168.1.100:/var/log/ /backup/logs/ 优点:高效、支持增量、灵活。适合定期备份和镜像同步。缺点:命令选项较多,初次使用需学习。
SFTP 是一个交互式文件传输程序,也基于SSH。它提供了类似FTP的命令行界面,支持文件管理(列出、删除、重命名等),适合需要交互操作或管理远程文件时使用。
# 连接远程服务器sftp root@192.168.1.100sftp -b batch.txt root@192.168.1.100 # 交互式下载多个文件sftp root@192.168.1.100sftp> cd /data/imagessftp> get *.jpgsftp> exit 优点:交互友好,支持文件管理。缺点:不适合自动化脚本,速度不如rsync(特别是大量小文件)。
所有上述方法都依赖SSH,因此加强SSH安全至关重要:
通过掌握SCP、Rsync和SFTP,您可以灵活应对各种Linux文件传输场景,在保证安全高效的同时,提升运维效率。建议在实际工作中多加练习,选择最适合您需求的方法。
本文由主机测评网于2026-02-14发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/20260225206.html