家里NAS存了几年的照片和视频,最近想搬到云盘上做异地备份。几百GB的文件,传到一半断网了,重来一遍得浪费好几个小时。这种情况谁都遇到过,其实关键就在于——能不能断点续传。
为什么普通复制扛不住网络波动?
像Windows直接拖拽文件上传,或者用一些基础FTP工具,一旦传输中断,就得从头开始。因为它们没有记录“已经传了多少”的机制。尤其是大文件,比如一个50GB的虚拟机镜像,传了90%断了,只能重新传,太伤了。
真正能断点续传的方案
得用支持断点续传协议的工具。最常见的是基于HTTP的Range请求,还有rsync、SFTP这些协议本身就带校验和续传能力。
比如你用rsync同步本地大文件到远程服务器:
rsync -P -av /home/user/largefile.iso user@remote:/backup/
这里的 -P 参数就是关键,它让rsync显示进度,并在中断后自动从中断处恢复。下次再跑这行命令,它会比对文件大小和校验码,跳过已传部分。
配合端口映射,外网也能稳定传
很多人家里有硬盘,但想在外网把大文件传进去,这时候就得靠端口映射。比如你在路由器上把外网的2222端口映射到内网NAS的22端口(SSH),然后用rsync通过公网IP传文件:
rsync -P -av large_video.mp4 user@your-domain.com:~/nas/backup/ -e 'ssh -p 2222'
哪怕中途咖啡馆Wi-Fi闪断,回家继续跑这命令,照样接着传。前提是你的动态DNS能保持通,或者IP没变。
有人试过用浏览器传大文件到WebDAV,结果一断全废。不是协议不行,而是前端没做分块上传。真正靠谱的做法是用rclone这类工具:
rclone copy /Videos remote:backup --progress --retries 3
它默认会分块上传,失败只重试那一块,而不是整个文件。配合--bwlimit还能限速,晚上挂机传也不影响刷剧。
别忽略校验,传完了得确认完整
断点续传不仅要能接上,还得确保接得对。rsync传完会自动比对文件属性和大小,rclone还能算哈希。要是你自己写脚本传,记得加校验步骤,比如:
md5sum largefile.tar
两边对比一下,避免中间出错导致文件损坏,回头发现照片打不开就晚了。
实际用下来,家里的监控录像备份最吃这套。每月定时用rsync推一次,就算中途停电,第二天回来继续,不用盯着看。