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

想把本地文件传到 Linux 服务器,最直接的办法是在本地终端执行 scp 本地文件 用户名@服务器IP:/目标目录,输入一次密码就传完。 文件大、网络不稳,或者需要经常同步,再考虑 rsync 和图形化工具,效率差别很明显。

scp命令上传本地文件到服务器:语法与参数一次讲清

scp 全称 secure copy,跑在 SSH 协议之上,只要服务器开了 SSH、你能正常登录,这个命令基本就能用,它不需要在服务器上额外装服务端软件,这也是它成为默认选择的原因。

2.12-scp通过命令上传下载文件、文件夹
加载中
2.12-scp通过命令上传下载文件、文件夹
A
Alex-1024
5003--
原视频地址

命令结构拆成三段看

一条标准的 scp 命令,从左到右就是三个部分:

  • 本地源路径:要传的文件或目录,可以写相对路径,也可以写绝对路径。
  • 远程目标地址:格式固定为 用户名@服务器IP:目标目录,中间的冒号不能漏,漏了就会被当成普通文件名。
  • 可选参数:放在 scp 和源路径之间,用来控制端口、递归、压缩等行为。

举个具体例子,本机有个 report.pdf 在下载目录,服务器 IP 是 168.1.100,登录用户是 root,想放到 /data/upload/ 下:

scp ~/Downloads/report.pdf root@192.168.1.100:/data/upload/

回车后提示输入密码,输完就开始传,进度条走完即结束,目标目录必须提前存在,scp 不会自动创建多级目录,这是新手最常遇到问题的地方。

五个常用参数,记住就够用

参数 作用 典型场景
-r 递归复制整个目录 传项目文件夹
-P 指定 SSH 端口(大写) 服务器改过 22 端口
-p 保留文件时间戳和权限 迁移备份文件
-C 传输时压缩 文本类小文件多
-v 输出调试信息 排查连接失败

要注意 -P 和 -p 是两个完全不同的参数,一个管端口,一个管属性,大小写搞反会直接报错。

三类高频操作场景

传单个文件。 就是上面那条命令,最常用,没什么好展开的。

传整个目录。 加 -r:

scp -r ./myproject root@192.168.1.100:/opt/www/

这条命令会把 myproject 目录连同里面的文件一起放过去,如果目标路径写成 /opt/www/myproject,效果是目录重命名;写成 /opt/www/,则是在该目录下生成同名文件夹,差别就在结尾有没有斜杠和目录名。

本地终端在服务器上,要反过来拉文件。 把源和目标位置对调即可:

scp root@192.168.1.100:/var/log/nginx/error.log ./

最后那个 表示存到当前目录,不写会报错。

端口不是22,命令要加-P

很多云服务器为了安全会把 SSH 端口改成 2222 之类,这时命令得带上 -P 2222,并且必须紧跟在 scp 后面:

scp -P 2222 ./app.jar root@192.168.1.100:/data/

顺序写错,比如放到源路径后面,scp 会把它当成要传的文件名,直接报找不到文件。

scp和rsync哪个快?大文件与断点续传的取舍

这是实际工作中被问得最多的一类问题,两者都能传文件,但定位不一样:scp 是”传完就走”,rsync 是”算完差异再传”。

核心差异对比

维度 scp rsync
传输协议 SSH SSH(也可配 rsync 守护进程)
断点续传 不支持 支持,--partial 参数
增量同步 不支持,每次全量 支持,只传变化部分
速度 小文件快,大文件易中断 首传略慢,重传优势明显
排除规则 无 支持 --exclude
适合场景 一次性传几个文件 定期备份、大目录同步

行业共识认为,几十 GB 以上的单文件或几十万个小文件的目录同步,rsync 的综合表现更稳。 原因很实在:网络一抖,scp 就得从头再来,而 rsync 能从断点继续。

什么时候该换rsync

出现下面几种情况,建议直接换:

  • 传的过程中断过一次,不想重传几个 G。
  • 同一个目录需要每周甚至每天同步一次。
  • 目录里有很多日志、缓存文件,只想传代码部分。

对应命令:

rsync -avz --partial --progress ./data/ root@192.168.1.100:/backup/data/

-a 保留属性,-v 显示过程,-z 传输压缩,--partial 保留断点,--progress 显示进度,想排除某些目录,追加 --exclude='node_modules' 即可。

业内专家指出,SSH 加密本身的处理开销是这类传输方式的速度上限之一,所以无论用哪个命令,单连接跑到几十 MB/s 之后想再提升,往往得从网络带宽和加密算法入手,而不是换命令。

Windows本地文件传到Linux服务器怎么做

不少人的本地环境是 Windows,没有原生终端习惯,这时候有三条路可走。

图形化工具:WinSCP 与 FileZilla

WinSCP 是 Windows 上最常用的选择,安装后填服务器 IP、端口、用户名、密码,连上就是左右两栏的界面,左边本地、右边远程,拖拽即可完成上传,FileZilla 逻辑类似,跨平台,Mac 用户也能用。

这类工具的优势是直观,适合偶尔传文件、需要肉眼确认目录结构的场景,缺点是批量操作和自动化能力弱,传大目录时稳定性不如命令行。

Windows 10/11 自带 scp

系统自带 OpenSSH 客户端,直接按 Win + R 输入 cmd 打开命令提示符,就能用和 Linux 完全一样的语法:

scp D:\work\data.zip root@192.168.1.100:/data/

Windows 路径带盘符和反斜杠,注意别写成 Linux 风格,如果提示 scp 不是内部命令,去”设置应用可选功能”里把 OpenSSH 客户端装上。

PowerShell 与 Xftp 的补充选择

PowerShell 里同样能执行 scp,还支持 Copy-Item 配合 SSH 模块做更复杂的操作,Xftp 则是很多运维人员配合 Xshell 使用的工具,支持多标签和队列传输,适合一次要往多台服务器分发文件的场景。

传文件总失败?按这个顺序排查

  1. 先测连通性:ping 服务器IP,通不通决定后面查什么。
  2. 再测 SSH:ssh 用户名@服务器IP,登不上去说明端口、防火墙或密钥有问题,scp 必然失败。
  3. 看目标目录:路径写错、目录不存在、没有写权限,都会报 Permission denied 或 No such file or directory。
  4. 检查端口大小写:-P 没写或写反,报 Connection refused。
  5. 确认磁盘空间:服务器分区满了,传输会在中途中断,用 df -h 看一眼。
  6. 中文文件名乱码:本地和服务器字符集不一致时会出问题,建议关键文件用英文命名。

排查顺序遵循由外到内:网络、认证、路径、权限,逐层排除,比盲目重试有效得多。

Linux把本地文件拷贝到服务器常见问题解答

scp每次都要输密码,能免密吗

可以,本地执行 ssh-keygen -t rsa 生成密钥对,再用 ssh-copy-id 用户名@服务器IP 把公钥推到服务器,之后 scp 和 ssh 都不再询问密码,这是运维环境的标准做法,省去重复输入,也方便写进脚本做定时传输。

传文件夹报错 not a regular file 是什么原因

这条报错的意思是 scp 把目录当成了普通文件处理,原因只有一个:忘了加 -r 参数,补上递归参数后命令即可正常执行,这是 scp 对目录和文件的处理逻辑不同导致的,并非权限问题。

传输速度只有几MB/s,是命令用错了吗

多数情况下不是命令的问题,scp 的速度受限于两端带宽、网络延迟和 SSH 加密开销,跨公网传输时受运营商线路影响尤其明显,可以先在同机房内网测一次,如果内网速度正常、公网慢,瓶颈就在链路上;如果内网也慢,再检查服务器磁盘 IO 和 CPU 负载,对于需要反复传输的大体量数据,改用 rsync 配合压缩参数,实际耗时通常比反复重传的 scp 更短,这也是运维实践中逐渐形成的默认选择。

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

赞 (0)
上一篇 2026年10月25日 10:16
下一篇 2026年10月25日 10:19

相关推荐

  • AI中台哪里便宜?性价比高的AI中台平台推荐

    构建高性价比AI中台的核心逻辑在于“按需选型”与“隐性成本控制”,单纯追求平台租赁价格的低廉往往会导致后期运维成本激增,真正的便宜是建立在业务场景精准匹配基础上的全生命周期成本(TCO)最优解,企业在寻求数智化转型的过程中,往往面临算力昂贵、人才稀缺、模型落地难的三重困境,许多决策者误以为选择报价最低的云服务商……

    2026年3月8日
    12300
  • Excel文档怎么压缩?excel文件太大怎么快速变小

    在 Excel 中,文件体积过大通常是因为包含了大量图片、隐藏对象、未使用的格式或复杂的公式,以下是几种有效且安全的 Excel 文档压缩/减小文件体积 的方法,按推荐顺序排列:压缩图片(最有效的方法)如果文档中包含大量截图或高清图片,这是减小体积最直接的方式,操作步骤:点击任意一张图片,顶部菜单栏会出现 “图……

    2026年7月12日
    7400
  • 用FTP客户端能登录SFTP服务器吗,SFTP和FTP的区别是什么?

    FTP客户端能登录SFTP服务器吗?取决于该客户端是否支持 SFTP 协议,虽然很多软件都被习惯性地称为“FTP客户端”,但实际上它们支持的协议范围不同,FTP 和 SFTP 是两种完全不同的协议,不能直接通用,核心区别:FTP vs SFTP要理解为什么不能随便登录,首先需要明白两者的本质区别:FTP (Fi……

    程序编程 2026年7月13日
    1700
  • AIoT时代彩电怎么选?AIoT智能电视推荐排行榜

    在AIoT浪潮席卷全球的当下,彩电行业正经历一场从“单一视听终端”向“家庭智慧中枢”的深刻变革,核心结论在于:未来的彩电不再仅仅是被动接收信号的显示屏,而是集成了人工智能与物联网能力的家庭控制中心与交互入口,只有具备主动服务能力与跨屏互联能力的智能电视,才能在AIoT时代立于不败之地, 重新定义:从“看”到“用……

    2026年3月22日
    12400
  • 华为服务器h22h03怎么装硬盘?,硬盘安装教程步骤

    华为服务器H22H03装硬盘的核心路径是:先确认盘位和背板类型,准备兼容托架,按断电或热插拔规范插入,再通过iBMC和RAID卡配置识别, 装盘本身不复杂,复杂的是型号细节和配置闭环,少一步就可能出现“盘插了但系统不认”,华为h22h03支持什么硬盘?盘位、背板与兼容清单先看机箱标签和背板型号H22H03常见于……

    2026年10月9日
    000
  • u8忘了服务器名字登录不上咋办,服务器名怎么找回?

    U8忘记服务器名字导致无法登录时,先别重装软件,多数情况下服务器名就藏在U8安装目录的Login.ini文件或系统管理的数据源配置里,本机单机版可直接用127.0.0.1登录验证,先判断你登录时“服务器名字”具体指什么U8登录界面里那个服务器框,可能指数据库服务器名、应用服务器名,有时还是加密服务器地址,不同部……

    2026年9月20日
    200
  • 服务器cpu和内存怎么看,如何查看服务器配置信息

    在服务器运维与性能优化的实践中,掌握硬件资源的实时状态是保障业务稳定性的基石,核心结论是:查看服务器CPU和内存最专业、最高效的方式,是熟练运用Linux系统自带的命令行工具进行实时监控与瓶颈定位,同时结合图形化监控工具进行历史趋势分析, 只有深入理解各项指标背后的含义,才能在故障发生前精准预警,在故障发生时快……

    2026年4月6日
    9000
  • ASP.NET文件压缩 | 如何实现高效文件压缩方法?

    在构建高性能、用户体验优异的ASP.NET应用时,高效的文件压缩技术是至关重要的核心优化手段,它能显著减少网络传输的数据量,加快页面加载速度,降低服务器带宽成本,并提升用户满意度,ASP.NET(尤其是ASP.NET Core)提供了强大且灵活的内置工具链,结合业界最佳实践,可实现全方位、深度的文件压缩优化……

    2026年2月12日
    12730
  • 用友U8服务器端口怎么查看,用友U8端口查看命令是什么?

    查看用友U8服务器端口,最快的办法是登录服务器后用管理员身份打开命令提示符,执行 netstat -ano 看监听列表,再拿PID去任务管理器里对号入座;如果只想确认数据库那一头,SQL Server配置管理器里的TCP/IP属性会直接把端口号写在你眼前, 绝大多数U8环境真正需要关心的端口就三个:应用服务80……

    程序编程 2026年10月25日
    000
  • 服务器怎么用pe做系统安装系统教程视频教程

    使用PE给服务器安装系统,核心操作是制作PE启动盘、从U盘引导进入PE、加载服务器RAID或NVMe驱动后运行安装程序,全程无需依赖光驱或原系统,适用于无系统、系统崩溃或需要更换系统盘等场景,很多运维同行在接手一台裸机服务器时,第一个想到的就是PE,相比iLO或DRAC挂载ISO,PE启动盘更灵活,尤其适合机房……

    2026年8月20日
    1400

发表回复

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