linux怎么在两台服务器之间传文件夹,有哪些方法

在Linux服务器间传输文件夹,最常用的命令是scp和rsync,其中rsync支持增量同步和断点续传,更适合大文件夹和频繁同步的场景。

Linux服务器间传文件夹,这些命令你必须掌握

无论你是运维新手还是老手,在两台Linux服务器之间搬运数据都是家常便饭,传文件夹看似简单,但选错方法可能让你等得心焦,甚至丢数据,下面我直接上干货,把主流方案摊开讲清楚。

我修复了Linux没有msconfig的bug
加载中
我修复了Linux没有msconfig的bug

scp:零学习成本的基础方案

scp(Secure Copy)基于SSH加密传输,语法和cp几乎一样,适合快速传小文件或一次性任务。

scp -r /本地文件夹 用户名@远程IP:/目标路径
  • -r 参数递归拷贝整个目录。
  • 默认端口22,如果SSH端口换了,用 -P 端口号。
  • 缺点:单线程传输,大文件慢;不支持断点续传;无法增量更新。

适用场景:临时传个几百MB的小包,或者对方服务器只有scp可用。

rsync:增量同步与断点续传的首选

rsync是Linux下最强大的文件同步工具,没有之一,它只传输变化的部分,网络中断后可以续传,还能压缩数据、限制带宽。

rsync -avz /本地文件夹 用户名@远程IP:/目标路径
  • -a 归档模式,保留权限、时间戳等属性。
  • -v 显示进度。
  • -z 传输时压缩,节约带宽。
  • -P 保留部分传输的文件,实现断点续传,同时显示进度。
  • 首次传输和scp一样慢,但后续同步飞起。

适用场景:每天定时同步网站目录、备份数据库文件、迁移几十GB以上的数据。

tar配合ssh:打包传输的另一种思路

当文件夹里小文件特别多(比如PHP项目),直接用scp或rsync可能因为大量丢包而变慢,此时可以先用tar打包,再通过管道发送到远程解压。

tar czf - /本地文件夹 | ssh 用户名@远程IP "tar xzf - -C /目标路径"
  • linux怎么在两台服务器之间传文件夹,有哪些方法

    流式打包,不占用本地磁盘。

  • 压缩率可调,-z 是gzip,想更快换 -j(bzip2)或 -J(xz)。
  • 适合文件数量上万、单个文件体积小的场景。

使用nc快速传输(不加密)

如果你在局域网内传文件,且不担心被监听,nc(netcat)是速度最快的方案,它没有加密开销,理论能跑满带宽。

接收端先开监听:

nc -l 端口号 | tar xzf -

发送端传输:

tar czf - /本地文件夹 | nc 接收端IP 端口号

注意:nc没有加密,千万别在公网用,另外要确保防火墙放行对应端口。

scp和rsync哪个更适合你的场景

很多人在第一次选工具时都会纠结,我直接告诉你,多数情况下rsync优于scp,但也不是绝对。

传输速度对比

  • 单次传输大文件:scp早期版本可能略快,但现代rsync启用压缩后差距不大,如果文件已存在,rsync只传增量,速度碾压。
  • 大量小文件:rsync比scp稳定,因为scp单线程容易丢包,而rsync通过分块校验可以应对。
  • 网络不稳定:rsync支持断点续传,scp断了只能重来。

安全性对比

两者都基于SSH隧道,加密强度相同,但如果你用nc传,那就不加密了。安全第一的原则下,内网用nc,公网必须用scp或rsync。

断点续传与增量传输

这是rsync的核心优势。--partial 参数让rsync保留已传部分,下次继续,scp没有这个能力,对于定时同步任务,比如每天凌晨备份,rsync结合cron是实现linux跨服务器同步文件夹命令的最佳实践。

Linux服务器之间快速传输大量文件的实用技巧

当你面对几十GB甚至上百GB的文件夹时,光靠基础命令不够,得用点巧劲。

压缩传输的最佳实践

网络带宽通常是瓶颈,压缩能减少传输量,但会消耗CPU,需要平衡。

  • 使用rsync的 -z 参数,它会自动压缩,但不一定会压缩整个文件,只是分块。
  • linux怎么在两台服务器之间传文件夹,有哪些方法

  • 手动压缩再传:tar打包后,用scp或rsync传压缩包,这样压缩率更高,但需要额外磁盘空间和打包时间。

建议: CPU不强且网络带宽充足,不压缩;CPU够强、网络慢,用 -z 或 -J 高压缩比。

限制带宽,避免影响其他服务

共享带宽的服务器上,传文件可能把带宽占满,导致业务响应慢,rsync允许你限速。

rsync -avz --bwlimit=10M /本地文件夹 用户名@远程IP:/目标路径

--bwlimit 单位是KB/s,例子中 10M 代表10MB/s,根据你的带宽合理设置。

使用nohup或screen后台传输

传大文件通常要等很久,如果SSH连接断开,任务就中断了,用nohup把命令丢到后台。

nohup rsync -avz /本地文件夹 用户名@远程IP:/目标路径 > rsync.log 2>&1 &

或者用screen/tmux,它们更灵活,可以随时连回来查看进度,这是解决linux服务器传输文件夹速度慢问题的常见配套方案,因为你可以让传输在后台跑,不影响你继续敲命令。

多线程加速(快速传输大量文件)

scp和rsync默认单线程,如果你有多个文件,可以并行传输。

  • 使用 xargs 或 parallel 拆分文件列表,同时跑多个rsync进程。
  • 或者直接用 fpsync(包含在Fpart工具集里),它能将文件列表分片并用多进程同步。

注意:并行会消耗更多CPU和网络带宽,不要盲目开太多线程,通常2-4个就够。

传输后如何验证文件夹完整性

文件传完不等于万事大吉,尤其是重要数据,必须确认没有丢包或损坏。

使用md5sum或sha256sum

先在本机计算所有文件的校验和清单,再在远程机器上计算一遍,比对结果。

# 本地生成校验文件
find /本地文件夹 -type f -exec md5sum {} ; > local.md5
# 把校验文件传到远程
scp local.md5 用户名@远程IP:/目标路径
# 远程执行校验
md5sum -c local.md5

linux怎么在两台服务器之间传文件夹,有哪些方法

如果输出全是 OK,说明文件完整,这个过程比较耗时,但可靠。

使用rsync自带的校验

rsync传输时默认使用弱校验(快速),可以用 --checksum 强制要求文件校验和,但这样会大幅降低速度,因为要读取整个文件。通常不推荐开启,除非数据敏感度极高。

更实用的做法是:传输完成后,用 rsync -avc --delete 再跑一次空同步,如果没有任何输出,说明文件已一致。

Linux传文件夹常见问题解答

问:scp和rsync可以同时使用吗?

这两个命令完全独立,但一般不需要同时用,如果你喜欢scp的简单,又想要断点续传,可以试试 rsync -e ssh,它强制rsync使用SSH作为传输通道,行为和scp类似但多出rsync的特性,rsync默认就是走SSH,所以日常用rsync就够了。

问:为什么rsync传输速度比我想象中慢?

多数情况下是因为网络延迟或小文件过多,检查一下是否开启了压缩,如果CPU压力不大,加上 -z。--progress 参数会频繁打印进度,也会消耗CPU,可以去掉,如果文件数量超过10万,建议先用 tar 打包再传,避免rsync建文件列表时卡住。

问:如何实现两台服务器之间的定时同步文件夹?

在源服务器上编辑crontab,添加一条rsync命令,例如每天凌晨2点同步:

0 2    /usr/bin/rsync -avz --delete /本地文件夹 用户名@远程IP:/目标路径 >> /var/log/rsync.log 2>&1

--delete 参数会让远程删除本地没有的文件,达到完全镜像,注意第一次手动跑一下,确保权限和路径正确。

传文件夹没有银弹,小文件用scp,大文件或同步用rsync,局域网内图快用nc,文件多且小就打包再传,记住把安全放在首位,公网传输一定要加密,内网可以适当牺牲加密换速度,选择最适合你网络环境和文件特征的方案,比盲目套用命令更高效。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/linux%e6%80%8e%e4%b9%88%e5%9c%a8%e4%b8%a4%e5%8f%b0%e6%9c%8d%e5%8a%a1%e5%99%a8%e4%b9%8b%e9%97%b4%e4%bc%a0%e6%96%87%e4%bb%b6%e5%a4%b9%ef%bc%8c%e6%9c%89%e5%93%aa%e4%ba%9b%e6%96%b9%e6%b3%95/

赞 (0)
如何为代理服务器安装配置nginx,常见问题有哪些?
上一篇 2026年8月20日 05:04
云服务器IP账号密码忘了怎么办?,怎么找回密码
下一篇 2026年8月20日 05:05

相关推荐

  • Jtti香港服务器测评,CN2 GIA实测数据与性能表现,香港服务器租用多少钱

    Jtti香港服务器凭借CN2 GIA优质线路,在2026年依然保持极高的国际访问稳定性,实测延迟低至20ms级,是跨境业务出海及高并发场景下的首选方案,核心性能实测:CN2 GIA线路的真实表现在2026年的网络基础设施环境中,线路质量直接决定了用户体验的上限,Jtti作为老牌服务商,其香港节点的核心竞争力在于……

    2026年5月19日
    4800
  • Excel年月怎么计算?Excel日期加减月份公式

    在Excel中计算年月差,最准确且通用的方法是使用DATEDIF函数,它能完美处理跨月、跨年及闰年情况,避免手动计算带来的逻辑漏洞,很多职场人在处理考勤、项目周期或合同到期日时,经常遇到一个痛点:直接用两个日期相减,得到的是天数,再除以30或365来估算月份,结果往往偏差巨大,这种“近似算法”在财务审计或人力资……

    2026年7月6日
    18800
  • 如何用Excel进行词频统计?,有哪些常用技巧?

    Excel自带的函数与数据透视表功能,完全可以高效完成文本词频统计,无需编程知识或额外付费软件,Excel词频统计怎么做?从基础函数到数据透视表实战基础方法:Excel统计出现次数的COUNTIF函数COUNTIF是Excel词频统计的入门核心,适用于单一关键词的频率计算,操作路径:假设文本数据在A列,在B列输……

    2026年7月20日
    2800
  • AIoT的问题有哪些?AIoT常见问题及解决方案详解

    AIoT(人工智能物联网)产业发展的核心症结,在于技术碎片化导致的数据孤岛效应、端侧算力瓶颈引发的应用延迟,以及安全防护缺失带来的隐私泄露风险,解决这些问题,必须从底层协议标准化、边缘计算架构升级以及全生命周期安全体系构建三个维度入手,才能实现真正的万物智联,协议碎片化与数据孤岛阻碍互联互通当前,AIoT行业面……

    2026年3月15日
    12500
  • Excel表格怎么换行分列?

    在 Excel 中处理“换行分列”通常有两种常见的场景:将包含换行符的单个单元格内容,拆分成多行(纵向拆分),将包含换行符的内容,按换行位置拆分成多个列(横向拆分),以下是针对这两种场景的详细操作方法:拆分成多行(纵向拆分)假设 A1 单元格内容为:苹果香蕉橘子你希望将其变成三行:A1: 苹果A2: 香蕉A3……

    2026年7月10日
    22600
  • 感知哈希算法能根据文字识别吗,文字识别技术有哪些

    感知哈希算法无法直接识别文字,它专门用于处理图像或音频等多媒体文件,通过提取视觉或听觉特征指纹来比对相似度,与OCR文字识别技术有着本质区别,很多人容易把“看图识物”和“看字识字”搞混,感知哈希(Perceptual Hash, pHash)的核心逻辑是捕捉内容的“指纹”,而不是解析内容的“语义”,这就好比给一……

    2026年5月28日
    7200
  • 交易系统故障演练与真实灾备能力的差距

    交易系统故障演练做得再好,也不等于真实灾备能力过关——演练是彩排,灾备是真枪实弹,两者的差距往往在故障真正来临时才暴露无遗,这句结论听起来有点扎心,但搞过交易系统运维的人都懂,故障演练不是走流程,更不是给监管看的PPT,它应该是一面镜子,照出真实灾备能力到底有几斤几两,多数机构的演练,要么环境太干净,要么故障注……

    2026年9月7日
    200
  • Ajax下拉框如何查询数据库数据?下拉框联动查询接口怎么写

    Ajax下拉框查询数据库数据的核心在于利用JavaScript异步请求后端接口,实现页面不刷新即可动态加载选项,从而显著提升用户体验和系统性能,在传统的Web开发模式中,每当用户需要在下拉框中选择数据时,往往需要提交整个表单或重新加载页面,这不仅导致网络带宽浪费,更让等待时间变得难以忍受,随着互联网应用对实时交……

    2026年6月4日
    3500
  • AJAX返回数据错误怎么办?ajax返回数据错误解决方法

    AJAX返回数据错误通常由跨域限制、JSON格式解析失败或网络超时引起,核心解决思路是检查服务器响应头、验证JSON合法性并优化前端异步请求逻辑,在Web开发中,AJAX(Asynchronous JavaScript and XML)依然是前后端交互的基石,尽管Fetch API和Axios等现代库逐渐普及……

    2026年5月30日
    5100
  • 怎么用U盘给服务器安装系统,服务器没有光驱怎么装系统?

    直接用U盘给服务器装系统,核心步骤是:制作一个匹配服务器硬件架构的启动U盘,进BIOS把启动顺序切到U盘优先,然后按提示完成部署,整个过程比光驱安装快得多,难点主要卡在引导模式和阵列卡驱动这两个环节,动手前先备齐物料,U盘装系统才不容易翻车选U盘:容量、速度、接口都有讲究容量至少8GB,装Windows Ser……

    2026年9月22日
    200

发表回复

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