华为交换机 VRP 版本升级与补丁加载实战 - 夜莺博客

华为交换机 VRP 版本升级与补丁加载实战

交换机升级出问题的原因,绝大多数不是命令写错,而是"文件传上去了但没指定为下次启动文件"、"补丁加载了但没有激活"这类流程细节。华为 VRP 的升级其实是一条很短的流水线:确认当前版本 → 传文件 → 指定 startup → 重启 → 加载并激活补丁 → 验证。本文把这条流水线拆成可照抄的步骤,并给出每一步用哪条命令确认结果。

第一步:升级前必须记录的信息

<HUAWEI> display version
<HUAWEI> display elabel
<HUAWEI> display startup
<HUAWEI> display device
<HUAWEI> dir flash:/

四件事必须记录:设备型号与序列号(申请补丁和报修要用)、当前 VRP 版本(判断升级路径,跨大版本往往要先升级到中间版本)、flash 剩余空间(.cc 系统文件通常几十到上百兆,空间不足会导致复制失败)、以及是否有堆叠(iStack/CSS,堆叠环境升级流程不同,本文只讲单机)。

配置备份同样不能省:display current-configuration 输出保存到本地文本,或用 save 配合 TFTP/SFTP 把 vrpcfg.zip 备份走。升级出问题时,有备份和没备份是两种结局。

第二步:把 .cc 与 .pat 文件传到设备

华为支持设备作为 FTP/SFTP/TFTP 客户端主动去取文件,也支持设备作为服务端被上传。生产环境建议用 SFTP,FTP 是明文传输:

<HUAWEI> system-view
[HUAWEI] sftp client-transfile get host 10.10.10.50 username netadmin password
Please input the file name: S5700-10P-LI-V200R011C10SPC600.cc
[HUAWEI] quit

# 或不进入系统视图直接使用
<HUAWEI> tftp 10.10.10.50 get S5700LI-V200R012SPH002.pat

<HUAWEI> dir flash:/

传完必须 dir 确认文件大小与源文件一致。文件不完整是"重启后起不来"最常见的原因,而 VRP 对不完整的系统文件不会给出友好的错误提示。

第三步:指定下次启动文件(关键步骤)

<HUAWEI> startup system-software flash:/S5700-10P-LI-V200R011C10SPC600.cc
<HUAWEI> startup patch flash:/S5700LI-V200R012SPH002.pat
<HUAWEI> display startup

display startup 会分别显示"本次启动使用的文件"和"下次启动使用的文件"。这里必须逐项核对:

MainBoard:
  Startup system software:            flash:/S5700-10P-LI-V200R010C00SPC500.cc
  Next startup system software:       flash:/S5700-10P-LI-V200R011C10SPC600.cc
  Startup saved-configuration file:   flash:/vrpcfg.zip
  Next startup saved-configuration file: flash:/vrpcfg.zip
  Startup paf file:                   default
  Next startup paf file:              default
  Startup patch package:              flash:/S5700LI-V200R011SPH001.pat
  Next startup patch package:         flash:/S5700LI-V200R012SPH002.pat

如果 "Next startup" 一行还是旧文件名,说明 startup 命令没有生效(文件名拼写、路径、或该版本不允许加载此补丁),此时重启等于白重启。

第四步:保存配置并重启

<HUAWEI> save
Are you sure to continue? [Y/N]: y
<HUAWEI> reboot
System will reboot! Continue? [Y/N]: y

重启过程中不要断电、不要插拔 Console。设备起来后用 display version 确认版本号,用 display device 确认单板状态正常。

第五步:补丁的加载、激活与运行

补丁(.pat)是"运行中生效"的机制,和系统软件是两套流程。如果你采用的是"先启动新版本再加载补丁",顺序如下:

<HUAWEI> patch load flash:/S5700SI-V200R005SPH023.pat all
<HUAWEI> patch active all
<HUAWEI> patch run all

<HUAWEI> display patch-information
Patch Package Name    : flash:/s5700si-v200r005sph023.pat
Patch Package Version : V200R005SPH023
The state of the patch state file is: Running
The current state is: Running

三个动作对应三个状态,缺一个都不算升级完成:patch load 把补丁读入内存(状态 Loaded),patch active 让补丁开始生效(状态 Active),patch run 把补丁的状态固化为下次启动也生效(状态 Running)。只 load 不 run,重启后补丁就没了。

如果要在启动时就加载补丁,改用 startup patch 指定补丁文件,重启后补丁直接进入 Running 状态。两种方式的区别只在于是否需要重启生效。

Web 网管文件(.web.7z)是另一件事,很多"升级后登录不上 Web"的问题就出在这里:

<HUAWEI> system-view
[HUAWEI] http server load S5700SI-V200R005C00SPC500.009.web.7z
[HUAWEI] display http server
[HUAWEI] quit

常见故障与处理

<HUAWEI> display version
<HUAWEI> display patch-information
<HUAWEI> display startup
<HUAWEI> dir flash:/
<HUAWEI> display logbuffer | include ERROR
<HUAWEI> display memory-usage
现象 常见原因 处理
reboot 后版本没变 Next startup 未指定成功 重新执行 startup system-software,核对 display startup
补丁重启后消失 只 load 未 run patch load → active → run,或改用 startup patch
设备起不来 系统文件不完整/空间不足 Console 进入 BootROM 选择备份文件启动
升级后 Web 打不开 Web 文件与版本不匹配 http server load 加载对应版本的 .web.7z
内存占用偏高 旧版本内存回收问题 display memory-usage 对比,必要时重启

升级检查清单

  1. 型号、序列号、当前版本、flash 空间已记录。
  2. 配置文件已备份到设备外。
  3. .cc 与 .pat 文件大小与源文件一致。
  4. display startup 中 Next startup 三项(系统软件、配置、补丁)全部正确。
  5. 重启后 display version、display device、display patch-information 三项均正常。
  6. 业务验证:接口状态、路由/VRRP、堆叠成员、SNMP 采集全部恢复。

相关阅读:华为交换机启动文件管理、华为 VRP 常用排障命令、华为交换机恢复出厂设置三种方法对比。

原文链接:https://www.xxshell.com/807.html