运行 Cisco IOS® 软件的 Cisco Catalyst 6500/6000 可能因此重置原因而表现出重新加载的行为:
System returned to ROM by power-on (SP by abort)
配置寄存器设置不匹配可能导致此类重新加载。具体而言,您可能将 Supervisor 引擎交换处理器 (SP) 配置寄存器设置为“忽略中断”以外的任何值,而将多层交换机特性卡 (MSFC) 路由处理器 (RP) 配置寄存器设置为“忽略中断”的适当值。例如,您可能将 Supervisor 引擎 SP 设置为 0x2,而将 MSFC RP 设置为 0x2102。
本文档的读者应掌握以下这些主题的相关知识:
Catalyst OS (CatOS) 与 Cisco IOS 系统软件之间的区别
请参阅文档将 Catalyst 6500/6000 交换机的系统软件从 CatOS 转换到 Cisco IOS 的“CatOS 与 Cisco IOS 系统软件之间的区别”部分。
CatOS 和 Cisco IOS 软件配置寄存器
请参阅以下文档:
本文档仅限运行 Cisco IOS 软件的 Catalyst 6500/6000 交换机。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
以 Cisco IOS 软件模式运行的 Catalyst 6500/6000 可能有不同的 SP 和 RP 配置寄存器。当处于 Cisco IOS 软件模式时,SP 与 RP 的运行和启动配置同步进行。但是,配置寄存器不属于运行或启动配置的一部分。配置寄存器在配置时写入 NVRAM。
当控制台收到中断信号时,“禁用中断”以外的配置寄存器设置(如 0x2)将导致 Cisco IOS 设备进入 ROM Monitor (ROMMON) 诊断模式。当在终端仿真器软件中按适当的中断键序列,或者通过其他方法进行操作时,会产生中断信号。中断键序列的一个示例是超级终端中的 Ctrl-Break。在极详细的硬件 (PC) 配置下,将向控制台转发中断序列,而不用在终端仿真器中按任何键。硬件故障或互操作性问题通常会导致这种情况出现。原因包括专有串口引脚布局和无线电射频 (RF) 噪声。
处于 CatOS 模式时,Supervisor 引擎 SP 的配置寄存器通常为 0x2。此配置的原因是“禁用中断”不是 CatOS 的一个选项;当 CatOS 检测到中断信号时,CatOS 不进入配置寄存器为 0x2 的 ROMmon。
以下输出来自运行 CatOS 的 Catalyst 6500:
6500_CATOS (enable) show bootBOOT variable = bootflash:,1;CONFIG_FILE variable = slot0:switch.cfgConfiguration register is 0x2ignore-config: disabledauto-config: non-recurring, overwrite, sync disabledconsole baud: 9600boot: image specified by the boot system commands
Cisco IOS 路由器(包括 MSFC)的适合配置寄存器通常为 0x102 或 0x2102。0x2102 配置“禁用中断”。
MSFC# show bootvarBOOT variable = bootflash:c6msfc2-psv-mz.121-13.E14,1CONFIG_FILE variable = BOOTLDR variable = Configuration register is 0x2102
请考虑将 Catalyst 6500 系统转换为运行 Cisco IOS 软件,已针对该系统将 Supervisor 引擎 SP 配置寄存器设置为 0x2、将 MSFC RP 配置寄存器设置为 0x2102。转换时,配置寄存器保持不变,转换完成后,将重新配置配置寄存器。在此状态下,如果控制台收到中断信号,则系统在进入 ROMmon 时看上去已经崩溃。系统显示出本文档简介部分描述的症状。
这是 Cisco IOS 软件模式下 Catalyst 6500/6000 中配置寄存器不匹配的一个示例:
6500_IOS# show bootvarBOOT variable = slot0:c6sup12-ps-mz.121-13.E14,1CONFIG_FILE variable = BOOTLDR variable = Configuration register is 0x21026500_IOS# remote command switch show bootvar6500_IOS-sp#BOOT variable = slot0:c6sup12-ps-mz.121-13.E14,1CONFIG_FILE variable = BOOTLDR variable = Configuration register is 0x2
配备允许中断(例如 0x2)的 SP 配置寄存器并收到控制台中断信号时,Catalyst 6500/6000 将进入 ROMmon 诊断模式。系统似乎崩溃了。
本交换输出示例表明,交换机根据交换处理器控制台中断信号进入 ROMmon 诊断模式:
注意: RP 配置寄存器为 0x2102。
6500_IOS# show versionCisco Internetwork Operating System Software IOS (tm) c6sup2_rp Software (c6sup2_rp-PS-M), Version 12.1(13)E14, EARLY DEPLOYMENT RELEASE SOFTWARE (fc1)Technical Support: http://www.cisco.com/techsupportCopyright (c) 1986-2004 by Cisco Systems, Inc.Compiled Tue 30-Mar-04 01:56 by pwadeImage text-base: 0x40008C00, data-base: 0x417A6000ROM: System Bootstrap, Version 12.1(4r)E, RELEASE SOFTWARE (fc1)BOOTLDR: c6sup2_rp Software (c6sup2_rp-PS-M), Version 12.1(13)E14, EARLY DEPLOYMENT RELEASE SOFTWARE (fc1)6500_IOS uptime is 31 minutesTime since 6500_IOS switched to active is 31 minutesSystem returned to ROM by power-on (SP by abort at PC 0x601061A8)System image file is "slot0:c6sup12-ps-mz.121-13.E14"cisco Catalyst 6000 (R7000) processor with 227328K/34816K bytes of memory.Processor board ID SAD053701CFR7000 CPU at 300Mhz, Implementation 39, Rev 2.1, 256KB L2, 1024KB L3 CacheLast reset from power-onX.25 software, Version 3.0.0.Bridging software.1 Virtual Ethernet/IEEE 802.3 interface(s)192 FastEthernet/IEEE 802.3 interface(s)18 Gigabit Ethernet/IEEE 802.3 interface(s)381K bytes of non-volatile configuration memory.16384K bytes of Flash internal SIMM (Sector size 512K).Configuration register is 0x2102
解决方案是重新配置配置寄存器并重新加载系统。
完成这些步骤:
在全局配置模式下发出 config-register 0x2102 命令,然后将 RP 和 SP 的配置寄存器都设置为 0x2102。
6500_IOS# config tEnter configuration commands, one per line. End with CNTL/Z.6500_IOS(config)# config-register 0x21026500_IOS(config)# end
要在下次重新加载时验证配置寄存器值,请发出 show bootvar 命令。
6500_IOS# show bootvarBOOT variable = slot0:c6sup12-ps-mz.121-13.E14,1CONFIG_FILE variable = BOOTLDR variable = Configuration register is 0x2102
要验证 SP 上的配置寄存器也已更改,请发出 remote command switch show bootvar 命令。
6500_IOS# remote command switch show bootvar6500_IOS-sp#BOOT variable = slot0:c6sup12-ps-mz.121-13.E14,1CONFIG_FILE variable = BOOTLDR variable = Configuration register is 0x2 (will be 0x2102 at next reload)
重新加载交换机,以使新的 SP 配置寄存器设置生效。
6500_IOS# reload
注意: 此时,还可发出 copy running-config startup-config 命令保存配置。但是,由于配置寄存器设置不是启动或运行配置的一部分,因此并非必须执行此步骤。