linux怎么把本地文件拷贝到服务器,scp命令怎么用?

linux把本地文件拷贝到服务器上,最直接的方式是使用scp命令,它基于ssh加密传输,一条命令就能完成整个拷贝流程。 下面我会从命令用法、传输场景、常见坑三个层面展开,顺便聊聊rsync和sftp的区别,帮你彻底搞定linux和服务器之间的文件传输。

linux怎么把本地文件拷贝到服务器上?scp命令实操

scp是linux系统里自带的远程拷贝工具,只要服务器开了ssh服务,就能直接使用,它的语法和cp命令很像,区别在于目标地址要写成“用户名@服务器IP:路径”的格式。

2.12-scp通过命令上传下载文件、文件夹
加载中
2.12-scp通过命令上传下载文件、文件夹

scp拷贝单个文件

假设你要把当前目录下的backup.tar.gz传到服务器168.1.100的/root/backup目录下,用户名是root,命令是这样:

scp backup.tar.gz root@192.168.1.100:/root/backup/

回车后输入服务器密码,等待进度条走完,文件就过去了,注意目标路径最后带不带,如果带斜杠表示是目录,不带斜杠则会把文件重命名成那个名字。

scp拷贝整个目录

如果需要传送的是一个文件夹,比如/home/user/logs整个目录,得加-r参数:

scp -r /home/user/logs root@192.168.1.100:/data/logs/

-r表示递归复制,不加这个参数,scp会报错,告诉你目标不是普通文件。

指定端口拷贝

很多服务器为了安全,把ssh端口改成了非22,比如端口是2222,那么用-P参数指定:

scp -P 2222 file.tar.gz root@192.168.1.100:/root/

这里是大写P,和ssh命令的小写p不一样,别记混,如果你忘了指定端口,scp会默认走22,然后连接被拒绝。

限速与保留文件属性

传输大文件时,可以用-l参数限制带宽,单位是Kbit/s:

scp -l 1000 bigfile.iso root@192.168.1.100:/data/

这条命令把传输速度限制在1Mbps左右,避免占满带宽影响线上服务,加上-p参数可以保留文件的修改时间和权限属性,适合备份场景。

linux本地文件拷贝到服务器命令对比:scp、rsync、sftp怎么选

linux怎么把本地文件拷贝到服务器,scp命令怎么用?

很多人在linux下拷文件会纠结,到底用scp、rsync还是sftp,我直接说结论:传少量小文件用scp最简单,传大量文件或需要增量同步用rsync,想交互式查看服务器目录再上传用sftp。 这三者都基于ssh协议,安全性一样。

scp适合一次性传输

scp的优点是命令短、上手快,不需要额外配置,缺点是如果传输中断,下次得从头传,而且scp不支持增量同步,每次都是完整覆盖。

rsync适合大批量同步

rsync是linux下的同步神器,它支持断点续传、增量同步、压缩传输,比如把本地/home/user/www同步到服务器,可以先删掉目标端多余文件:

rsync -avz --delete /home/user/www/ root@192.168.1.100:/var/www/

参数-a是归档模式,保留权限、时间戳等;-v显示过程;-z传输时压缩。--delete会让目标目录里本地没有的文件被删掉,让两边完全一致。

如果中途断网,重新执行一遍相同命令,rsync只会传没传完的部分,这是scp做不到的。

sftp适合手动管理

sftp是交互式工具,登录后可以用put上传、get下载,还能用ls、cd查看服务器目录,适合你不太确定服务器路径,想先看看再传的场景,登录命令:

sftp root@192.168.1.100

登录后本地目录用lcd切换,服务器目录用cd切换,上传执行put localfile,下载执行get remotefile,如果你用惯了Windows下的WinSCP,sftp的操作思路是一样的。

linux怎么传文件到服务器?rsync增量同步实操

rsync除了在命令行里用,还能配合cron做定时同步,我平时最常用的一个场景是:本地开发机改完代码,用rsync把变动的文件推到测试服务器。

先做一次完整同步

第一次使用时,目录可能很大,直接执行:

rsync -avz --progress /home/user/project/ root@192.168.1.100:/home/project/

--progress会显示每个文件的进度,如果文件很多,可以加--exclude忽略不需要的目录,

linux怎么把本地文件拷贝到服务器,scp命令怎么用?

rsync -avz --exclude "node_modules" --exclude ".git" /home/user/project/ root@192.168.1.100:/home/project/

这样同步速度会快很多,也避免把本地依赖包传到服务器上。

增量同步只传差异部分

第二次执行相同命令,rsync会对比文件大小和修改时间,只传输有变化的文件,如果文件内容变了但大小和时间没变,需要加--checksum强制校验内容:

rsync -avzc /home/user/project/ root@192.168.1.100:/home/project/

-c会逐一计算文件校验值,更准确但更耗CPU,大多数场景下-avz已经够用。

断点续传

传一半断了,重新执行原命令即可,如果rsync版本较老,可以加--partial保留部分传输的文件,后续同步能接着传,新版rsync默认行为已经能处理,但加这个参数更保险。

拷贝文件时常见的3个坑

你以为拷贝命令记住了就完事?实际操作中,下面这几个坑我几乎每次都会遇到。

目录权限导致失败

服务器上的目标目录如果属于其他用户,而你用普通账号登录,scp会报Permission denied,解决方法是先切到root或使用sudo修改目录权限,或者直接传到自己有权限的目录,再在服务器上用mv移动。

路径里有空格或特殊字符

本地文件名包含空格,比如my file.tar.gz,必须用引号包裹:

scp "my file.tar.gz" root@192.168.1.100:/root/

如果不加引号,scp会把它当成两个文件去解析,立刻报错。

防火墙挡了22端口

有时候scp命令卡住不动,然后报Connection timed out,多数情况下是服务器防火墙拦了22端口,或者安全组没放行,先在本机测试telnet 192.168.1.100 22,如果不通,去服务器防火墙放行端口:

firewall-cmd --permanent --add-port=22/tcp
firewall-cmd --reload

如果是云服务器,还要在云控制台的安全组规则里允许TCP 22入方向。

行业共识认为,linux和服务器之间的文件传输,绝大多数工作都能用scp和rsync覆盖,没必要再装额外软件。

如何免密拷贝文件?

linux怎么把本地文件拷贝到服务器,scp命令怎么用?

每次输密码太烦,特别是脚本里自动同步时根本没法交互输密码,解决办法是配置ssh密钥对。

生成密钥并上传

在本地执行:

ssh-keygen -t rsa -b 4096

一路回车,生成公钥和私钥,然后把公钥内容追加到服务器的~/.ssh/authorized_keys文件里,一条命令搞定:

ssh-copy-id root@192.168.1.100

之后再用scp或rsync,就不再需要输入密码了。

密钥权限别忽略

配置好密钥后依然免密失败,先检查两个权限,本地私钥~/.ssh/id_rsa权限必须是600,服务器.ssh目录权限必须是700,authorized_keys权限是600,权限不对,ssh会直接跳过密钥认证,改为密码认证,但非交互模式下又没法输密码,就会失败。

linux文件拷贝到服务器的Q&A

linux怎么把本地文件拷贝到服务器上?scp命令提示找不到文件怎么解决?

先确认本地文件路径是否正确,执行ls -l看看文件是否存在,如果文件存在,再看路径中是否包含通配符或空格,Shell会把它们展开,还有一种情况,文件名以开头,scp会把它当成参数,这时在路径前加,比如scp ./-filename.tar.gz root@服务器:/root/。

rsync和scp哪个更快?

分场景,传单个大文件,两者速度和带宽上限接近,传大量小文件时,rsync因为能增量同步,通常比scp效率更高,特别是第二次传输时只传差异部分,速度优势明显,行业共识是,日常同步用rsync,简单拷贝用scp。

从服务器下载文件到本地,命令有什么不同?

方向反过来而已,scp下载用scp root@服务器:/远程路径/文件名 /本地路径/,rsync下载用rsync -avz root@服务器:/远程目录/ /本地目录/,关键是把源地址改成服务器,目标地址改成本地,参数基本不变。

linux把本地文件拷贝到服务器上,核心就是scp和rsync这两个命令,一个简单直接,一个适合增量同步。 按你的文件量和是否重复传输来选,小文件用scp,大目录或定时同步用rsync,基本能覆盖所有日常场景。

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

赞 (0)
戴尔t130服务器如何U盘启动,具体设置步骤有哪些?
上一篇 2026年10月19日 14:27
云场景服务器有哪些类型?怎么选性价比高?
下一篇 2026年10月19日 14:28

相关推荐

  • 苹果6s连接服务器出现问题怎么回事?,怎么解决?

    苹果6s屏幕弹出“连接到服务器时出现问题”的提示,核心原因是网络连接不稳定或设备日期时间设置错误,通常按照网络、时间、系统、服务器的顺序排查就能解决,苹果6s连接服务器失败怎么办?先从网络环境找原因网络连接是iPhone与服务器通信的基础,绝大多数连接失败都出在这一环,你需要按以下步骤逐一确认,检查Wi-Fi信……

    2026年7月28日
    7400
  • 手机QQ邮箱代收服务器怎么设置才正确?,有哪些常见问题?

    手机QQ邮箱代收服务器怎么设置,核心答案是:打开QQ邮箱App,进入设置-账号管理-添加邮箱,选择对应的邮箱服务商并填写该服务商的POP3或IMAP服务器地址、端口号和授权码即可完成代收配置,需要先说明一个行业共识:QQ邮箱代收功能本身完全免费,且支持导入目前市面上绝大多数主流邮箱,包括163邮箱、Gmail……

    2026年10月3日
    100
  • 如何制作ASPX数据库报表?ASPX数据库报表生成教程

    在当今数据驱动的商业环境中,将存储在数据库中的海量信息转化为清晰、可操作且具有专业水准的报表,是企业决策和运营的核心需求,ASP.NET,作为微软成熟稳健的Web应用开发框架,结合其强大的数据访问和呈现能力,是构建高效、安全、可定制化数据库报表系统的理想选择,ASP.NET 构建数据库报表的核心优势深度集成与性……

    2026年2月8日
    11800
  • 服务器2003如何备份?服务器2003系统备份方法和步骤

    服务器2003如何备份——核心结论:必须采用系统内置工具(如NTBackup)结合第三方方案,实施“本地+远程+版本化”三级备份策略,确保RTO<4小时、RPO<24小时,Windows Server 2003虽已终止支持,但仍在部分关键业务环境中运行,科学备份是保障数据连续性与业务韧性的最后防线,备份前关键准……

    程序编程 2026年4月17日
    6400
  • 简米云2核8g的服务器怎么样

    如果你的业务是中小型网站、微服务测试环境、轻量级应用或个人项目,阿里云2核8g服务器完全够用,且是目前性价比最高的入门配置之一;但如果你要跑大数据分析、高并发生产环境或重度AI推理,这个规格明显偏小,建议直接上4核16g起步,阿里云2核8g服务器到底适合哪些真实场景中小型网站和博客的首选配置很多个人站长和中小企……

    2026年8月21日
    700
  • 如何在2b2t服务器安全建家,生存技巧有哪些

    想在2b2t建一个不被炸掉的基地,核心诀窍是选址远离出生点、把基地伪装进地形、并坚持物资分散原则,而不是单纯堆砌防御壁垒,如果你刚进2b2t,可能已经感受到了:这里的玩家不是“正常”生存玩家,他们会用透视、飞行、自动攻击,看到人类痕迹就直接炸掉,就算你造个黑曜石方盒子,也可能被大爷们用床炸(bed-exploi……

    2026年10月6日
    100
  • 服务器不显示U盘启动不了怎么办,服务器怎么设置U盘启动?

    服务器不显示U盘启动,通常不是服务器报废,而是启动模式、U盘分区格式、BIOS/RAID设置或USB口识别问题,先换后置USB口,确认U盘为可引导格式,再进BIOS调整Boot Mode和Boot Order,多数能解决,先判断:服务器不显示U盘启动不了怎么办?问题卡在哪一层服务器和普通PC不一样,普通PC插上……

    2026年9月24日
    100
  • 如何实现ASP.NET导航控件?SiteMapPath详解与使用技巧

    在 ASP.NET 应用程序中,高效、清晰的导航结构对于用户体验和搜索引擎可见性至关重要,ASP.NET 提供了一套强大的内置导航控件,使开发者能够轻松创建和管理复杂的网站导航系统,同时兼顾 SEO 优化需求,核心导航控件解析SiteMapPath (面包屑导航)功能: 显示用户当前页面在整个网站结构中的位置路……

    2026年2月11日
    11500
  • 七日杀自己的服务器IP在哪看,七日杀服务器IP地址怎么查?

    在七日杀里,你的服务器IP到底藏在哪里查自己七日杀服务器IP,核心就一句话:局域网联机看电脑的IPv4地址,开公网服看路由器的公网IP,两者都可在系统设置或命令行里查到,很多玩家第一次搭建七日杀服务器,卡在最基础的一步:我到底该把哪个IP发给朋友?发错了,对方死活连不进来,今天我就用最直白的方式,把IP查询这件……

    2026年9月23日
    000
  • 服务器cpu个数怎么查,服务器cpu个数查看命令

    服务器CPU个数的配置决策,直接决定了业务系统的计算能力上限与IT基础设施的综合成本效益,核心结论在于:服务器CPU个数并非越多越好,而是必须与业务负载类型、并发规模、软件架构及授权成本实现精准匹配, 在实际选型中,单路服务器适用于入门级应用,双路服务器是主流企业级应用的“黄金标准”,而四路及八路以上服务器则是……

    2026年4月7日
    6100

发表回复

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