linux怎么从另一个服务器拷贝文件内容,有哪些命令?

Linux从另一个服务器拷贝文件,最直接的做法是使用scp、rsync或sftp命令,其中scp适合一次性快速传输,rsync擅长增量同步,sftp则提供交互式操作体验。

在实际运维中,文件拷贝的跨服务器场景非常普遍,无论是迁移数据、备份配置,还是同步日志,都绕不开这几种工具,很多人纠结到底该用哪个,其实核心就看三点:网络稳定性、文件大小和同步频率,下面我结合具体操作和对比,把每个工具的特性和适用场景拆开来说。

linux之间的文件拷贝
加载中
linux之间的文件拷贝

核心命令:scp、rsync、sftp分别怎么用

这三个命令是Linux下跨服务器拷贝的标配,但各自的设计思路不同,先搞清楚它们的基本用法,你才能根据实际场景快速选择。

scp:简单直接的安全拷贝

scp(Secure Copy)基于SSH协议,语法和cp非常相似,适合临时、一次性的文件传输,它的优势是零配置,只要SSH连通就能用。

拷贝单个文件到远程服务器:

scp /local/file.txt user@remote_ip:/remote/directory/

从远程服务器下载到本地:

scp user@remote_ip:/remote/file.txt /local/directory/

拷贝整个目录(加-r参数):

scp -r /local/dir user@remote_ip:/remote/dir

几个实用参数:

  • -P 指定端口(大写P,如果SSH端口不是默认22)
  • -C 启用压缩(传输文本文件时效果明显)
  • -l 限制带宽(单位Kbit/s,比如-l 1000限制1Mbps)

scp最大的问题是传输大文件或大量小文件时,如果网络中断,必须从头重传,而且它不支持增量同步,每次都是全量拷贝。

rsync:增量同步的首选

rsync可以说是scp的进阶版,核心优势是只传输差异部分,并且支持断点续传,对于需要定期同步的目录,rsync几乎是最优解。

本地到远程同步:

rsync -avz /local/dir/ user@remote_ip:/remote/dir/

远程到本地同步:

rsync -avz user@remote_ip:/remote/dir/ /local/dir/

参数解释:

  • -a 归档模式,保留权限、时间戳等属性
  • -v 显示详细信息
  • -z 传输时压缩数据
  • --progress 显示进度条
  • --partial 保留部分传输的文件,实现断点续传

举个例子,如果你每天凌晨同步一次日志目录,rsync只拉取新增或修改的文件,第一次全量后后续速度极快,业内专家指出,在涉及大量小文件的场景下,rsync的增量传输效率比scp高出数倍。

sftp:交互式文件传输

sftp同样是SSH套件的一部分,它不提供命令行式的一键拷贝,而是通过交互式会话操作,适合需要查看远程目录结构、选择性下载的场景。

linux怎么从另一个服务器拷贝文件内容,有哪些命令?

连接远程服务器:

sftp user@remote_ip

进入sftp环境后,常用命令:

  • ls 列出远程文件
  • lls 列出本地文件
  • get remote_file 下载文件到本地
  • put local_file 上传文件到远程
  • get -r dir 递归下载目录
  • exit 退出

sftp的优点是安全可控,但缺点也很明显:无法后台运行,不能断点续传(部分客户端支持,但原生sftp不支持),且交互式操作不适合自动化脚本。

实操场景:从远程服务器拷贝文件到本地

这里我直接给出三种常见场景的完整操作步骤,你照着做就能跑通。

快速拉取一个配置文件

假设你需要在本地编辑远程服务器上的/etc/nginx/nginx.conf,然后用scp一次性拉下来:

scp root@192.168.1.100:/etc/nginx/nginx.conf ./nginx.conf.bak

编辑完再上传回去:

scp ./nginx.conf.bak root@192.168.1.100:/etc/nginx/nginx.conf

同步整个网站目录到本地备份

如果网站目录有几十万个小文件,scp显然不合适,用rsync更靠谱:

rsync -avz --delete --progress root@192.168.1.100:/var/www/html/ /backup/www/

--delete参数会删除本地有而远程已经删除的文件,保持两边完全一致,第一次同步可能慢,但后续只更新修改过的文件,速度飞快。

交互式下载特定文件

如果你不确定远程目录下有哪些文件,或者只想挑几个文件下载,sftp更直观:

sftp root@192.168.1.100
cd /var/log
ls -la
get nginx/access.log ./logs/
exit

scp和rsync哪个更适合跨服务器拷贝

这个对照表能帮你快速决策:

对比维度 scp rsync
传输方式 全量拷贝 增量同步(只传差异部分)
断点续传 不支持 支持(加--partial)
压缩传输 支持(-C) 支持(-z)
保留文件属性 有限(部分参数) 完整(-a保留权限、时间戳等)
传输速度 全量重传,大文件慢 增量高效,小文件优势明显
使用难度 简单,语法类似cp 参数较多,学习曲线略高

选择建议:

  • 如果只是偶尔传一两个小文件(几MB以内),scp完全够用,没必装rsync。
  • linux怎么从另一个服务器拷贝文件内容,有哪些命令?

  • 如果需要定期同步目录、备份数据,或者文件很大、网络不稳定,rsync是更聪明的选择。
  • 如果远程服务器没有rsync服务端(多数Linux发行版默认已安装,但极简镜像可能没有),scp是兜底方案。

关于安全性: 两者都基于SSH协议,传输过程加密,安全性没有本质区别。

linux服务器之间传输文件用什么工具

很多人在初次接触时总在问“linux服务器之间传输文件用什么工具”,其实答案取决于你的具体场景,没有绝对的好坏,下面我按常见需求分类推荐。

基于网络环境的选择

  • 内网高速传输: 如果服务器在同一机房,带宽充足,scp和rsync速度差异不大,但rsync的增量特性依然有优势,特别是文件数量多时。
  • 公网低带宽高延迟: 强烈推荐rsync,因为它的压缩和增量传输能显著减少数据量,如果网络不稳定,加上--partial和--progress,中断后可以续传。
  • 防火墙限制严格: 只开放了SSH端口(22),scp、rsync、sftp都能用,因为它们都基于SSH,如果连SSH都没有,可以临时开一个HTTP或FTP,但安全性差很多,不建议。

不同工具的典型场景

  • 运维自动化脚本: 用rsync,因为它参数丰富,支持排除文件、删除匹配、限定带宽等,可以很好地融入cron定时任务。
  • 临时传文件给同事: scp最方便,一行命令搞定,不需要考虑属性保留。
  • 需要双向同步: 可以考虑使用unison,但多数情况下rsync配合--delete和反向同步就够用了。

价格”和“地域”的考虑

这里说的“价格”不是工具本身,而是传输成本,如果你在云服务商之间传输数据,比如从简米云ECS拷贝到酷番云CVM,公网流量会收费,统计显示,跨地域传输流量费用可能占整体成本的相当比例。先压缩再传输、尽量在非高峰时段运行,以及使用rsync的增量同步减少重复数据,都能有效降低开销。

至于“地域”影响,不同机房之间的延迟和丢包率差异较大,比如从北京机房同步到广州机房,建议使用rsync的--bwlimit限制带宽,避免占满带宽导致其他业务受影响。分批次传输比一次性全量更稳妥。

提升传输速度的实用技巧

无论你用scp还是rsync,下面几个技巧都能帮你明显提速,尤其是大文件或海量小文件场景。

开启压缩传输

对于文本文件(日志、配置、代码),压缩效果立竿见影。

  • scp:scp -C source dest
  • rsync:rsync -z source dest

统计表明,文本类文件压缩后体积能缩小50%以上,传输时间几乎减半,但对于已经压缩过的文件(如zip、jpg、mp4),压缩参数反而会浪费CPU资源,不建议开启。

linux怎么从另一个服务器拷贝文件内容,有哪些命令?

限制带宽,避免影响业务

在内网或公网传输时,如果不想让拷贝任务占满带宽,可以限制速率。

  • scp:scp -l 10000(单位Kbit/s,即约1MB/s)
  • rsync:rsync --bwlimit=10000(单位KB/s,即约10MB/s)

注意单位不同,scp是Kbit,rsync是KB,建议在非业务高峰期执行,或者设置合理的限速值。

使用rsync的断点续传和部分传输

大文件传输时,网络中断是常事,rsync的--partial选项会保留已传输的部分,下次同步时只传剩余部分,搭配--progress可以实时查看进度。

rsync -avz --partial --progress user@remote:/bigfile.iso /local/

如果中断后重新运行同样的命令,rsync会自动识别已存在的部分并续传。

调整SSH加密算法

SSH默认的加密算法(如aes128-ctr)速度足够快,但在老旧服务器上,可以尝试更快的算法,比如chacha20-poly1305,不过这个改动需要两端都支持,且安全性会略有降低,大多数情况下不需要调整。

常见问题与解答

Q1:linux跨服务器拷贝文件命令有哪些?

主要有三个:scp、rsync和sftp,scp适合一次性全量传输,rsync适合增量同步和断点续传,sftp用于交互式浏览和下载,还有curl和wget配合HTTP/HTTPS也可以用,但需要远程服务器上有Web服务,对于大多数运维场景,scp和rsync已经覆盖了90%的需求。

Q2:scp传输速度慢怎么解决?

先检查网络带宽是否饱和,如果带宽充足但还是慢,可能是加密协议开销大,尝试加-C压缩参数传输文本文件,或者改用rsync加-z,压缩效率更高,如果文件特别大,可以考虑分片传输,或者使用tar先打包再压缩,减少文件数量,降低SSH握手次数,确认SSH是否配置了Compression yes,但默认通常已开启。

Q3:如何自动同步两个服务器之间的文件?

使用rsync配合cron定时任务是最常见的方案,例如每天早上3点同步日志目录,可以在/etc/crontab中添加一行:

0 3    root /usr/bin/rsync -avz --delete root@192.168.1.100:/var/log/ /backup/logs/

对于更复杂的双向同步,可以考虑lsyncd,它基于inotify监控文件变动并实时触发rsync同步,多数情况下单向rsync配合cron已经足够。

无论你选择scp、rsync还是sftp,核心原则是根据文件大小、网络条件和使用频率来定。 一次性小文件用scp,定期大批量同步用rsync,需要交互浏览时用sftp,掌握这三个命令,绝大多数跨服务器文件拷贝需求都能轻松应对。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/592271.html

赞 (0)
w7系统安装sql服务器不兼容怎么办,怎么解决
上一篇 2026年8月22日 08:39
arm架构服务器能装哪些系统,哪个系统最稳定
下一篇 2026年8月22日 08:41

相关推荐

  • 广州稳定bgp高防ip租用哪家好?高防服务器怎么选

    2026年企业级抗D与低延迟兼顾的最优解,广州稳定bgp高防ip租用凭借T级清洗能力与动态路由调度,是华南及全国业务抵御大流量攻击、保障业务连续性的刚需基础设施,为何华南企业首选广州稳定bgp高防ip租用?地域枢纽与网络生态优势广州作为国家级互联网骨干直联点,汇聚了庞大的出海与内贸流量,根据中国信通院2026年……

    2026年4月29日
    5000
  • 如何彻底清除痕迹?AI生成内容如何去除水印,AI去标识

    如何彻底抹除AI网络工具痕迹?系统性解决方案在此当AI生成的内容不可避免地需要融入你的工作流,如何确保其输出不留明显痕迹、符合专业标准并真正体现“人”的价值?答案是:去除AI痕迹非单一技巧,而是需结合技术检测、深度编辑、人机协同与持续优化的系统性工程,精准识别:AI内容的典型“指纹”语言风格雷同化: 过度流畅但……

    2026年2月16日
    21630
  • 云途春节循环8折真的吗?深港CNIX深圳香港VPS物理机优惠

    云途春节循环8折优惠已正式生效,深港CNIX节点下的深圳与香港VPS及物理机产品,通过叠加折扣后最低仅需144元/年即可入手,适合预算有限且对网络稳定性有基础要求的个人开发者与小型企业,春节不仅是团聚的时刻,也是IT基础设施进行年度盘点与升级的最佳窗口期,对于许多在云端耕耘的开发者而言,服务器成本的优化直接关系……

    2026年7月7日
    16100
  • Linode新用户注册送$100是真的吗?云服务器租用价格

    Linode为全新账户提供$100信用额度,其云服务器起步价低至$0.0075/小时,依托全球27个数据中心节点,是追求高性能与低成本平衡的开发者和企业的首选方案,在云计算市场日益内卷的今天,寻找一个既稳定又便宜的VPS服务商变得异常困难,许多用户往往在价格和服务质量之间反复横跳,最终陷入“便宜没好货,好货不便……

    2026年6月30日
    5000
  • 服务器crc内存校验是什么意思?服务器内存校验错误怎么解决

    服务器CRC内存校验是保障数据完整性与系统稳定性的核心防线,其核心结论在于:它不仅是一种错误检测机制,更是防止静默数据损坏导致业务崩溃的最后一道屏障,在企业级应用环境中,内存故障往往呈现出随机性和隐蔽性,如果没有开启或正确处理CRC校验,微小的数据翻转可能演变成数据库逻辑错误、文件系统损坏甚至系统蓝屏,其造成的……

    2026年4月4日
    10300
  • 我的世界中国版怎么加入2b2t,服务器为什么进不去

    我的世界中国版玩家想要加入2b2t服务器,需要先获取国际Java版正版账号,随后使用官方启动器或第三方启动器,在多人游戏中添加服务器地址2b2t.org即可进入,我的世界中国版怎么加入2b2t服务器?两种方法详解通过国际Java版直接加入(最推荐)这是最直接、最稳定的方式,适合所有玩家,尤其是新手,第一步:获取……

    2026年8月2日
    1100
  • AI切片存储怎么实现?AI怎么存储切片数据?

    AI切片存储的核心在于构建一个分层混合存储架构,通过将高频访问的向量切片存入高性能向量数据库,将海量原始切片归档至分布式对象存储,并利用内存映射技术加速实时调用,从而实现高并发、低延迟的数据吞吐,这种架构不仅解决了海量非结构化数据的检索效率问题,还通过冷热数据分离策略大幅降低了存储成本,是现代AI大模型应用落地……

    2026年2月24日
    10700
  • 归档存储移动怎么操作?云存储数据迁移费用

    归档存储移动的核心在于将冷数据从高性能存储迁移至低成本对象存储,通过生命周期管理实现自动化流转,从而在保障数据可恢复性的前提下,大幅降低企业IT基础设施的长期持有成本,随着数字化转型的深入,企业产生的数据量呈指数级增长,并非所有数据都需要实时访问,大量历史日志、合规档案、备份副本处于“沉睡”状态,却仍占用着昂贵……

    2026年5月28日
    4200
  • 一台服务器如何同时使用3个IP地址,服务器多IP怎么设置?

    一台服务器同时用3个IP地址,本质就是给同一块网卡绑定3个不同的IP地址:Linux用 ip addr add 命令,Windows在高级TCP/IP设置里点击添加,云服务器则需要先在控制台购买并绑定弹性公网IP, 下面按物理机、云服务器两条路线拆开说,所有步骤都能直接照着做,服务器多IP绑定方法:先看三个真实……

    2026年9月9日
    100
  • 服务器c盘怎么扩容?服务器系统盘扩容方法

    服务器C盘扩容是保障系统稳定运行的关键操作,核心原则是:非破坏性扩容优先,数据安全第一,优先选用系统自带工具或可靠第三方方案,避免重装系统,扩容前必做:风险评估与准备工作(决定成败的3个关键步骤)确认磁盘类型与分区格式打开“磁盘管理”(Win+R输入diskmgmt.msc),查看C盘所在磁盘是基本磁盘还是动态……

    2026年4月15日
    7400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注