简单总结
一句话概括:scp适合一次性传输文件,简单粗暴;rsync则是同步目录的利器,主打高效和智能。 前者是“复制粘贴”,后者是“增量备份”。

scp是什么
scp,全称Secure Copy Protocol,可以理解为SSH服务自带的一个“安全复制”功能。它的工作原理很直接:通过SSH加密通道,把文件从一台机器原封不动地搬到另一台。
优点
命令简单直观,几乎不需要额外学习。更重要的是,它没有额外的服务端要求,只要两台机器能通过SSH连通,就能立刻开始传输,开箱即用。
缺点
缺点也同样明显。首先,它是“全量”传输,哪怕你只改了一个字节,它也会把整个文件重新传一遍。其次,它不支持断点续传,网络一旦中断就得从头再来。对于大文件或者包含大量小文件的目录,这种机制效率就显得比较低了。
rsync是什么
如果说scp是搬运工,那rsync(remote sync)就是一位智能管家。它的核心能力在于“同步”,能够精确比对源端和目标端的文件差异,只传输发生变化的部分,这就是所谓的增量同步。
优点
增量传输是它的王牌,能极大节省带宽和时间。它支持断点续传,传输中断后可以从中断点继续。此外,它还能很好地保留文件权限、时间戳、软链接等属性,并支持压缩传输以提升速度。它的应用场景也更广泛,不仅限于远程传输,本地目录同步、镜像备份等都不在话下。
缺点
命令参数相对丰富,对初学者来说需要一定的学习成本,不如scp那样容易记住。
最实用的对比表
为了更直观,这里有一张核心对比表,帮你快速抓住关键区别。
选择推荐
那么,到底该用哪个?其实选择标准很清晰:
当你只是临时、一次性需要传一两个文件,尤其是小文件,追求简单快捷,直接用scp。
当你需要定期同步、备份整个目录,或者传输大文件、网络环境不稳定时,rsync的增量同步和断点续传优势就无可替代了,它能为你节省大量时间和资源。
话说回来,工具本身没有绝对的好坏,关键在于匹配场景。理解它们各自的设计哲学,才能在合适的时机,用最顺手的方式完成任务。
