简介
本文档介绍如何在思科高端路由器上升级 Cisco IOS® 软件映像。
先决条件
要求
Cisco 建议您了解以下主题:
- 如何安装 TFTP 服务器.
- 如何安装 Cisco IOS 软件映像.
有关这些主题的详细信息,请参阅背景信息部分。
使用的组件
本文档中的信息基于 Cisco IOS 软件版本 12.1 或更高版本。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
规则
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
背景信息
本文档介绍在思科高端路由器上升级 Cisco IOS 软件映像的程序。本文提供的示例基于7500路由器,但程序可应用到其他路由器。Cisco IOS 软件文件名可能因使用的产品类型而异。
注意:要使用本文档中所述的故障排除工具,您必须是注册用户并且必须登录。
本文论及以下思科系列路由器:
-
配备 RP 和 RSP7000 的思科 7000 系列路由器
-
Cisco 7100 系列路由器
-
Cisco 7200 系列路由器
-
Cisco 7300 系列路由器
-
Cisco 7400 系列路由器
-
Cisco 7500 系列路由器
-
Cisco 7600 系列路由器
-
Cisco 10000 系列 Internet 路由器 (ESR)
-
Cisco 12000 系列互联网路由器
-
Cisco uBR71xx、uBR 72xx、uBR10000 系列路由器
步骤 1:安装 TFTP 服务器
简单文件传输协议(TFTP)服务器、远程拷贝协议(RCP)服务器或者文件传输协议服务器(FTP)应用程序必须安装在TCP/IP就绪的工作站或PC上。一旦安装了应用程序,则必须执行最低配置。请使用以下步骤:
-
配置 TFTP 应用程序使其作为 TFTP 服务器运行,而不是作为 TFTP 客户端。
-
指定出站文件目录。这是将在其中存储 Cisco IOS 软件映像的目录。大多数TFTP应用程序提供安装例程序辅助这些配置任务。
注意:许多 TFTP 或 RCP 应用可以从独立软件供应商处获得,也可以从万维网上的公共资源获取共享软件形式的此类应用。
注意:大多数 TFTP 应用无法传输大小超过 16MB 的文件。如果您安装的 Cisco IOS 软件大于 16MB,则必须使用 FTP 或 RCP 服务器。
步骤 2:选择 Cisco IOS 软件映像
验证您下载的Cisco IOS软件镜像是否支持您的硬件以及所需的软件功能。您可以通过思科软件顾问(仅限注册用户)查明这些信息。在下载您选择的软件版本之前,请确保您的路由器有足够的动态 RAM (DRAM) 和闪存用于存储 Cisco IOS 软件映像。您可以在每个特定思科 IOS 软件版本的版本说明以及 思科技术支持和下载中找到建议的 DRAM 和闪存最低要求。有关如何选择正确的软件版本和功能集的其他信息,请参阅比较功能以选择最佳软件版本。
步骤 3:下载 Cisco IOS 软件映像
从 思科技术支持和下载将 Cisco IOS 软件映像下载到您的工作站或 PC 中。
软件安装和升级过程
分步过程
步骤 1:建立与路由器的控制台会话
这可以通过直接控制台连接或虚拟Telnet连接执行。直接的控制台连接比Telnet连接更优先,因为多数故障恢复程序要求您提供实际在现场,但Telnet连接却容易在软件安装的重新启动阶段中断。控制台连接使用箭头电缆(通常是黑色平电缆)建立,并将路由器的控制台端口连接到PC的COM端口。在 PC 上打开超级终端,并使用以下设置:
Speed 9600 bits per second
8 databits
0 parity bits
1 stop bit
No Flow Control
注意:如果超级终端中出现任何乱码,则表示您未正确设置超级终端属性,或者路由器的配置寄存器设置为了非标准值,导致控制台连接速度高于 9600 bps。使用 show version 命令检查配置寄存器的值(显示在输出的最后一行),并确保其设置为了 0x2102 或 0x102。必须重新加载路由器使配置寄存器生效。确定控制台速度在路由器端设置为 9600 bps 后,必须如前所述检查超级终端属性。
有关如何设置超级终端属性的详细信息,请参阅为控制台连接应用正确的终端仿真程序设置。
启动问题
连接到路由器的控制台端口后,您可以看到路由器处于 ROMmon 模式或引导模式。如果路由器不能正确装载Cisco IOS软件镜像,请进入用于恢复过程和诊断过程的模式之一。如果您没有看到通常的路由器提示符,则必须按照以下建议继续执行升级程序。
路由器在 ROMmon 模式或引导模式下启动,并且控制台上显示类似于以下消息的内容:
device does not contain a valid magic number
boot: cannot open "slot0:"
boot: cannot determine first file name on device "slot0:"
如果您使用 ATA PCMCIA 闪存盘,出现的同样问题可能如下所示:
device does not contain a valid magic number
boot: cannot open "disk0:"
boot: cannot determine first file name on device "disk0:"
如果您看到上述任一错误消息,这意味着闪存卡为空、未格式化、未针对平台进行格式化、文件系统已损坏或闪存卡上的第一个映像不是可引导的 Cisco IOS 软件映像。
如果路由器处于 ROMmon 模式,则路由器提示符可能如下所示:
rommon1>
如果路由器处于引导模式,则路由器提示符可能如下所示:
Router(boot)>
有关 ROMmon 恢复的详细信息,请参阅思科 7200、7300、7400、7500、RSP7000、Catalyst 5500 RSM、uBR7100、uBR7200、uBR10000 和 12000 系列路由器的 ROMmon 恢复程序。
如果路由器处于启动模式,您可以按照列出的Cisco IOS软件升级说明继续操作。切记不要将您的配置保存为启动模式,因为引导镜像不包含全部路由功能。
步骤 2:确认 TFTP 服务器具有与路由器的 IP 连接
检查并确保TFTP软件升级的TFTP服务器和路由器IP地址,确保这些地址处于同一网段。对路由器执行 Ping 操作以验证二者之间是否存在网络连接。要验证,请检查TFTP服务器的IP地址。如果路由器处于引导模式,则需要设置默认网关:
Router(boot)>
Router(boot)> enable
Router(boot)# config terminal
Router(boot)(config)# ip default-gateway n.n.n.n-+
步骤 3:格式化 PCMCIA 卡(如果需要)
如果PCMCIA卡是出厂时为空的备件,则必须格式化后才能使用。
您也可以使用另一个平台的PCMCIA卡,如果它与您的路由器平台兼容。有关各平台之间的闪存卡兼容性的详细信息,请参阅 PCMCIA 文件系统兼容性列表和文件系统信息。
注意:要从存储于 PCMCIA 闪存卡或闪存盘上的 Cisco IOS 软件文件启动,该闪存卡或闪存盘必须已在目标平台中格式化。
小心:格式化程序会擦除闪存卡上的所有信息。为防止闪存卡上存储的映像和配置文件丢失,请在格式化闪存卡之前将映像和文件复制到 TFTP 服务器:
执行以下步骤:
.
-
将闪存卡插入可用的 PCMCIA 插槽( 或 )。slot0:
slot1:
-
使用 format slot0: (或 format slot1
命令)格式化闪存卡,如下所示:
7500#format slot0:
Format operation can take a while. Continue? [confirm]y
Format operation can destroy all data in "slot0:". Continue?
[confirm]y
Formatting sector 160.....
Format of slot0: complete
注意:在 PCMCIA 插槽方面,ATA PCMCIA 闪存盘使用不同的命令语法。如果您使用 ATA PCMCIA 闪存盘,需改为使用 或 命令语法而不是 slot0: 或 slot1: (它们用于线性 PCMCIA 闪存卡)。disk0:
disk1:
有关ATA PCMCIA闪存盘和线性PCMCIA闪存卡之间的命令语法区别的更多信息,请见“PCMCIA文件系统兼容性表和文件系统信息”。
步骤 4:验证闪存卡(PCMCIA 插槽)上的可用空间
这时,您需要验证在闪存卡中您有足够的空间来复制新的镜像。如果没有足够的可用空间,您需要删除一些文件,腾出足够大的空间。在某些情况下,如果映像非常大,则需要删除闪存卡上的当前映像。
要确定可用空间量并显示slot0:中当前加载的文件,请发出dir{device:}
命令。
在下面的例子中,slot0包含两个文件系统和885756
字节的可用空间。该空间不足以用于加载新镜像。
7500#dir slot0:
Directory of slot0:/
1 -rw- 12531084 Jan 02 2000 00:00:20 rsp-jsv-mz.121-13.bin
2 -rw- 7161208 Jan 02 2000 00:14:33 rsp-jsv-mz.112-26.bin
20578304 bytes total (885756 bytes free)
注意:当您看到错误消息“%Error opening slot0: (Device not ready)”时,请尝试dir disk0:命令。
在下面的示例中,请删除第二个文件,以便为新的Cisco IOS软件映像释放足够的空间。
7500#delete slot0:rsp-jsv-mz.112-26.bin
Delete filename [rsp-jsv-mz.112-26.bin]? [enter]
Delete slot0:rsp-jsv-mz.112-26.bin? [confirm][enter]
7500#
删除该文件后,请使用 命令检查可用空间。dir slot0:
下面的输出显示可用空间仍为 。885756
使用 命令挤压闪存后,可用空间会增加:squeeze
7500#dir slot0:
Directory of slot0:
1 -rw- 12531084 Jan 02 2000 00:00:20 rsp-jsv-mz.121-13.bin
20578304 bytes total (885756 bytes free)
删除文件后,操作系统将会标记该文件。要释放已删除文件的内存空间,您需要发出 命令,这将永久删除已删除的文件。squeeze{device:}
7500#squeeze slot0:
All deleted files can be removed. Continue? [confirm]y
Squeeze operation can take a while. Continue? [confirm]y
Squeezing...
Squeeze of slot0 complete
7500#
删除并压缩文件后,该文件将被永久移除。要检查文件是否已删除以及内存是否已回收,请发出 命令。dir slot0:
7500#dir slot0:
Directory of slot0:/
1 -rw- 12531084 Jan 02 2000 00:00:20 rsp-jsv-mz.121-13.bin
20578304 bytes total (8047092 bytes free)
在上面的输出中,您可以看到可用闪存空间量已从 增加到 。885756 bytes
8047092 bytes
注意:如果闪存卡上没有有效镜像,请勿重新加载路由器或对路由器重新加电;否则会导致路由器进入ROMmon或引导模式。
步骤 5:通过 TFTP 服务器将新映像复制到闪存卡中
逐步完成这些说明。
-
至此,您已建立 IP 连接,并且可以在充当 TFTP 服务器的计算机和路由器之间 ping 通,接下来需要将映像从 TFTP 服务器复制到 slot0。
注意:在复制之前,请确保您已在 PC 上启动 TFTP 服务器软件,并且具有 TFTP 服务器根目录中提到的文件名。建议您在升级前保留路由器配置的副本。升级本身不会影响配置(存储在非易失性 RAM [NVRAM] 中)。但是,如果未正确执行正确的步骤,则可能会影响配置。
对于RCP应用程序,将所出现的每一个TFTP替换为RCP。例如,使用 命令代替 命令。copy rcp flash
copy tftp flash
7500# copy tftp: slot0:
如有必要,您可以将映像从一台设备复制到另一台设备。
-
指定 TFTP 服务器的 IP 地址。
出现提示时,输入 TFTP 服务器的 IP 地址,如下方示例所示:
Address or name of remote host []? 172.17.247.195
-
指定新Cisco IOS软件镜像的文件名称。
出现提示时,输入要安装的 Cisco IOS 软件映像的文件名,如下方示例所示:
Source filename []? rsp-jsv-mz.122-6.bin
-
指定目的地文件名称。
这是新软件映像加载到路由器上时可以被指定的名称。镜像可以任意命名,但普遍做法是输入同一个镜像文件名。
7500#copy tftp slot0:
Address or name of remote host []? 172.17.247.195
Source filename []? rsp-jsv-mz.122-6.bin
Destination filename []?rsp-jsv-mz.122-6.bin
Accessing tftp://10.1.1.1/rsp-jsv-mz.122-6.bin...
Loading rsp-jsv-mz.122-6.bin from 10.1.1.1 (via Ethernet10/5): !!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!
[OK - 12531084/25061376 bytes]
12531084 bytes copied in 641.540 secs (19549 bytes/sec)
7500#
成功传输文件后,必须验证文件是否位于 slot0 中。发出 命令以显示 slot0 中当前加载的文件: dir{device:}
7500#dir slot0:
Directory of slot0:/
1 -rw- 12519472 Jan 02 2000 00:00:20 rsp-jsv-mz.121-13.bin
2 -rw- 12531084 Jan 02 2000 00:00:20 rsp-jsv-mz.122-6.bin
检验名称与文件大小是否正确。如果您使用的是标准 PCMCIA 闪存卡,还可以从 的输出验证 PCMCIA 校验和是否正确。show slot0:
如果您使用的是 ATA 闪存盘,则可以使用 命令获取映像的 MD5 散列,并将该散列与思科技术支持和下载上的相应内容进行比较。verify /md5 slot0:
Cisco IOS软件版本12.0(22)S中引入了verify
命令的MD5选项,该选项即将以最新的12.2T映像的形式发布。您可以在Cisco Bug IDCSCdw84342的“First Fixed-in Version”字段中查看包含MD5验证选项的Cisco IOS软件版本。
步骤 6:设置引导语句以在启动时加载新映像
通过 TFTP 复制映像后,您需要告诉路由器在启动时加载哪个映像。
检查当前启动语句
此时,新镜像位于 slot0 中。您需要设定路由器以新的镜像进行启动。默认情况下,路由器将引导闪存中的第一个文件。搜索闪存的顺序为 disk0:、disk1:、slot0:、slot1:,最后是 bootflash:。如果配置中没有 命令或引导语句不准确,则启用默认设置。boot
可通过两种方法确定当前的引导参数设置:
选项 1:发出 命令,检查配置中是否定义了任何 ] 命令。boot
show running-config
在下面的示例中,引导语句设置为 boot system flash slot0:rsp-jsv-mz.121-13.bin
.
7500#show running-config
!
version 12.2
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
no service single-slot-reload-enable
!
hostname 7500
!
boot system flash slot0:rsp-jsv-mz.121-13.bin
!
ip subnet-zero
选项 2:发出 命令。show bootvar
注: 命令替换 命令。show bootvar
show boot
7500#show bootvar
BOOT variable = slot0:rsp-jsv-mz.121-13.bin,12;
CONFIG_FILE variable =
BOOTLDR variable does not exist
Configuration register is 0x102
7500#
上面的输出还显示引导变量为 。 slot0:rsp-jsv-mz.121-13.bin
如果在您的配置中有boot system命令条目,那么您应从配置中取消这些条目。有关如何删除引导条目的详细信息,请转至下一部分。
删除以前的启动语句
如果要去除这些命令,请进入配置终端模式。在配置模式下,您可以在每个引导语句前面输入 来使任何命令无效。no
下方的示例说明了如何删除当前引导语句:
7500#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
7500(config)#no boot system flash slot0:rsp-jsv-mz.121-13.bin
7500(config)#^Z
7500#
从配置中删除了语句 。boot system flash slot0:rsp-jsv-mz.121-13.bin
通过发出 命令验证该命令是否已删除。show running-config
设置新引导语句
现在,设置路由器以启动新映像。发出以下命令以设置引导系统参数:
boot system flash slot0:{imagename} (imagename = name of the new IOS image)
7500#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
7500(config)#boot system flash slot0:rsp-jsv-mz.122-6.bin
7500(config)#^Z
7500#write mem
3d01h: %SYS-5-CONFIG_I: Configured from console by vty0
Building configuration...
7500#
在配备有 ATA PCMCIA 闪存盘的平台上,该命令语法为:
boot system [device]:{imagename}
例如:
7500(config)#boot system disk0:rsp-jsv-mz.122-6.bin
请务必通过发出 或 命令来验证您是否使用了 。config-register 0x2102
show bootvar
show version
如果设置为了其他项,您可以通过在配置模式下发出以下命令进行更改:
7500#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
7500(config)#config-register 0x2102
7500(config)#^Z
7500#write mem
通过发出 命令验证引导参数:show bootvar
7500#show bootvar
BOOT variable = slot0:rsp-jsv-mz.122-6.bin,12;
CONFIG_FILE variable =
BOOTLDR variable does not exist
Configuration register is 0x102 (can be 0x2102 at next reload)
7500#
更改 config-register 后,更改将在下一次重新加载时生效,如上所示。
第7步:重新启动路由器以加载新映像
为使路由器运行新的Cisco IOS软件镜像,您需要重新加载路由器。通过发出 或 命令确保已保存配置。copy run start
write mem
7500#write mem
3d01h: %SYS-5-CONFIG_I: Configured from console by vty0 (127.0.0.11)
Building configuration...
7500#reload
步骤 8:检验升级
路由器启动后,通过发出 命令,确保当前运行的是新版本的代码:show version
7500#show version
Cisco Internetwork Operating System Software
Cisco IOS (tm) RSP Software (RSP-JSV-M), Version 12.2(6), RELEASE SOFTWARE (fc3)
Copyright (c) 1986-2002 by cisco Systems, Inc.
Compiled Wed 30-Jan-02 19:58 by kellythw
Image text-base: 0x60010958, data-base: 0x6148A000
ROM: System Bootstrap, Version 11.1(8)CA1, EARLY DEPLOYMENT RELEASE SOFTWARE (fc1)
BOOTLDR: RSP Software (RSP-BOOT-M), Version 12.2(6), RELEASE SOFTWARE (fc2)
7500-A uptime is 0 minutes
System returned to ROM by reload at 00:05:37 PST Sat Jan 1 2000
System image file is "slot0:rsp-jsv-mz.122-6.bin"
!-- you have booted the correct image
cisco RSP4 (R5000) processor with 131072K/2072K bytes of memory.
R5000 CPU at 200Mhz, Implementation 35, Rev 2.1, 512KB L2 Cache
Last reset from power-on
G.703/E1 software, Version 1.0.
G.703/JT2 software, Version 1.0.
Channelized E1, Version 1.0.
X.25 software, Version 3.0.0.
SuperLAT software (copyright 1990 by Meridian Technology Corp).
Bridging software.
TN3270 Emulation software.
Primary Rate ISDN software, Version 1.1.
Chassis Interface.
1 EIP controller (6 Ethernet).
1 AIP controller (1 ATM).
2 TRIP controllers (8 Token Ring).
2 MIP controllers (2 T1) (2 E1).
6 Ethernet/IEEE 802.3 interface(s)
8 Token Ring/IEEE 802.5 interface(s)
48 Serial network interface(s)
1 ATM network interface(s)
2 Channelized E1/PRI port(s)
2 Channelized T1/PRI port(s)
123K bytes of non-volatile configuration memory.
20480K bytes of Flash PCMCIA card at slot 0 (Sector size 128K).
16384K bytes of Flash PCMCIA card at slot 1 (Sector size 128K).
8192K bytes of Flash internal SIMM (Sector size 256K).
No slave installed in slot 6.
Configuration register is 0x2102
验证Cisco IOS软件版本12.2(6)是正确的,该配置寄存器设置为0x2102。
相关信息