目录

简介

先决条件

要求

使用的组件

规则

背景信息

软件安装和升级过程

分步过程

第1步：建立到路由器的控制台会话

启动问题

第2步：检验TFTP服务器是否具有与路由器的IP连接

第3步：如果需要，格式化PCMCIA卡

第4步：验证闪存卡（PCMCIA插槽）上的可用空间

第5步：通过TFTP服务器将新映像复制到闪存卡中

第6步：设置启动语句以在启动时加载新映像

检查当前启动语句

删除以前的启动语句

设置新启动语句

第7步：重新启动路由器以加载新映像

步骤 8:检验升级

相关信息

简介

本文档介绍如何在思科高端路由器上升级 Cisco IOS® 软件映像。

先决条件

要求

Cisco 建议您了解以下主题：

- 如何安装TFTP服务器

- 如何安装Cisco IOS软件映像

有关这些主题的详细信息，请参阅背景信息部分。

使用的组件

本文档中的信息基于 Cisco IOS 软件版本 12.1 或更高版本。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

规则

有关文档规则的详细信息，请参阅 Cisco 技术提示规则。

背景信息

本文档讨论在Cisco高端路由器上升级Cisco IOS软件映像的过程。本文提供的示例基于7500路由器，但程序可应用到其他路由器。Cisco IOS软件文件名可能因使用的产品类型而异。

注意：要使用本文档中介绍的故障排除工具，您必须是注册用户，并且必须已登录。

本文讨论这些Cisco系列路由器：

- Cisco 7000系列路由器，带RP和RSP7000

- 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上。安装应用后，必须执行最低级别的配置，请使用以下步骤：

1. 配置 TFTP 应用程序使其作为 TFTP 服务器运行，而不是作为 TFTP 客户端。

2. 指定出站文件目录。这是将在其中存储 Cisco IOS 软件映像的目录。大多数TFTP应用程序提供安装例程序辅助这些配置任务。

注意：许多TFTP或RCP应用程序可从独立软件供应商处获得，也可作为共享软件从万维网上的公共资源获得。

注意：大多数TFTP应用程序无法传输大小超过16MB的文件。如果您安装的Cisco IOS软件大于16MB，则必须使用FTP或RCP服务器。

第2步：选择思科IOS软件映像

验证您下载的Cisco IOS软件镜像是否支持您的硬件以及所需的软件功能。您可以通过Cisco Software Advisor（仅限注册用户）找到此信息。在下载您选择的软件版本之前，请确保您的路由器有足够的动态RAM (DRAM)和闪存用于Cisco IOS软件映像。您可以在每个特定Cisco IOS软件版本的发行版本注释中找到建议的最低DRAM和闪存要求，也可以在Cisco技术支持和下载中找到该要求。有关如何选择正确的软件版本和功能集的其他信息，请参阅比较功能以选择最佳软件版本。

第3步：下载Cisco IOS软件映像

从Cisco技术支持和下载将Cisco IOS软件映像下载到您的工作站或PC中。

软件安装和升级过程

分步过程

第1步：建立到路由器的控制台会话

这可以通过直接控制台连接或虚拟Telnet连接执行。直接的控制台连接比Telnet连接更优先，因为多数故障恢复程序要求您提供实际在现场，但Telnet连接却容易在软件安装的重新启动阶段中断。控制台连接通过反转电缆(通常浅黑电缆)来实现，并将路由器的控制台端口连接到PC的COM端口上。打开PC上的Hyperterminal，然后使用下列设置：

Speed 9600 bits per second

8 databits

0 parity bits

1 stop bit

No Flow Control

注意：如果超级终端中有任何垃圾字符，则意味着您没有正确设置超级终端属性，或者路由器的配置寄存器被设置为控制台连接速度高于9600 bps的非标准值。使用show version命令（显示在输出的最后一行）检查配置寄存器值，保证它已设置为0x2102或0x102。必须重新加载路由器使配置寄存器生效。一旦您确定路由器端的控制台速度设置为9600 bps，就必须像以前一样检查超级终端属性。

有关如何设置Hyperterminal属性的详细信息，请参阅为控制台连接应用正确的终端仿真器设置。

启动问题

连接到路由器的控制台端口后，您会看到路由器处于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恢复的详细信息，请参阅Cisco 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服务器：

执行以下步骤：

.

1. 将闪存卡插入可用的PCMCIA插槽(slot0:或 slot1: )。

1. 使用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服务器将新映像复制到闪存卡中

逐步执行这些说明。

1. 现在您已建立IP连接，并且可以在充当TFTP服务器的计算机与路由器之间执行ping操作，请将镜像从TFTP服务器复制到slot0中。

注意：在复制之前，请确保您已在PC上启动TFTP服务器软件，并且具有TFTP服务器根目录中提到的文件名。建议您在升级前保留路由器配置的副本。升级本身不会影响配置（存储在非易失性RAM - NVRAM中）。但是，如果未正确完成正确的步骤，则可能会发生这种情况。

对于RCP应用程序，将所出现的每一个TFTP替换为RCP。例如，使用copy rcp flash命令而非copy tftp flash  命令。

7500# copy tftp: slot0:

如有必要，可以将图像从一台设备复制到另一台设备。

1. 指定 TFTP 服务器的 IP 地址。

出现提示时，输入TFTP服务器的IP地址，如以下示例所示：

Address or name of remote host []? 172.17.247.195

2. 指定新Cisco IOS软件镜像的文件名称。

出现提示时，输入要安装的Cisco IOS软件映像的文件名，如下例所示：

Source filename []? rsp-jsv-mz.122-6.bin

3. 指定目的地文件名称。

这是新软件映像加载到路由器时可以使用的名称。镜像可以任意命名，但普遍做法是输入同一个镜像文件名。

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中。发出 dir{device:}  命令以显示当前位于slot0中的文件：

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闪存卡，您也可以从show slot0:命令的输出中检验PCMCIA校验和是否正确。如果有ATA闪存盘，则可以使用verify /md5 slot0:命令获得镜像上的MD5散列，并将该散列与Cisco技术支持和下载上的散列进行比较。verify   命令的MD5选项是在Cisco IOS软件版本12.0(22)S中引入的，很快会在最新的12.2T映像中发布。您可以在Cisco Bug ID CSCdw84342的“First Fixed-in Version”字段中查看包含MD5验证选项的Cisco IOS软件版本。

注意：只有思科注册用户才能访问内部工具和信息。

第6步：设置启动语句以在启动时加载新映像

通过TFTP复制映像后，您需要告知路由器在启动时加载哪个映像。

检查当前启动语句

此时，新镜像位于 slot0 中。您需要设定路由器以新的镜像进行启动。默认情况下，路由器将引导闪存中的第一个文件。搜索闪存的顺序是disk0：、disk1：、slot0：、slot1：，最后是bootflash：。配置中没有boot 命令，或者引导语句不正确时，将启用默认值。

可通过两种方法确定当前的引导参数设置：

选项1：发出show running-config 命令，检查您的配置中是否有定义的boot 命令。在下面的示例中，引导语句设置为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参数：

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#

更改配置寄存器后，更改将在下次重新加载时发生，如前所示。

第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。

相关信息

- 配置控制台和 AUX 端口的电缆要求

- 为控制台连接应用正确的终端仿真器设置

- 使用ROMmon下载Xmodem控制台的步骤

- PCMCIA文件系统信息和兼容性列表

- 将系统映像复制到另一个设备

- 思科技术支持和下载