简介:针对华为交换机配置文件备份与恢复的专项操作文档,面向网络管理员与IT运维人员,用于设备升级、迁移或硬件故障后快速还原网络配置。文档系统梳理了五种备份路径:直接屏幕拷贝、备份至flash、通过FTP/TFTP/FTPS/SFTP/SCP传输、命令行备份以及实时备份当前配置;恢复部分则说明上传配置、指定启动文件并重启生效的完整流程,并强调使用SFTP/SCP等安全协议。资源为单份docx文档,共1个文件,压缩包22KB,便于下载后在维护终端直接查阅。目前已有2577人学习,适合需要规范化管理设备配置、缩短业务中断时间的网络运维人员参考。
1. 网络设备管理里绕不开的日常:华为交换机配置备份与恢复
每次割接窗口排在凌晨,最怕的不是改配置,而是改到一半想回退,发现上一版配置不知道丢在哪台笔记本里。华为交换机配置文件备份与恢复,解决的就是这类问题:把设备当前生效的配置完整导出到外部存储,需要时原样拉回来,让设备回到某个时间点的状态。这件事看着简单,做起来却有不少版本差异和文件格式坑。这篇笔记适合正在维护华为交换机、却还没把备份流程固定下来的工程师,也适合刚接手网络管理、想少踩几次坑的新手。我会按备份机制、实操命令、恢复边界、常见故障排查这个顺序讲,最后补两个日常检查习惯。
2. 先把备份机制讲清:配置文件在交换机里怎么存在
2.1 三种配置文件形态与它们的血缘关系
华为交换机运行的是 VRP 系统,配置文件在设备上不是一份,而是分散在内存和 Flash 里。理解这份血缘关系,是后续所有备份恢复操作的前提。
第一份是当前运行配置,也就是交换机正在用的那份,对应命令display current-configuration。它直接来自设备运行内存,你敲的每一条命令,只要生效了,就会立刻出现在这份配置里。但问题是,内存里的东西断电就丢,重启就清零。第二份是保存配置,对应display saved-configuration,它存放在 Flash 的文件系统里,通常叫vrpcfg.cfg或startup.cfg,是设备启动时候要加载的那份文件。第三份是启动配置的引用关系,通过display startup查看,它告诉系统下次启动时去读哪个文件。
这三份的关系可以这样理解:运行配置是工作台,保存配置是仓库,启动配置是仓库的出库单。你改了一条命令,工作台上变了,但仓库里没变;只有执行save,工作台上的内容才会被写回仓库;而设备下次开机,是按出库单从仓库取货放到工作台。所以备份的本质,是把保存配置这份文件完整拷贝出来,而不是盯着display current-configuration的输出就看两眼。
很多人备份时踩的第一个坑就在这里:改完配置没执行save,直接导出备份文件,拿到的还是旧版本。备份命令导出的内容以保存配置为准,运行配置只有在执行save之后才会进入导出范围。我一般会在比较重要的变更结束后,先save,再执行备份命令,避免备份出来的文件比实际配置少一截。
2.2 显示配置和保存配置是两个东西
display current-configuration和display saved-configuration的输出差异,是新手最容易忽略的细节。前者展示的是设备此刻的完整运行状态,包括接口 UP/DOWN 状态、动态学习到的表项、默认参数补全后的内容,后者展示的是保存文件里的静态配置,只包含写入文件的内容,很多默认项不会写进去。
举个常见例子:你新建了一个 Vlanif 接口并配了 IP,display current-configuration能看到完整配置,但如果不save,display saved-configuration里什么都没有。备份文件拷出去之后,别的同事用这个文件恢复,发现 VLAN 全没了,第一反应是备份文件损坏,其实只是没 save。
反过来还有一种情况:display current-configuration里看不到的东西,可能在保存文件里存在。比如某个接口被 shutdown,如果你是在接口视图下执行undo shutdown,运行配置里没有这条命令,但保存配置里可能还留着之前shutdown的记录。恢复配置后设备行为看起来和运行状态不一致,原因往往在这里。
所以备份前我习惯先对两个显示结果做一次快速比对,确认差异在预期范围内。真正要导出的文件,是 Flash 里那份具体的.cfg文件,而不是屏幕上显示的文本。这个认知到位了,后面理解备份命令行为就不会跑偏。
2.3 时间戳、槽位号与版差:备份前先确认三件事
备份不是把文件拷出来就完事,动手前有三件事值得确认,尤其对中大型交换机。
第一是设备版本。VRP 的版本跨度很大,V200R005 之前的老设备,和现在常见的 V200R019、V200R021,配置语法有差异,备份命令也不完全一样。执行备份前先display version看一眼版本,心里有底,后续恢复文件时才能判断配置语法要不要调整。
第二是槽位号和端口编号。框式设备有业务板槽位,格式类似GigabitEthernet1/0/1,恢复配置到另一台设备时,如果槽位不同,端口配置会对应不上,轻则端口配置丢失,重则整段恢复失败。即使是盒式设备,不同型号的端口编号规律也可能不同,恢复前要确认端口表达方式一致。
第三是配置文件的时间戳和文件大小。备份文件是文本格式,可以用more flash:/vrpcfg.cfg直接在设备上看内容,也可以查看文件大小。Flash 里可能同时存在多份.cfg文件,比如手动拷贝进去的历史配置,备份时一定要确认当前启动配置指向哪一份,别把历史文件当成最新配置导出去。
这三件事确认完之后,备份命令本身反而很简单。常见做法是先display startup确认启动文件路径,再dir flash:/查看配置文件是否存在,然后才执行导出。省略这些确认步骤,备份成功率依然高,但出问题时排查成本不小。
3. 把备份落到命令:TFTP、SCP、USB 三条路径
3.1 TFTP:网络直连最小配置与一条备份命令
TFTP 是备份华为交换机配置最传统的路径,也是我遇到问题最少、最容易讲清楚的一条路。它不需要账号密码,协议简单,在隔离的管理网段里用非常合适。但正因为没有认证,只在可信网络里用,别把 TFTP 服务器暴露到业务网段。
先准备好一台 TFTP 服务器。常见的做法是在一台 Windows 管理机上装一个 TFTP Server 软件,设置好共享目录并绑定管理网段的 IP。接着在交换机上配置管理地址并确认能 ping 通服务器:
# 进入系统视图配置管理 VLAN 三层接口地址 system-view interface Vlanif 1 ip address 192.168.1.2 255.255.255.0 quit # 测试到 TFTP 服务器的连通性,必须能 ping 通才能继续 ping 192.168.1.100这段命令里Vlanif 1是管理 VLAN 的虚接口,IP 地址要和 TFTP 服务器在同一网段。实际网络里可能用 Vlanif 99 或专门的 Management 接口,以你设备的规划为准。ping 不通就排查物理链路、VLAN 划分和 Windows 防火墙,这一步跳过了,后面备份失败时都分不清是网络问题还是配置问题。
连通性确认后,在系统视图下执行备份命令。注意 VRP 版本不同,命令写法有差异:
# VRP5 时代较常见的写法(以 V200R005 及更早为主) backup configuration to tftp://192.168.1.100/backup_20240101.cfg # VRP8 及后续版本常见写法(V200R008 之后逐步普及) backup startup-configuration to tftp://192.168.1.100/backup_20240101.cfg两条命令都是把保存配置文件导出到 TFTP 服务器,差异在命令动词和对象名。如果设备提示命令不存在,大概率是版本语法不同,在系统视图下敲?查看具体支持的关键字即可。命令执行成功后,服务器目录里会出现backup_20240101.cfg这个文件。
这里有一个值得养成的习惯:备份文件名带上日期和用途,比如backup_s5700_20240101.cfg。不要用backup.cfg这种通用名,否则一个月后你根本分不清这份是哪台设备、哪次变更留下的。文件备份完成后,我还会在服务器上打开文件末尾,确认最后一段是完整的return结束符,避免文件传输出错导致半截配置。
3.2 SCP:加密通道与更多校验动作
TFTP 明文传输的短板在跨公网或不可信管理段时比较明显。如果备份要经过一段不完全可控的网络,我一般改用 SCP,它是基于 SSH 的文件传输,有加密和账号校验,安全性比 TFTP 高一个量级。
华为交换机作为 SCP 客户端,需要先开启 SSH 管理功能和 SCP 服务:
# 开启 SSH 功能并配置本地密钥对 system-view ssh user backup ssh user backup authentication-type password ssh user backup service-type sftp scp quit # 生成本地 RSA 密钥,用于 SCP 握手 rsa local-key-pair create执行rsa local-key-pair create时设备会提示输入密钥长度,默认 2048 就行,位数越高生成越慢,对备份场景 2048 已足够。ssh user配置里service-type要同时包含scp,如果漏了scp只写了sftp,SCP 登录会直接报错。
设备侧准备完成后,用下面的命令把配置文件推到 SCP 服务器上:
# 将启动配置文件通过 SCP 上传到服务器指定路径 backup startup-configuration to scp://backup:密码@192.168.1.100:/opt/backup/backup_20240101.cfg这个命令执行时设备会去连接192.168.1.100的 22 端口,用backup用户和密码认证,然后建立加密通道传输文件。常见的问题是服务器端 SSH 版本过旧、加密算法不匹配,设备报Algorithm negotiation failed,这种情况可以在服务器端调整 SSH 配置,兼容更广的算法列表。另一个高频问题是指定路径权限不足,SCP 用户对目标目录没有写权限,错误提示往往不够直观,先检查服务器目录权限再排查其他。
和 TFTP 相比,SCP 多了一层账号管理和加密开销,命令也更复杂,但在需要跨网段备份时价值明显。如果只在同一个可信机房里操作,TFTP 完全够用,不必为了追求安全把备份流程复杂化。
3.3 USB:断网环境下的离线备份
机房断网、管理 VLAN 被误删、设备只能 console 登录的场景,USB 是最后的备份通道。华为多数中高端交换机前面板或主控板上预留了 USB 接口,插入 U 盘后系统会自动识别。
U 盘插入后先确认设备识别状态:
# 查看 USB 存储设备是否被识别 display usb输出里能看到类似Usb0的设备编号,如果显示No device,先确认 U 盘文件系统格式。华为交换机对 U 盘格式有要求,FAT32 兼容性最好,NTFS 和 exFAT 在很多型号上识别不了。另外 U 盘容量不用大,配置文件只有几十到几百 KB,1GB 的老 U 盘足够用。
识别正常后,把 U 盘挂载到文件系统,然后执行备份:
# 挂载 U 盘到 usb0 目录 mount usb0 # 将启动配置文件复制到 U 盘指定目录 copy flash:/startup.cfg usb0:/backup_20240101.cfg这里flash:/startup.cfg是设备上的配置文件名,具体叫什么以dir flash:/显示为准,可能是vrpcfg.cfg或startup.cfg,不同型号不完全一样。copy命令会提示确认目标文件名,回车确认即可。备份完成后先umount usb0再拔 U 盘,直接拔有可能损坏文件系统。
USB 备份的优点是彻底离线,不依赖任何网络服务和服务器端配置;缺点是 U 盘格式和识别兼容性偶尔有玄学问题。我的经验是固定用一个 FAT32 格式的 U 盘专门做设备备份,不混用、不存其他文件,出问题的概率会明显降低。
4. 恢复配置的几种做法与边界
4.1 命令行恢复:改一处、回滚一处的思路
恢复配置不一定需要整包覆盖。如果只是某几段配置需要回滚到旧状态,直接进设备逐条敲回去,比整体恢复要快得多,也安全得多。这种方式的本质是从备份文件里把需要的部分手工摘出来,再对照当前配置逐步调整。
常见做法是把备份文件用文本编辑器打开,找到对应的配置段,比如某个接口下的 IP 地址、某个路由协议的路由引入配置,然后用undo和重新配置的方式逐个还原。这个过程中有一个值得注意的原则:能用undo回退的就不要重新配置整段,因为有些命令是叠加状态,重新执行可能产生重复配置或与现有配置冲突。
命令行恢复适合改动范围明确、影响面小的场景,比如误删了一个 ACL 规则、改错了 OSPF 的 network 宣告范围。它能精确控制恢复粒度,但要求操作者对原配置足够熟悉,能从备份文件里准确定位到需要恢复的部分。恢复完成后,同样执行save把结果写入保存配置,否则下一次重启又变回之前的错误状态。
4.2 开局级恢复:startup saved-configuration 与重载边界
整机配置错乱、设备被误清空或者要快速把新设备配置成和旧设备一致时,走整体恢复路线。流程分三步:先把配置文件传到设备、再指定为启动文件、最后重启生效。
以 TFTP 下载为例,在用户视图下执行:
# 从 TFTP 服务器下载配置文件到设备 Flash tftp 192.168.1.100 get backup_20240101.cfg # 将下载的文件指定为下次启动加载的配置文件 startup saved-configuration flash:/backup_20240101.cfg # 查看启动配置指向是否正确 display startup # 重启设备使配置生效 rebootstartup saved-configuration这条命令是关键,它只改引用关系,不实际修改文件内容。display startup会输出当前启动系统软件路径和启动配置文件路径,确认配置文件路径指向你刚下载的文件,再重启。如果这台设备重启后需要用其他配置恢复,千万别直接执行reboot,先把启动配置指回正确文件。
重启过程中设备会加载指定配置文件,加载失败会自动进入空配置状态。所以恢复执行前有一个检查动作值得做:在设备上more flash:/backup_20240101.cfg打开文件,确认文件不是 0 字节、不是乱码、末尾有完整的结束标记。这个动作不复杂,但能拦截大部分恢复失败场景。
整体恢复的另一层边界是,设备重启后运行配置是完全替换的。之前在设备上手动调过的路由优先级、接口描述、临时 ACL,只要不在备份文件里,统统消失。所以整体恢复前,先备份当前状态永远是合理的,恢复错了还有后悔药吃。
4.3 密码丢失场景:跳过启动配置的恢复次序
设备 console 密码或 enable 密码丢失,管理面和业务面都进不去,这是恢复配置最紧迫的场景。思路是让设备在启动时先不加载保存配置,进入空配置状态,然后重新设置密码并保存。
华为各系列设备的启动菜单入口不完全一样,常见做法是重启设备,在启动阶段按Ctrl+B进入 BootROM 主菜单。菜单里有类似Skip startup configuration的选项,选它可以让设备跳过加载保存配置直接进系统。进系统后设备是出厂默认状态,此刻用display startup可以看到原来的启动配置文件还在 Flash 里,只是没有加载。
这个场景的操作顺序很重要:先进系统配个新密码,执行save。注意这一步save会把当前空配置覆盖写入原来的保存文件,相当于丢失了所有历史配置。如果还想保留原配置,先把原来的启动配置用copy复制成另一份文件,再手动检查维护,而不是直接saveoverwrite。密码重置后,再决定是从备份文件恢复,还是保留现有配置继续使用。
密码丢失的处理路径不算高频,但一旦遇到就是全局故障。平时备份文件齐全的情况下,这种场景最稳妥的恢复方式是跳过启动配置进入系统后,再按 4.2 的方式整体恢复,把配置和时间点都恢复到可控状态。
5. 备份恢复避坑指南:五个翻车现场
5.1 现象:备份出来的文件恢复时加载报错
某次我用一份 TFTP 备份文件去恢复同型号的另一台设备,startup saved-configuration指定后重启,设备反复提示配置解析失败,直接进入空配置状态。手头又没有更新的备份,只能手工重配,整个人都麻了。
原因在于那份备份文件不是在设备上执行save后导出的,而是从display current-configuration的屏幕输出里复制出来保存的文本。屏幕输出里带了时间戳、分页符和部分不回显的默认参数,直接当配置文件加载,解析器识别不了。
解决方法是重新在设备上执行备份命令,用导出的原始.cfg文件恢复。如果手头只有文本输出,需要手动清理时间戳和分页符,再把文件上传到设备,用more flash:/xxx.cfg检查格式,确认开头和结尾干净再指定启动。养成习惯:备份永远用导出的文件,不要手工保存屏幕输出。
5.2 现象:display current-configuration 查得到配置,备份文件里却是空的
有一次我备份完打开文件,发现里面只有几百字节,明显缺少大量接口和路由配置。设备上display current-configuration明明什么都有,文件里却什么都没有。
原因是这台设备的变更操作没有执行过save。运行配置在内存里,所有命令都生效在用,但后来管理口断过一次,设备没有重启所以配置还在。备份命令导出的是保存配置,内存里尚未保存的那部分天然不会被导出。
解决方法是执行备份前先save,让内存配置落盘。如果设备有多个配置文件,save会让文件覆盖更新,再执行备份命令,文件内容就会齐全。现在我把save前置作为备份流程的第一条,已经把这个坑变成了条件反射。
5.3 现象:SCP 备份时反复报权限失败
使用 SCP 备份高校网关设备时,命令执行后报Permission denied,换了几个账号都不行,但同一账号用 SSH 登录设备是正常的。开始怀疑是配置写错,折腾了半天。
原因出在 SCP 服务端的目录权限和设备的认证类型配置不匹配。交换机的 SSH 服务默认可能使用password认证,但服务器端 SCP 服务配置了密钥优先,设备端只提供密码,握手阶段就失败。还有可能是指定备份路径在服务器上不存在或当前用户无写权限。
后来的解决方法是先在服务器上建好目标目录,并给备份账号授予该目录的写权限,设备端确认authentication-type password配置正确,然后在设备上直接测试到服务器的 SSH 端口连通性,确认网络层可达。SCP 备份涉及两端配置,排查时不要只盯设备,服务器端的权限和目录也按顺序查一遍。
5.4 现象:重启后配置回到出厂状态
某次现场恢复,重启前配置一切正常,重启后设备变成空白状态,所有端口配置全部丢失。当时以为是恢复没有生效,又重新执行了一遍启动配置指定,再次重启还是空配置。
原因是重启前没有确认startup saved-configuration是否已经设置。设备重启时直接找不到有效的启动配置文件,系统默认加载空配置。这种情况常见于配置文件被移动到了别的目录,或者文件名和启动配置指定的路径不一致。
解决方法是每次重启前,执行display startup确认当前启动配置文件路径正确。如果路径不对,重新执行startup saved-configuration flash:/正确文件名.cfg再重启。这个检查动作只花十秒钟,但能避免重启后面对一台空配置设备。
5.5 现象:不同型号之间传递配置引发资源报警
用一台盒式交换机的备份去恢复另一台接口规格不同的设备,配置加载后大量接口配置丢失,设备 CPU 升高,部分端口不工作。
原因是备份配置里的接口编号格式与目标设备不匹配。比如备份文件里是GigabitEthernet0/0/1,目标设备实际是XGigabitEthernet0/0/1或接口板槽位不同,系统加载配置时找不到对应接口就跳过,只剩下一部分有效配置。
解决方法是跨型号恢复前,先用文本方式比对两份配置的接口命名规律,必要时通过脚本或者文本替换调整接口前缀。不同系列之间恢复配置,永远先做配置翻译,不要直接拿文件硬加载。即使同型号,也要确认软件版本接近,VRP 版本差异太大同样可能出现语法不识别的问题。
6. 老手习惯:两个验证动作与脚本化备份
6.1 恢复前先做差异比对
恢复配置前最后一道防线是配置比对。华为较新的 VRP 版本支持compare configuration命令,可以直接对比当前运行配置和保存配置的差异;老版本没有这条命令的话,在电脑上用文本对比工具也能完成。
操作思路是:执行备份后,把备份文件用文本对比工具和当前运行配置做差异分析。如果差异只是新增的几条业务配置,说明备份基本可靠;如果差异覆盖面很大,优先确认是不是保存前的变更没落盘。这样可以在故障发生前就发现文件内容异常,而不是等到恢复时踩坑。
恢复完成后还有一组验证命令值得记下来。display device看板卡状态是否正常,display interface brief看关键端口是否 UP,display ip routing-table看路由表是否完整,display current-configuration | include xxx抽查关键配置是否被正确加载。这四条跑完,恢复有效性的判断基本就确定了。
6.2 用调度脚本把备份变成晨检任务
手动备份容易忘,把备份流程脚本化的价值在这里体现。网络设备数量少可以每周手动做一次,数量多了就得靠脚本或网管平台的备份功能批量执行。
一个比较朴素的方案是让服务器定期通过 SCP 登录设备执行备份命令,再把文件按设备名和日期归档。核心命令就几条,设备侧的密钥可以用空口令加密钥对免密交互,脚本负责循环遍历设备清单。配置备份本身不占带宽,文件小,执行频率可以设为每天一次。这样哪怕当天有人改了配置忘了保存,备份文件里的内容也是前一天的,损失被控制在一个变更周期内。
我自己的习惯是把备份和重要变更绑定:变更前一次,变更后确认无问题再补一次。备份文件按设备型号、地址、日期三层目录归档,保留最近三十天的版本。这个习惯帮我在无数次凌晨的割接窗口里,用一条命令把配置退回到十分钟前。至于要不要上更复杂的自动化系统,看设备规模,几台设备手动加脚本足够,几十台上百台再考虑统一纳管。希望帮到你。
本文还有配套的精品资源,点击获取