简介
本文档介绍如何使用 xmodem
命令下载Cisco IOS®软件和ROM监控器(ROMmon)。
先决条件
要求
本文档没有任何特定的要求。
使用的组件
本文档中的信息基于以下软件和硬件版本:
注意: Xmodem
也可用于其他Catalyst交换机。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
规则
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
概述
Xmodem 可以在一组路由器(请参阅使用的组件)上使用,适用于路由器没有可用来进行启动的有效 Cisco IOS 软件或 bootflash 映像,而仅可在 ROMmon 中启动的灾难恢复情形。如果没有简单文件传输协议(TFTP)服务器或网络连接,并且与路由器控制台直接PC连接(或通过调制解调器连接)是唯一可行的选项,也可以使用此程序。由于此过程依赖路由器的控制台速率和 PC 的串行端口,所以下载映像需要很长时间。例如,将Cisco IOS软件版本12.1(16)IP Plus映像下载到速度为38400 bps的Cisco 1600系列路由器大约需要25分钟。
使用率
以下是的命令语法 xmodem
:
xmodem [-c] [-y] [-e] [-f] [-r] [-x] [-s data-rate]
下表介绍的命令语法 xmodem
命令。
语法 |
描述 |
-c |
(可选)CRC-16 校验和,比标准校验和更为复杂全面。 |
-y |
(可选)使用 Ymodem 协议提高吞吐量。 |
-e |
(可选)在下载开始之前擦除闪存中的第一个分区。此选项仅对 Cisco 1600 系列有效。 |
-f |
(可选)在下载开始之前擦除所有闪存。此选项仅对 Cisco 1600 系列路由器有效。 |
-r |
(可选)将文件下载到 DRAM。默认设置为闪存。 |
-x |
(可选)在完成下载时不执行 Cisco IOS 软件映像。 |
-sdata-rate |
(可选)设置文件传输期间的控制台端口数据速率。值为 1200、2400、4800、9600、19200、38400 和 115200 bps。默认速率在配置寄存器中指定。此选项仅对 Cisco 1600 系列路由器有效。 |
文件名 |
(可选的)要复制的文件名。如已指定 -r 关键字,此参数将被忽略,因为仅有一个文件可以复制到 DRAM。在 Cisco 1600 系列路由器上,文件将加载到 ROMmon 以便执行。 |
注: xmodem
只有Cisco 1600系列路由器支持选项e、f和s。要了解要使用的语法和可用选项, xmodem
命令,输入 xmodem
-?在ROMmon提示符下。
以下是 xmodem
命令:
rommon 9 >xmodem -?
usage: xmodem [-cyrxefs]<destination filename>
-c CRC-16
-y ymodem-batch protocol
-r copy image to dram for launch
-x do not launch on download completion
-f Perform full erase of flash
-e Perform erase of first flash partition
-s<speed>Set speed of Download, where speed may be
1200|2400|4800|9600|19200|38400|115200
以下是 xmodem
命令:
rommon 1 >xmodem -?
xmodem: illegal option -- ?
usage: xmodem [-cyrx] <destination filename>
-c CRC-16
-y ymodem-batch protocol
-r copy image to dram for launch
-x do not launch on download completion
Examples
rommon 12 >xmodem -cfs115200 c1600-sy-mz.121-16.bin
rommon 2 >xmodem -c c2600-is-mz.122-10a.bin
-
此 xmodem
传输仅在控制台端口上有效。您只能将文件下载到路由器。不能使用 xmodem
从路由器获取文件。
-
还必须注意的一点的是,-sdata-rate 选项仅可用于 Cisco 1600 系列路由器,可通过执行该选项来克服 9600 bps 的控制台波特率限制。例如,如果将 -sdata-rate 指定为 115200 bps,则可提高下载速度,从而缩短下载时间。其他 Cisco 路由器支持高达 115200 bps 的控制台速度。因此,不需要使用 -sdata-rate 选项。
-
如果您通过路由器控制台速度下载Cisco IOS软件映16550,请确保PC串行端口使用通用异步发射器/接收器(UART115200。如果PC串行端口不使用16550 UART,建议您使用38,400或更低的速度。
Cisco IOS软件映像到Cisco 1603路由器的Xmodem下载过程
使用此 xmodem 过程可将 Cisco IOS 软件映像下载到 Cisco 1603 路由器。
-
启动终端仿真器程序。
在本示例中,将速度为9600 bps的8-N-1的Windows超级终端配置为Windows超级终端,并将PC串行端口连接到路由器的控制台端口。连接好后,需要进入 ROMmon 提示符 (rommon 1>)。通常,如果路由器软件映像和bootflash映像都损坏,则路由器仅在ROMmon模式下启动。如果前者不正确,您需要进入ROMmon提示符,则需要更改配置寄存器(通常为0x2102,如所示) show version
)到0x0:
1600#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
1600(config)#config-register 0x0
1600(config)#^Z
1600#
00:22:06: %SYS-5-CONFIG_I: Configured from console by console
1600#reload
System configuration has been modified. Save? [yes/no]: n
Proceed with reload? [confirm]
00:22:16: %SYS-5-RELOAD: Reload requested
System Bootstrap, Version 12.0(3)T, RELEASE SOFTWARE (fc1)
Copyright (c) 1999 by cisco Systems, Inc.
Simm with parity detected, ignoring onboard DRAM
C1600 platform with 16384 Kbytes of main memory
rommon 1 >
-
在ROMmon提示符下,发出 xmodem
命令。但是,在您发出 xmodem
命令,确保在PC上安装了新的Cisco IOS软件映像。
在本例中,所有闪存在下载之前使用f选项擦除(仅在Cisco 1600系列上)。使用c选项执行CRC-16校验和并指定 — s115200,将下载速度设置为115200 bps(仅在Cisco 1600系列上)
rommon 12 >xmodem -cfs115200 c1600-sy-mz.121-16.bin
Do not start the sending program yet...
注:如果控制台端口连接到调制解调器,则控制台端口和调制解调器必须以相同的波特率运行。
Use console speed 115200 bps for download [confirm]
File size Checksum File name
1957444 bytes (0x1dde44) 0xe345 c1600-y-mz.113-9.T
Erasing flash at 0x83f0000 no partition 2 on device: PCMCIA slot 1
Ready to receive file c1600-sy-mz.121-16.bin ...
Download will
be performed at 115200. make sure your terminal emulator is set to this speed before sending file.
Warning: All existing files in the partition displayed and files in any
other partitions on this device will
be lost! Continue ? press 'y' for yes, 'n' for no:y
-
配置终端仿真器程序达到数据速率 115200 bps,以匹配上面指定的 xmodem 速度。为此,请关闭之前的9600 bps终端会话,并在115200(8-N-1)上打开一个新会话。这里比较特殊的一点是 Cisco 1603 只支持最大波特率 9600 bps。因此,当连接速度为115200 bps时,您将看不到路由器提示符。这是必须记住的要点。在以 115200 bps 速率连接到路由器后,从 HyperTerminal 菜单栏选择 Transfer 和 Send File。
从超级终端菜单栏选择传输和发送文件
-
指定映像文件名和位置并且输入 xmodem 作为协议。
输入xmodem作为协议
-
单击 Send 开始传输。
开始转接
当传输完成时,将收到如下消息:
Download Complete!
Returning console speed to 9600
Please reset your terminal emulator to this speed...
6.根据以上消息,您需要退出115200 bps超级终端会话,并以9600 bps的速度重新启动新的超级终端会话。连接后,将会显示路由器ROMmon提示符。使用CLI验证 dir flash
:
rommon 9 >dir flash:
File size Checksum File name
3686656 bytes (0x384100) 0x1a5e c1600-sy-mz.121-16.bin
7.将配置寄存器改回0x2102,重置路由器或重新启动路由器,以便加载新的Cisco IOS软件映像。
rommon 10 >confreg 0x2102
You must reset or power cycle for new config to take effect.
rommon 11 >reset
System Bootstrap, Version 12.0(19981130:173850) [rameshs-120t_lava 114],
DEVELOPMENT SOFTWARE Copyright (c) 1994-1998 by cisco Systems, Inc.
Simm with parity detected, ignoring onboard DRAM
C1600 platform with 16384 Kbytes of main memory
program load complete, entry point: 0x4020060, size: 0x15568c
%SYS-6-BOOT_MESSAGES: Messages above this line are from the boot loader.
program load complete, entry point: 0x2005000, size: 0x3840e0
Self decompressing the image : ########################################
################
........
Cisco Internetwork Operating System Software
IOS (tm) 1600 Software (C1600-SY-M), Version 12.1(16),
RELEASE SOFTWARE (fc1)
Copyright (c) 1986-2002 by cisco Systems, Inc.
Compiled Mon 08-Jul-02 17:09 by kellythw
Image text-base: 0x02005000, data-base: 0x0275BD48
.......
Cisco IOS软件映像到Cisco 2620路由器的Xmodem下载过程
使用此 xmodem
将Cisco IOS软件映像下载到Cisco 2620路由器的过程。
-
启动终端仿真器程序。
在此示例中,为 Windows 超级终端配置了参数 8-N-1 和 9600 bps。将您的PC串行端口连接到路由器的控制台端口。连接后,进入 ROMmon 提示符 (rommon 1>)。通常,如果路由器的Cisco IOS软件映像和bootflash映像都损坏,则路由器仅在ROMmon模式下启动。如果前者不正确,您需要进入ROMmon提示符,则需要更改配置寄存器(通常为0x2102,如所示) show version
)到0x0,如下所示:
2620#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
2620(config)#config-register 0x0
2620(config)#^Z
2620#
5d03h: %SYS-5-CONFIG_I: Configured from console by console
2620#
2620#reload
System configuration has been modified. Save? [yes/no]: n
Proceed with reload? [confirm]
5d03h: %SYS-5-RELOAD: Reload requested
System Bootstrap, Version 11.3(2)XA4, RELEASE SOFTWARE (fc1)
Copyright (c) 1999 by cisco Systems, Inc.
TAC:Home:SW:IOS:Specials for info
C2600 platform with 65536 Kbytes of main memory
rommon 1 >
-
进入 ROMmon 提示符后,将控制台波特率从 9600 bps 更改为 115200 bps,以加快下载速度。请使用 confreg
命令并完成屏幕上显示的说明。
rommon 1 >confreg
Configuration Summary
enabled are:
break/abort has effect
console baud: 9600
boot: the ROM Monitor
do you wish to change the configuration? y/n [n]: y
enable "diagnostic mode"? y/n [n]:
enable "use net in IP bcast address"? y/n [n]:
enable "load rom after netboot fails"? y/n [n]:
enable "use all zero broadcast"? y/n [n]:
disable "break/abort has effect"? y/n [n]:
enable "ignore system config info"? y/n [n]:
change console baud rate? y/n [n]: y
enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400
4 = 19200, 5 = 38400, 6 = 57600, 7 = 115200 [0]: 7
change the boot characteristics? y/n [n]:
Configuration Summary
enabled are:
break/abort has effect
console baud: 115200
boot: the ROM Monitor
do you wish to change the configuration? y/n [n]:
You must reset or power cycle for new config to take effect.
rommon 2 >
-
一旦路由器在 ROMmon 中启动后,超级终端会话便会开始显示难以辨认的字符。您需要退出当前的终端会话,然后启动一个数据速率为 115200 bps 的新会话,以此匹配步骤 2 中的控制台速率。
-
您现在准备发出 xmodem
命令。但是,在您发出 xmodem
命令,确保在PC上安装了新的Cisco IOS软件映像。
rommon 1 >
rommon 1 >xmodem -?
xmodem: illegal option -- ?
usage: xmodem [-cyrx] <destination filename>
-c CRC-16
-y ymodem-batch protocol
-r copy image to dram for launch
-x do not launch on download completion
rommon 2 >
rommon 2 >
rommon 2 > xmodem -c c2600-is-mz.122-10a.bin
!--- Note that [-s datarate] is not available here since you are set for 115200 bps.
Do not start the sending program yet...
File size Checksum File name
9939820 bytes (0x97ab6c) 0x4991 c2600-is-mz.122-7a.bin
Warning: All existing data in bootflash will be lost!
Invoke this application only for disaster recovery. Do you wish to continue?
y/n [n]: y Ready to receive file c2600-is-mz.122-10a.bin ...
-
从HyperTerminal菜单栏中,选择Transfer > Send并指定映像名称/位置和 xmodem
协议(如步骤3和4所示)并开始传输。
Send" />选择Transfer > Send
-
一旦传输完成,便会出现以下消息:
Erasing flash at 0x60fc0000
program flash location 0x60990000
Download Complete!
请注意,与 Cisco C1600 相比,闪存是如何以自动方式完全擦除的。这就是此处需要f选项的原因。最后,请确保将控制台速度重置回9600,并在将配置寄存器改回0x2102时将引导顺序改回默认值:
rommon 12 >confreg 0x2102
You must reset or power cycle for new config to take effect
rommon 2 >reset
System Bootstrap, Version 11.3(2)XA4, RELEASE SOFTWARE (fc1)
Copyright (c) 1999 by cisco Systems, Inc.
TAC:Home:SW:IOS:Specials for info
C2600 platform with 65536 Kbytes of main memory
program load complete, entry point: 0x80008000, size: 0x995ec8
Self decompressing the image : ################################
##################################################################
##################################################################
######################## [OK]
............................
Cisco Internetwork Operating System Software
IOS (tm) C2600 Software (C2600-IS-M), Version 12.2(10a), RELEASE SOFTWARE (fc1)
Copyright (c) 1986-2002 by cisco Systems, Inc.
Compiled Tue 21-May-02 14:16 by pwade
Image text-base: 0x80008088, data-base: 0x810ABB08
cisco 2620 (MPC860) processor (revision 0x100) with 61440K/4096K bytes of memory.
Processor board ID JAB03110MUB (3691217154)
M860 processor: part number 0, mask 49
Bridging software.
X.25 software, Version 3.0.0.
1 FastEthernet/IEEE 802.3 interface(s)
2 Voice FXS interface(s)
32K bytes of non-volatile configuration memory.
16384K bytes of processor board System flash (Read/Write)
Press RETURN to get started!
.........................
Cisco IOS软件映像到Cisco 3600路由器的Xmodem下载过程
使用此 xmodem
将Cisco IOS软件映像下载到Cisco 3600系列路由器的过程。
标准过程使用默认控制台速率 9600 比特/秒。Xmodem是一种慢速传输协议,传输一个大到Cisco IOS软件映像的文件可能需要很长时间。提高 3600 路由器上的控制台速度,有助于缩短用于执行 xmodem 文件传输的时间。
- 当处于ROMMON模式时,使用ROMMON完成此过程
confreg utility
.
rommon 2 >confreg
do you wish to change the configuration? y/n [n]: y
enable "diagnostic mode"? y/n [n]: n
enable "use net in IP bcast address"? y/n [n]: n
disable "load rom after netboot fails"? y/n [n]: n
enable "use all zero broadcast"? y/n [n]: n
enable "break/abort has effect"? y/n [n]: n
enable "ignore system config info"? y/n [n]: n
change console baud rate? y/n [n]: y
enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400
4 = 19200, 5 = 38400, 6 = 57600, 7 = 115200 [7]: 7
change the boot characteristics? y/n [n]: y
enter to boot:
0 = ROM Monitor
1 = the boot helper image
2-15 = boot system
[0]: 0
Configuration Summary
enabled are:
load rom after netboot fails
console baud: 115200
boot: the ROM Monitor
do you wish to change the configuration? y/n [n]: n
You must reset or power cycle for new config to take effect
rommom 2 >reset
2.使用以下设置打开新的超级终端:
Bits per second - 115200
Data bits - 8
Parity - None
Stop bits - 1
Flow control - Hardware
3.设置超级终端后,您将收到rommon提示。输入 xmodem
命令。在输入 xmodem
命令,您的终端或本地硬盘驱动器中必须有一个软件映像。
rommon 2 >xmodem -c c3640-i-mz.121-7.bin
Do not start the sending program yet...
File size Checksum File name
4936800 bytes (0x4b5460) 0x2dd7 c3640-i-mz.121-7.bin (bad checksum: 0x13eb)
WARNING: All existing data in flash will be lost!
Invoke this application only for disaster recovery.
Do you wish to continue? y/n [n]: y
Ready to receive file c3640-i-mz.121-7.bin ...
4.出现此消息后,您必须使用下载文件 xmodem
和此过程:
- 转到超级终端并单击 Transfer 菜单。
- 选择 Send File。
- 在出现的对话框中,请单击 Browse 以在您的本地硬盘驱动器中查找该文件名。
- 在filename字段下方,选择Protocol下拉框
Xmodem
.
- 单击 Send 以开始文件传输。
5.传输完成后,路由器重新加载自己。当重新加载完成时,按 return 键转入提示符处,以重置配置寄存器和控制台线路速度。
Router>enable
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#config-register 0x2102
Router(config)#line con 0
Router(config-line)#speed 9600
6.更改控制台速度后,可能会失去连接。转至终端程序,将波特率更改为 9600,并重新连接到路由器控制台。
Router(config-line)#ctrl z
Router#write mem
Router#reload
相关信息