目录

简介

先决条件

要求

使用的组件

规则

背景信息

安装 TFTP 服务器

建立与路由器的控制台会话

路由器引导问题

软件安装和升级过程

步骤 1：选择 Cisco IOS 软件映像

步骤 2：将 Cisco IOS 软件映像下载到 TFTP 服务器

步骤 3：确定要复制映像的文件系统

步骤 4：准备升级

步骤 5：保证 TFTP 服务器和路由器之间具有 IP 连通性

步骤 6：将Cisco IOS映像复制到路由器

示例 1：将映像从 TFTP 服务器复制到 flash:

示例 2：将映像从 TFTP 服务器复制到 slot1:

示例 3：将Cisco IOS映像复制到闪存：

步骤 7：验证文件系统中的 Cisco IOS 映像

步骤 8::验证配置寄存器

步骤 9：验证引导变量

步骤 10：保存配置并重新加载路由器

步骤 11：验证 Cisco IOS 升级

相关信息

简介

本文档介绍如何在Cisco接入路由器平台上升级Cisco IOS®软件映像。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

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

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

规则

有关文档约定的更多信息，请参考 Cisco 技术提示约定。

背景信息

本文档说明如何升级Cisco IOS软件映像。从 2600 和 3600 系列路由器提供的示例也适用于所列的路由器平台。Cisco IOS 软件文件名可能根据 Cisco IOS 软件版本、功能集和平台而变化。

本文档中讨论了以下路由器：

- Cisco 1000 系列路由器

- Cisco 1400 系列路由器

- Cisco 1600-R 系列路由器

- Cisco 1700 系列路由器

- 思科 2600 系列路由器

- Cisco 2800 系列路由器

- 思科 3600 系列路由器

- Cisco 3700 系列路由器

- Cisco 3800 系列路由器

- Cisco 4000 系列路由器

- Cisco 4700 系列路由器

- Cisco AS5300 系列路由器

- Cisco MC3810 系列路由器

注意：您必须是注册用户，并且必须登录Cisco.com网站才能使用本文档中介绍的工具。

有多个协议可用于将 Cisco IOS 映像复制到 Cisco 路由器。最常用的协议是简单文件传输协议(TFTP)。 其他协议包括 ftp、http、https、scp 和 rcp。如果有必要，您可以将映像从一个设备复制到另一个设备。有关详细信息，请参阅如何将系统映像从一个设备复制到另一个设备文档中的从一个路由器复制到另一个路由器部分。

安装 TFTP 服务器

TFTP服务器应用程序必须安装在TCP/IP就绪工作站或PC上。安装该应用程序后，必须执行最低级别的配置。

1. 下载 TFTP 服务器。有关详细信息，请参阅 TFTP 服务器选择和使用。

2. 将 TFTP 应用程序配置为作为 TFTP 服务器（而不是 TFTP 客户端）运行。

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

建立与路由器的控制台会话

即使可以通过Telnet会话连接到路由器，Cisco建议您通过控制台端口直接连接到路由器，因为如果在升级过程中发生问题，则需要在路由器旁边实际出现才能重新通电。另外，在升级过程中，当路由器重新启动时，Telnet 连接将丢失。

使用反转电缆（通常为哑黑色电缆）将路由器的控制台端口连接到 PC 的 COM 端口之一。

当PC连接到路由器的控制台端口时，打开PC上的终端仿真器，然后使用以下设置：

9600 Speed bits per second

8 databits

0 parity bits

1 stop bit

No Flow Control

如果终端会话中出现垃圾字符，则可能是未正确设置终端仿真器属性，或者路由器的config-register设置为控制台连接速度高于9600 bps的非标准值。要检查 config-register 的值，请发出 show version 命令。config-register 值显示在输出的最后一行中。验证此值是否设置为 0x2102 或 0x102。

注意：要使配置寄存器更改生效，必须重新加载路由器。

当您确定路由器端的控制台速度设置为9600 bps时，必须检查终端仿真器属性。有关如何设置终端属性的详细信息，请参阅对控制台连接进行故障排除并应用正确的终端仿真器设置。

路由器引导问题

当您连接到路由器的控制台端口时，您会发现路由器处于ROMmon或引导模式。这两种模式用于恢复和诊断过程。如果您没有看到通常的路由器提示，则必须使用以下建议才能继续安装升级过程：

- 当您发出 dir flash: 命令时，路由器在 ROMmon 模式下引导，并显示以下消息指令：

rommon 1 >dir flash:

device does not contain a valid magic number

dir: cannot open device "flash:"

rommon 2 >

当闪存为空或文件系统已损坏时，将显示此错误消息。有关详细信息，请参阅使用 ROMmon 的 Xmodem 控制台下载过程。

注意：您还可以查询特定于您的平台的引导失败过程。从产品支持选择器选择您的平台以查找这些过程。查找各文档的“故障排除”部分。

- 路由器在引导模式下引导，并在控制台上显示以下消息：

router(boot)>

device does not contain a valid magic number

boot: cannot open "flash:"

boot: cannot determine first file name on device "flash:"

当闪存为空或文件系统已损坏时，将在控制台中显示这些错误消息。如本文档中提供的过程中所述，在闪存上复制有效的映像。

注意：您还可以查询特定于您的平台的引导失败过程。从产品支持选择器选择您的平台以查找这些过程。

软件安装和升级过程

此部分包括以下主题：

- 步骤 1：选择 Cisco IOS 软件映像

- 步骤 2：将 Cisco IOS 软件映像下载到 TFTP 服务器

- 步骤 3：确定要复制映像的路由器文件系统

- 步骤 4：准备升级

- 步骤 5：保证 TFTP 服务器和路由器之间具有 IP 连通性

- 步骤 6：将Cisco IOS映像复制到路由器

- 步骤 7：验证文件系统中的 Cisco IOS 映像

- 步骤 8::验证配置寄存器

- 步骤 9：验证引导变量

- 步骤 10：  Save  配置并重新加载路由器

- 步骤 11：验证 Cisco IOS 升级

步骤 1：选择 Cisco IOS 软件映像

升级过程中的第一步是选择正确的 Cisco IOS 软件版本和功能集。此步骤非常重要，这些因素可能会影响您必须选择Cisco IOS的决策：

- 内存要求：路由器必须有足够的磁盘或闪存来存储Cisco IOS。路由器还必须具有足够的内存(DRAM)以运行Cisco IOS。如果路由器没有足够的内存(DRAM)，则当路由器通过新的Cisco IOS启动时，可能会出现启动问题。

- 接口和模块支持：必须确保新的 Cisco IOS 支持路由器中的所有接口和模块。

- 软件功能支持：必须确保新的 Cisco IOS 支持与旧的 Cisco IOS 一起使用的功能。

有关如何选择正确的软件版本以及功能设置的更多信息，请参阅“ 如何选择Cisco IOS软件版本”。

步骤 2：将 Cisco IOS 软件映像下载到 TFTP 服务器

从Cisco Product Support and Downloads（思科产品支持和下载）将Cisco IOS软件映像下载到您的工作站或PC。

注意：只有注册的思科用户才能访问思科内部站点。

步骤 3：确定要复制映像的文件系统

文件系统类型 flash 或 disk 用于存储Cisco IOS映像。show file system 命令输出显示路由器上可用的文件系统的列表。Cisco路由器支持的常见disk/flash文件系统具有诸如flash:、slot0:、slot1:、disk0:和 disk1:。它必须有足够的空间来存储Cisco IOS映像。可以使用show file system或dir file_system> 命令查找可用空间。

2600#show file system

File Systems:

Size(b)     Free(b)      Type  Flags  Prefixes

-           -    opaque     rw   archive:

-           -    opaque     rw   system:

29688       20571     nvram     rw   nvram:

-           -    opaque     rw   null:

-           -   network     rw   tftp:

-           -    opaque     ro   xmodem:

-           -    opaque     ro   ymodem:

*   49807356    20152636     flash     rw   flash:

-           -    opaque     wo   syslog:

2800#show file system

File Systems:

Size(b)     Free(b)      Type  Flags  Prefixes

-           -    opaque     rw   archive:

-           -    opaque     rw   system:

-           -    opaque     rw   null:

-           -   network     rw   tftp:

-           -    opaque     ro   xmodem:

-           -    opaque     ro   ymodem:

*   64016384    15470592      disk     rw   flash:#

245752      239218     nvram     rw   nvram:

-           -    opaque     wo   syslog:

3600#show file system

File Systems:

Size(b)     Free(b)      Type  Flags  Prefixes

-           -    opaque     rw   archive:

-           -    opaque     rw   system:

129016      126071     nvram     rw   nvram:

-           -    opaque     rw   null:

-           -   network     rw   tftp:

*   33030140    20511708     flash     rw   flash:

16777212    16777212     flash     rw   slot0:

16515068     8038516     flash     rw   slot1:

-           -    opaque     rw   xmodem:

-           -    opaque     rw   ymodem:

3700#show file system

File Systems:

Size(b)     Free(b)      Type  Flags  Prefixes

-           -    opaque     rw   archive:

-           -    opaque     rw   system:

57336       51389     nvram     rw   nvram:

-           -    opaque     rw   null:

-           -   network     rw   tftp:

-           -    opaque     ro   xmodem:

-           -    opaque     ro   ymodem:

*   63881216    22765568      disk     rw   flash:#

31932416    31932416      disk     rw   slot0:#

-           -    opaque     wo   syslog:

步骤 4：准备升级

在升级Cisco IOS之前，必须考虑以下项目：

- 如果路由器具有足够的内存（闪存、插槽或磁盘），您可以同时存储旧的 Cisco IOS 和新的 Cisco IOS。您可以在 ROMMON 模式下引导路由器，如果使用新的 Cisco IOS 进行引导时失败，还可以引导旧的 Cisco IOS。此方法 saves 如果必须回滚Cisco IOS，则为time。

- 由于某些 Cisco IOS 版本会添加默认配置，因此请备份路由器中的配置。此新添加的配置可能与您的当前配置冲突。请将 Cisco IOS 升级之后的路由器配置与升级之前备份的配置进行比较。如果配置中存在差异，您必须确保它们不影响您的要求。

步骤 5：保证 TFTP 服务器和路由器之间具有 IP 连通性

TFTP 服务器和路由器之间必须有网络连接，且必须能 ping 出 TFTP 软件升级的目标路由器 IP 地址。要实现此连接，路由器接口和 TFTP 服务器必须具有位于同一范围的 IP 地址或必须配置了默认网关。

请检查 TFTP 服务器的 IP 地址以验证此配置。

步骤 6：将Cisco IOS映像复制到路由器

由于您有 IP 连接，并且可以在充当 TFTP 服务器的计算机和路由器之间执行 ping 操作，因此可以将 Cisco IOS 软件映像复制到闪存中。

注意：在复制映像之前，请确保您已在 PC 上启动 TFTP 服务器软件，并具有在 TFTP 服务器根目录中提到的文件名。Cisco 建议您在升级之前保留路由器和接入服务器配置的备份。升级不会影响存储在非易失性RAM(NVRAM)中的配置。 但是，如果未正确执行正确的步骤，则可能会出现这种情况。

注意：本部分提供了说明如何复制 Cisco IOS 映像的三个示例。您可以使用这些方法中的任何一个来复制映像。

- 示例 1：将映像从 TFTP 服务器复制到 flash:

- 示例 2：将映像从 TFTP 服务器复制到 slot1:

- 示例 3：将Cisco IOS映像复制到闪存：

示例 1：将映像从 TFTP 服务器复制到 flash:

从 TFTP 服务器升级新映像。使用 copy tftp:flash: 命令以将映像从 TFTP 服务器复制到闪存。

2600>enable

Password:xxxxx

2600#copy tftp: flash:

Address or name of remote host []? 10.10.10.2

!--- 10.10.10.2 is the IP address of the TFTP server

Source filename []? c2600-adventerprisek9-mz.124-12.bin

Destination filename [c2600-adventerprisek9-mz.124-12.bin]?

Accessing tftp://10.10.10.2/c2600-adventerprisek9-mz.124-12.bin...

Erase flash: before copying? [confirm]y

!--- If there is not enough memory available, erase the Flash.

!--- If you have sufficient memory you can type n and press enter

Erasing the flash filesystem will remove all files! Continue? [confirm]y

Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee

eeeeeeeeee ...erased

Erase of flash: complete

Loading c2600-adventerprisek9-mz.124-12.bin from 10.10.10.2 (via Ethernet0/0): !!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[OK - 29654656/49807356 bytes]

Verifying checksum...  OK (0xAC8A)

29654656 bytes copied in 56.88 secs (80383 bytes/sec)

复制过程需要几分钟。这次与从网络到网络有所不同。复制过程正在进行时，将显示一些消息，用于指示已访问了哪一个文件。

感叹号“!” 指示复制过程正在进行。每个感叹号都指示已成功传输了十个数据包。镜像的校验和验证将在镜像写入闪存后执行。

示例 2：将映像从 TFTP 服务器复制到 slot1:

从 TFTP 服务器升级新映像。如果选择 slot1:文件系统，请使用 copy tftp:slot1: 命令以将映像从 TFTP 服务器复制到 slot1。

3600#copy tftp: slot1:

Address or name of remote host []? 172.16.173.10

!--- 172.16.173.10 is the IP address of the TFTP server

Source filename []? c3640-i-mz.122-7b.bin

Destination filename [c3640-i-mz.122-7b.bin]?

Accessing tftp://172.16.173.10/c3640-i-mz.122-7b.bin...

Erase slot1: before copying? [confirm]n

!--- You specify "n" because there is enough memory available.

Loading c3640-i-mz.122-7b.bin from 172.16.173.10 (via Ethernet1/0):

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!

[OK - 5996844/11993088 bytes]

Verifying checksum...  OK (0x13F0)

5996844 bytes copied in 67.708 secs (89505 bytes/sec)

3600#

复制过程需要几分钟。这次与从网络到网络有所不同。复制过程正在进行时，将显示一些消息，用于指示已访问了哪一个文件。

感叹号“!” 指示复制过程正在进行。每个感叹号都指示已成功传输了十个数据包。镜像的校验和验证将在镜像写入闪存后执行。

示例 3：将Cisco IOS映像复制到闪存：

您可以将路由器配置为 TFTP 服务器。如果选择 flash:文件系统，请使用 copy tftp:flash:命令以将映像从 TFTP 服务器复制到闪存。

Router-tftp(config)#tftp-server flash:c7200-a3js-mz.122-15.T16.bin

!--- Router-tftp is configured as the TFTP server.

7200#copy tftp: flash:

Address or name of remote host []? 172.22.1.84

Source filename []? c7200-a3js-mz.122-15.T16.bin

Destination filename [c7200-a3js-mz.122-15.T16.bin]?

Accessing tftp://172.22.1.84/c7200-a3js-mz.122-15.T16.bin...

Erase flash: before copying? [confirm]n

Loading c7200-a3js-mz.122-15.T16.bin from 172.22.1.84 (via GigabitEthernet0/1):

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[OK - 19187152 bytes]

Verifying checksum...  OK (0x15C1)

19187152 bytes copied in 482.920 secs (39732 bytes/sec)

步骤 7：验证文件系统中的 Cisco IOS 映像

验证文件系统中的映像。

2600#dir flash:

Directory of flash:/

1  -rw-    29654656                    <no date>  c2600-adventerprisek9-mz.124-12.bin

49807356 bytes total (20152636 bytes free)

2600#verify flash:c2600-adventerprisek9-mz.124-12.bin

Verifying file integrity of flash:c2600-adventerprisek9-mz.124-12.bin...........

................................................................................

................................................................................

.............................Done!

Embedded Hash   MD5 : 1988B2EC9AFAF1EBD0631D4F6807C295

Computed Hash   MD5 : 1988B2EC9AFAF1EBD0631D4F6807C295

CCO Hash        MD5 : 141A677E6E172145245CCAC94674095A

Signature Verified

Verified flash:c2600-adventerprisek9-mz.124-12.bin

有关不同的 %SIGNATURE 错误消息和应采取的必要措施的信息，请参阅系统消息指南。

步骤 8::验证配置寄存器

请使用show version命令检查此值，并使用命令config-register <value> 修改此值。show version输出的最后一行中显示的值必须设置为0x2102。

2600#configure terminal

Enter configuration commands, one per line.  End with CNTL/Z.

2600(config)#config-register 0x2102

2600(config)#^Z

步骤 9：验证引导变量

验证Cisco IOS映像是否位于闪存中，如果闪存中的第一个文件不是Cisco IOS软件映像，而是配置文件或其他内容，则需要配置boot system语句以引导指定的映像。否则，路由器将尝试使用配置文件或闪存中的第一个文件引导，而这将不起作用。如果闪存中仅有一个文件并且该文件是 Cisco IOS 软件映像，则无需执行该步骤。

2600#show run | include boot

boot system flash:c2600-adventerprisek9-mz.123-21.bin

2600#configure terminal

Enter configuration commands, one per line.  End with CNTL/Z.

2600(config)#no boot system

2600(config)#boot system flash:c2600-adventerprisek9-mz.124-12.bin

2600(config)#^Z

如果Cisco IOS映像位于slot1中，则首先需要删除指向旧Cisco IOS的引导变量，然后需要配置路由器以通过新Cisco IOS进行引导。

3600# show run | include boot

boot system slot1:c3640-i-mz.120-22.bin

3600#configure terminal

Enter configuration commands, one per line.  End with CNTL/Z.

3600(config)#no boot system

3600(config)#boot system slot1:c3640-i-mz.122-7b.bin

3600(config)#^Z

步骤 10： Save 配置并重新加载路由器

Save  配置，然后重新加载路由器。

2600#write memory

2600#reload

Proceed with reload? [confirm]

Jan 24 20:17:07.787: %SYS-5-RELOAD: Reload requested by console. Reload Reason:

Reload Command.

步骤 11：验证 Cisco IOS 升级

验证路由器是否使用正确的映像运行。

重新加载完成后，路由器必须运行所需的Cisco IOS软件映像。请使用 show version 命令以验证 Cisco IOS 软件。

2600#show version

00:22:25: %SYS-5-CONFIG_I: Configured from console by console

Cisco IOS Software, C2600 Software (C2600-ADVENTERPRISEK9-M), Version 12.4(12),

RELEASE SOFTWARE (fc1)

Technical Support: http://www.cisco.com/techsupport

Copyright (c) 1986-2006 by Cisco Systems, Inc.

Compiled Fri 17-Nov-06 11:18 by prod_rel_team

ROM: System Bootstrap, Version 12.2(8r) [cmong 8r], RELEASE SOFTWARE (fc1)

2610 uptime is 22 minutes

System returned to ROM by reload

System image file is "flash:c2600-adventerprisek9-mz.124-12.bin"

以下是3600路由器的 show version输出，该路由器的slot1中包含Cisco IOS:

3600#show version

Cisco Internetwork Operating System Software

IOS (tm) 3600 Software (C3640-I-M), Version 12.2(7b), RELEASE SOFTWARE (fc1)

Copyright (c) 1986-2002 by cisco Systems, Inc.

Compiled Mon 04-Mar-02 20:23 by pwade

Image text-base: 0x600089A8, data-base: 0x60A6A000

ROM: System Bootstrap, Version 11.1(19)AA, EARLY DEPLOYMENT RELEASE SOFTWARE (f)

Router uptime is 2 minutes

System returned to ROM by reload

System image file is "slot1:c3640-i-mz.122-7b.bin"

cisco 3640 (R4700) processor (revision 0x00) with 59392K/6144K bytes of memory.

Processor board ID 10524422

R4700 CPU at 100Mhz, Implementation 33, Rev 1.0

Bridging software.

X.25 software, Version 3.0.0.

4 Ethernet/IEEE 802.3 interface(s)

DRAM configuration is 64 bits wide with parity disabled.

125K bytes of non-volatile configuration memory.

4096K bytes of processor board System flash (Read/Write)

20480K bytes of processor board PCMCIA Slot0 flash (Read/Write)

20480K bytes of processor board PCMCIA Slot1 flash (Read/Write)

Configuration register is 0x2102

相关信息

- 如何选择 Cisco IOS 软件版本

- PCMCIA 闪存兼容表和文件系统信息

- 思科产品支持和下载