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默认单线程,如果你有多个文件,可以并行传输。

  • 使用 xargsparallel 拆分文件列表,同时跑多个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/article/585028.html

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

相关推荐

  • 图片展示网站用什么虚拟主机速度最快,哪个好?

    图片展示网站要获得快速加载速度,关键在于虚拟主机的磁盘IO性能、网络线路质量和缓存机制,推荐选择配备NVMe固态硬盘、CN2 GIA线路并支持Redis动态缓存的云虚拟主机,例如阿里云虚拟主机和腾讯云轻量应用服务器,它们在图片类站点中的表现经过了市场验证,图片展示网站用什么虚拟主机速度快?核心选型指标一个图片展……

    2026年7月31日
    600
  • 服务器ecc内存是什么意思,ecc内存和普通内存区别大吗

    服务器ECC DDR内存是企业级计算环境稳定运行的基石,其核心价值在于通过纠错码技术从根本上解决数据完整性问题,保障业务连续性,与普通内存相比,它牺牲了极微小的成本与延迟,换取了服务器在高负载下极高的稳定性,是数据中心、云计算平台及关键任务应用的首选硬件标准,核心结论:数据完整性高于一切在服务器硬件选型中,稳定……

    2026年4月5日
    14900
  • AIoT数字经济创新发展是什么?AIoT行业发展前景如何

    AIoT数字经济创新发展的核心驱动力在于“智能互联”与“数据价值化”的深度融合,这一过程正在重塑产业格局,推动经济从高速增长向高质量发展转变,核心结论是:AIoT不仅仅是技术的叠加,而是通过万物互联与智能决策,构建起全新的数字经济生态体系,其关键在于打破数据孤岛,实现全产业链的智能化协同,从而大幅提升社会生产效……

    2026年3月16日
    10200
  • AI在线学习怎么入门,人工智能有哪些好课程?

    在数字化转型的浪潮中,教育领域正经历着前所未有的范式转移,核心结论在于:ai在线学习已不再是单纯的数字化工具辅助,而是通过深度算法重构了知识传递与内化的逻辑,实现了从标准化灌输向“千人千面”式精准赋能的根本性跨越,这种模式利用大数据分析与认知计算,能够精准定位学习者的知识盲区,动态调整学习路径,从而在极大提升学……

    2026年2月20日
    14300
  • RAKsmart云服务器秒杀$1.99/月起是真的吗,RAKsmart机房稳定性如何

    RAKsmart凭借$0.99/月起的VPS和$1.99/月起的云服务器,以香港、日本、新加坡、韩国及美国五大机房覆盖全球,是预算有限且追求低延迟用户的极致性价比之选,在云计算市场日益内卷的2026年,寻找既稳定又便宜的服务器已成为许多初创团队和个人开发者的首要任务,RAKsmart之所以能在众多竞争者中脱颖而……

    2026年6月27日
    2110
  • Ajax如何实现表格数据无刷新更新?ajax异步请求实现局部刷新

    Ajax实现表格数据无刷新更新的核心在于利用JavaScript的XMLHttpRequest或Fetch API异步请求后端接口,通过DOM操作局部替换HTML元素,从而避免整页重载,在传统的Web开发模式中,每次修改表格中的一行数据,用户都需要等待整个页面重新加载,这种体验不仅拖慢了操作节奏,还让用户感到烦……

    2026年5月31日
    5200
  • CF一进去就连接服务器失败是什么原因,怎么解决?

    当穿越火线(CF)一进去就弹出“连接服务器失败”提示时,核心原因是客户端与服务器之间的网络握手受阻,通常通过检查本地网络、修复游戏文件或更换连接节点即可解决,cf连接服务器失败怎么解决:从网络到文件的全面排查先确认到底是服务器崩了还是你这边的问题每次遇到连接失败,别急着折腾电脑,先打开浏览器,访问穿越火线官网或……

    2026年8月8日
    800
  • 苹果5s无法激活连接不到服务器怎么办?是什么原因?

    苹果5s无法激活连接不到服务器,最直接的解决办法是依次检查网络环境、系统状态和Apple服务器状态,其中八成以上情况出在网络连接或系统时间设置上,苹果5s激活时提示连接不到服务器,先别急着刷机手里拿着iPhone 5s,屏幕上却一直转圈提示“无法激活,连接服务器失败”,这种感觉确实让人着急,这台2013年发布的……

    程序编程 2026年8月10日
    600
  • Excel中如何删除定位?,删除定位的快捷键是什么

    Excel中删除特定类型数据(如空行、隐藏行或公式结果)的最快方法是使用“定位条件”功能,它能按类型精准选中目标单元格,然后一键执行删除操作,比手动筛选或逐行删除节省至少80%的时间,掌握Excel删除定位条件,提升数据清理效率Excel里的“定位条件”是隐藏在日常菜单下的高效工具,专门用于批量选中特定属性的单……

    2026年7月18日
    2700
  • aspnet筛选功能如何实现与优化?探讨最佳实践与常见问题解答

    ASP.NET筛选ASP.NET筛选的核心在于高效、安全地从数据源中提取符合特定条件的子集,涉及前端交互、后端逻辑与数据库查询的协同, 实现此功能需综合运用数据访问技术(如Entity Framework Core)、LINQ查询、参数化处理及前端框架(如jQuery, Vue.js, React)的数据绑定能……

    2026年2月3日
    13330

发表回复

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