简介
本文档介绍如何从损坏的系统映像或错误设置的引导变量恢复Cisco传统Catalyst固定交换机。
先决条件
要求
如果您还没有这样做,请将 PC 连接到交换机的控制台端口。有关如何将终端连接到 Catalyst 固定配置交换机的信息,请参阅将终端连接到 Catalyst 交换机上的控制台端口。请使用终端仿真程序(如 Microsoft Windows HyperTerminal)以建立控制台会话。
相应设置如下:
-
每秒位数:9600
-
数据位:8
-
奇偶校验:无
-
停止位:1
-
流量控制:无
端口设置
使用的组件
本文档中介绍的 Catalyst 固定配置交换机包括 2940、2950/2955、2970、3550、3560、3750 以及 3750 Metro 系列交换机。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
规则
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
问题
当 Catalyst 固定配置交换机遇到引导错误时,可能出现了以下情况:
-
交换机正在连续重新引导。
-
交换机显示 switch: 提示。
-
出现加载闪:
电消息错误。
交换机显示 Switch:提示或“加载闪存时出错:”
-
switch:提示符表明交换机尚未完全引导,需要用户完成引导过程。
-
此消息 error loading flash:
,表示交换机由于映像损坏或丢失而无法加载映像。
损坏或丢失的映像可能是下载失败的结果。在这种情况下,映像具有错误的校验和或软件升级失败,并且未正确按照升级过程操作。有可能是用户删除了映像,但是没有进行替换。引导变量可能未正确设置。
打开控制台会话时,将会显示以下类似错误消息:
Error loading "flash:c2950-i6q4l2-mz.121-12c.EA1.bin"
通常,交换机会尝试自动引导闪存文件系统中的下一个有效映像。例如:
Error loading "flash:c2950-i6q4l2-mz.121-12c.EA1.bin"
Interrupt within 5 seconds to abort boot process.
Loading "flash:/c2950-i6q4l2-mz.121-13.EA1.bin"...######
########################################################
!--- Output suppressed.
如果没有用于引导的有效备份映像,引导过程将会完全失败。例如:
Error loading "flash:c2950-i6q4l2-mz.121-12c.EA1.bin"
Interrupt within 5 seconds to abort boot process.
Boot process failed...
解决方案
分步恢复过程
注意:必须将PC连接到交换机的控制台端口。
步骤1.如果交换机在不断重新启动,请完成此步骤中的步骤之一,具体取决于您的交换机型号。
注意:如果交换机不再连续重启中,但已经在交换机上时: 提示符下,请直接执行步骤 2。
- Catalyst 2940 和 2950 系列交换机
STAT LED和模式按钮
a.拔下电源线。
b.将电源线重新连接到交换机时按住 MODE 按钮。MODE 按钮位于前面板的左侧。
c.在STAT LED熄灭后松开MODE按钮。
注意:LED 位置可能会根据型号稍有变化。
d.您当前位于 switch: 提示。继续执行步骤 2。
- Catalyst 2970、3550、3560 和 3750 系列交换机
端口1x LED
a.拔下电源线。
b.将电源线重新连接到交换机时按住 MODE 按钮。MODE 按钮位于前面板的左侧。
c.在上一个LED端口1x退出后,松开MODE按钮。
注意:LED 位置可能会根据型号稍有变化。
d.您当前位于 switch: 提示。继续执行步骤 2。
a.从键盘发出中断序列以进入 switch: 模式。
使用什么中断序列由所使用的终端应用程序和操作系统决定。有关详细信息,请参阅口令恢复过程中的标准break key序列组合。
此示例使用HyperTerminal闯入交换机: 模式。
C2955 Boot Loader (C2955-HBOOT-M) Version 12.1(0.508)EA1, BETA TEST SOFTWARE
Compiled Wed 30-Oct-02 15:24 by antonino
WS-C2955T-12 starting...
Base ethernet MAC Address: 00:03:fd:62:7c:00
Xmodem file system is available.
Initializing Flash...
flashfs[0]: 19 files, 2 directories
flashfs[0]: 0 orphaned files, 0 orphaned directories
flashfs[0]: Total bytes: 7741440
flashfs[0]: Bytes used: 4628480
flashfs[0]: Bytes available: 3112960
flashfs[0]: flashfs fsck took 7 seconds.
...done initializing flash.
Boot Sector Filesystem (bs:) installed, fsid: 3
Parameter Block Filesystem (pb:) installed, fsid: 4
*** The system will autoboot in 15 seconds ***
Send break character to prevent autobooting.
!--- Wait until you see this message before
!--- you issue the break sequence.
!--- Enter Ctrl-Break with the use of HyperTerminal.
The system has been interrupted prior to initializing the
flash filesystem. The following commands will initialize
the flash filesystem, and finish loading the operating
system software:
flash_init
load_helper
boot
switch:
b.继续执行步骤 2。
步骤2.运行flash_init 命令和load_helper 命令。
如果闪存已初始化,将会显示以下消息:
switch: flash_init
Initializing Flash...
...The flash is already initialized.
switch:
如果闪存未初始化,将会显示以下消息:
switch: flash_init
Initializing Flash...
flashfs[0]: 21 files, 2 directories
flashfs[0]: 0 orphaned files, 0 orphaned directories
flashfs[0]: Total bytes: 7741440
flashfs[0]: Bytes used: 4499456
flashfs[0]: Bytes available: 3241984
flashfs[0]: flashfs fsck took 7 seconds.
...done initializing flash.
Boot Sector Filesystem (bs:) installed, fsid: 3
Parameter Block Filesystem (pb:) installed, fsid: 4
运行load_helper命令以加载任何引导帮助程序映像。例如:
switch: load_helper
switch:
步骤3.运行dir flash:命令,以便查看闪存文件系统的目录。
确定 flash: 中是否存在任何 Cisco IOS® 映像文件或映像目录。Cisco IOS 映像文件是 .bin 文件,而映像目录以映像文件名命名(不含 .bin 扩展名)。如果 Cisco IOS 映像文件或映像目录不存在,将会显示以下消息:
switch: dir flash:
Directory of flash:/
2 -rwx 5 <date> private-config.text
3 -rwx 110 <date> info
4 -rwx 976 <date> vlan.dat
6 -rwx 286 <date> env_vars
26 -rwx 1592 <date> config.text
8 drwx 1088 <date> html
19 -rwx 110 <date> info.ver
4393472 bytes available (3347968 bytes used)
switch:
!--- No Cisco IOS images or image directories exist in Flash.
如果Flash目录如下所示,请直接执行步骤5。步骤5使用Xmodem文件传输恢复交换机。
如果闪存中仍有映像,请运行boot命令(步骤4)以尝试恢复交换机。在运行boot命令之前,请验证Cisco IOS映像存储在Flash目录中的位置。映像的存储位置可能会根据交换机型号而有所不同。
Cisco IOS映像文件.bin
(文件)始终位于闪存中:目录中。例如:
switch: dir flash:
Directory of flash:/
3 -rwx 2888547 <date> c2950-i6q4l2-mz.121-13.EA1.bin
!--- The Cisco IOS image file (.bin file) is stored in
!--- the flash: directory on Catalyst 2940, 2950, and 2955 series switches.
4 -rwx 976 <date> vlan.dat
6 drwx 832 <date> html
22 -rwx 110 <date> info
23 -rwx 110 <date> info.ver
25 -rwx 38 <date> env_vars
3132928 bytes available (4608512 bytes used)
!--- This output is from a Catalyst 2950 switch. Output from a
!--- Catalyst 2940 or 2955 varies slightly.
在 Catalyst 2970、3550、3560 和 3750 上,闪存文件系统的组织稍有不同。您可以将 Cisco IOS 映像文件存储在 flash: 目录。但是,如果您使用集群管理套件(CMS)映像来通过Web界面管理交换机,则可以将Cisco IOS映像文件存储在其自己的目录中。运行flash:directory 命令,以显示此情况下的映像文件。
switch: dir flash:
Directory of flash:/
2 -rwx 976 <date> vlan.dat
3 -rwx 386 <date> system_env_vars
4 -rwx 5 <date> private-config.text
6 -rwx 1554 <date> config.text
24 drwx 192 <date> c3550-i5q3l2-mz.121-13.EA1
!--- You can store the Cisco IOS image file in its own directory.
!--- Name the directory with the image name, but exclude the .bin extension.
42 -rwx 33 <date> env_vars
!--- Output suppressed.
switch: dir flash:c3550-i5q3l2-mz.121-13.EA1
!--- Issue the dir flash:
!--- command in order to view the Cisco IOS image file.
Directory of flash:c3550-i5q3l2-mz.121-13.EA1/
25 drwx 832 <date> html
40 -rwx 3993612 <date> c3550-i5q3l2-mz.121-13.EA1.bin
!--- This is where the Cisco IOS image file is stored for a CMS image.
41 -rwx 252 <date> info
9992192 bytes available (6006784 bytes used)
!--- This output is from a Catalyst 3550 switch. Output from a
!--- Catalyst 2970, 3560, or 3750 varies slightly.
switch:
尝试引导映像
步骤4.在验证Cisco IOS映像文件所在的位置之后,尝试启动映像。运行boot flash:<filename>命令或boot flash:<directory/filename>命令。
-
Catalyst 2950
switch: boot flash:c2950-i6q4l2-mz.121-13.EA1.bin
!--- This example uses the boot flash:
!--- command on a 2950.
Loading "flash:c2950-i6q4l2-mz.121-13.EA1.bin"...###########
###########################################################
!--- Output suppressed.
!--- This command syntax is the same for Catalyst 2940 and 2955 series
!--- switches.
-
Catalyst 3550
switch: boot flash:c3550-i5q3l2-mz.121-13.EA1/c3550-i5q3l2-mz.121-13.EA1.bin
!--- This example uses the boot flash:
/
!--- command on a 3550.
Loading "flash:c3550-i5q3l2-mz.121-13.EA1/c3550-i5q3l2-mz.121-13.EA1.bin"...####
################################################################################
!--- Output suppressed.
!--- This command syntax is the same for Catalyst 2970, 3560, and 3750
!--- series switches.
如果运行boot命令且结果成功启动,则为默认交换机: 提示符或主机名:提示符随即显示。
Press RETURN to get started!
Switch>
!--- The boot up was successful.
务必确认已在交换机上配置了正确的引导语句。请参见“验证”部分。
如果运行boot命令且命令未成功启动,则交换机将执行以下操作: 提示符,或者您会再次陷入连续的重新引导状况。恢复交换机的唯一选择是使用 Xmodem 文件传输。步骤 5 介绍了此文件传输。
步骤5.如果boot命令失败,或者闪存中没有引导的有效镜像,请执行Xmodem文件传输。
典型的 Xmodem 文件传输可能需要最多 2 小时,具体取决于映像大小。
从Cisco技术支持与下载下载要升级的Cisco IOS映像(.bin文件)。
注意:本文提及的所有工具只能由思科注册客户端访问。
注意:请勿使用CMS映像(.tar文件)。 此映像更大,需要更长时间进行传输。
运行dir flash:命令,将映像的大小(以字节为单位)与 Flash 中剩余的可用空间比较。例如:
switch: dir flash:
Directory of flash:/
!--- Output suppressed.
3132928 bytes available (4608512 bytes used)
!--- There are approximately 3 MB of Flash space available for a new image.
如有必要,请运行delete命令以删除剩余的所有损坏映像。例如:
switch: delete flash:c2950-i6q4l2-mz.121-12c.EA1.bin
!--- Issue the delete flash:
!--- command in order to delete a Cisco IOS image.
Are you sure you want to delete "flash:c2950-i6q4l2-mz.121-12c.EA1.bin" (y/n)? y
!--- Enter y for yes if you want to delete the image.
File "flash:c2950-i6q4l2-mz.121-12c.EA1.bin" deleted
switch:
下一个示例将显示 2955 上使用 HyperTerminal 的 Xmodem 过程。此过程与本文档所述的任何 Catalyst 固定配置交换机的过程相同。
-
在交换机上运行 copy xmodem:flash:<filename>命令。例如:
switch: copy xmodem: flash:c2955-i6q4l2-mz.121-13.EA1.bin
Begin the Xmodem or Xmodem-1K transfer now...
CCC
- 从 HyperTerminal 窗口的顶部选择传输 > 发送文件。
传输发送文件
c.在Send File对话框中选择Xmodem协议,然后单击Browse以选择您之前下载的Cisco IOS映像(文件 .bin
)。
d.单击发送以开始 Xmodem 传输。
开始Xmodem传输
Xmodem 文件传输随即会开始。此传输可能需要最多 2 小时,具体取决于映像的大小。
CCCCCC.........................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
.............................................................................
File "xmodem:" successfully copied to "flash:c2955-i6q4l2-mz.121-13.EA1.bin"
!--- If the Xmodem file transfer fails for some reason, restart the process.
!--- If the Xmodem file transfer is successful, you return to the
!--- switch: prompt.
switch:
步骤6.使用Xmodem过程启动您刚刚复制的新映像。
运行boot flash:<filename命令>
,如以下示例所示:
switch: boot flash:c2955-i6q4l2-mz.121-13.EA1.bin
Loading "flash:c2955-i6q4l2-mz.121-13.EA1.bin"...###############################
################################################################################
!--- Output suppressed.
Press RETURN to get started!
Switch>
!--- The boot up was successful.
务必确认已正确设置引导语句。
加快Xmodem恢复
当用户尝试从损坏或丢失的Cisco IOS中恢复交换机时,copy xmodem:flash:[Cisco IOS filename]命令在交换机下不显示: 提示。copy命令显示在交换机下: 提示符,但copy xmodem:命令无效。
完成以下步骤以加速 Xmodem 恢复:
-
将波特率设置为 115200(使用 switch: 提示。
switch: set BAUD 115200
!--- The screen goes blank after you enter this command.
-
重新启动 HyperTerminal。
-
在COM PORT属性下,选择bits per second as 115200。交换机: 提示符随即会显示。
-
开始 Xmodem 恢复。
-
在Xmodem恢复后,将波特率重新设置为9600。如果set BAUD 9600命令未将波特率设置为9600,请运行unset BAUD命令以将波特率设置为默认值9600 bps。
确认
完成这些步骤:
-
运行show version命令以验证您运行的软件的当前版本。
例如:
2955#show version
Cisco Internetwork Operating System Software
Cisco IOS (tm) C2955 Software (C2955-I6Q4L2-M), Version 12.1(13)EA1, RELEASE SOFTWARE
!--- This is the current version of software.
-
运行dir flash:<directory>命令以显示Catalyst 2940、2950或2955上的Cisco IOS映像(.bin文件)。
2950#dir flash:
Directory of flash:/
3 -rwx 5 Mar 01 1993 00:12:55 private-config.text
4 -rwx 2905856 Jan 01 1970 03:06:25 c2955-i6q4l2-mz.121-13.EA1.bin
!--- The Cisco IOS image (.bin file) is stored in flash:
!--- on a Catalyst 2940, 2950 or 2955.
!--- Output suppressed.
如果在Catalyst 2970、3550、3560或3750上运行CMS映像,则可以在映像目录中存储Cisco IOS映像:
3550#dir flash:
Directory of flash:/
2 -rwx 976 Mar 01 1993 21:47:00 vlan.dat
4 -rwx 5 Mar 06 1993 23:32:04 private-config.text
6 -rwx 1554 Mar 06 1993 23:32:04 config.text
7 drwx 192 Mar 01 1993 00:14:02 c3550-i5q3l2-mz.121-13.EA1
!--- Notice the "d" for directory in the permission statement.
!--- This is an image directory that is installed when you upgrade the
!--- switch with a CMS image.
!--- The Cisco IOS image (.bin file) is inside this directory.
5 -rwx 3823261 Mar 01 1993 00:46:01 c3550-i5q3l2-mz.121-12c.EA1.bin
!--- This is another Cisco IOS image (.bin file).
8 -rwx 33 Mar 01 1993 00:14:06 env_vars
9 -rwx 384 Mar 01 1993 00:14:06 system_env_vars
15998976 bytes total (6168576 bytes free)
!--- This output is from a Catalyst 3550 switch. Output from a
!--- Catalyst 2970, 3560, or 3750 varies slightly.
3550#
您需要在Catalyst 3550上运行dir flash:<directory>命令以显示Cisco IOS映像(.bin文件)。
3550#dir flash:c3550-i5q3l2-mz.121-13.EA1
Directory of flash:/c3550-i5q3l2-mz.121-13.EA1/
23 drwx 832 Mar 01 1993 00:12:00 html
40 -rwx 3993612 Mar 01 1993 00:14:02 c3550-i5q3l2-mz.121-13.EA1.bin
41 -rwx 252 Mar 01 1993 00:14:02 info
15998976 bytes total (6168576 bytes free)
!--- This output is from a Catalyst 3550 switch. Output from a
!--- Catalyst 2970, 3560, or 3750 varies slightly.
3550#
-
运行show boot命令以验证是否正确设置了引导语句:
Switch#show boot
BOOT path-list:
!--- No boot system statement is set in this case.
!--- Output suppressed.
运行show boot命令以显示引导语句。如果未设置引导语句,或者如果引导语句指向软件的旧版本或丢失版本,请配置正确的引导语句。运行boot system flash:<filename>命令。
2955#configure terminal
2955(config)#boot system flash:c2955-i6q4l2-mz.121-13.EA1.bin
!--- This is how to set a boot system statement on a Catalyst 2940, 2950, or 2955.
2955(config)#end
2955#
2955#show boot
BOOT path-list: flash:c2955-i6q4l2-mz.121-13.EA1.bin
!--- Output suppressed.
如果在 Catalyst 2970、3550、3560 或 3750 上使用 CMS 映像,则可将 Cisco IOS 映像(.bin 文件)存储在其自己的映像目录中。运行以下命令: boot system flash:directory/filename
3550#configure terminal
3550(config)#boot system flash:c3550-i5q3l2-mz.121-13.
EA1/c3550-i5q3l2-mz.121-13.EA1.bin
!--- This command should be on one line.
!--- This is how to set a boot system statement on a Catalyst
!--- 3550 if the Cisco IOS image (.bin file) is in its own image directory.
3550#end
3550#
3550#show boot
BOOT path-list: flash:c3550-i5q3l2-mz.121-13.EA1/c3550-i5q3l2-mz.121-13.EA1.bin
!--- Output suppressed.
相关信息