Connecting the world…

flash

Flash clean-up

Lately I upgraded a Aruba Networks wireless controller or at least I tried…… The upload of a new image to the controller has two steps. First the copy process from a TFTP server to the controller and second the actual writing of the new firmware image to flash (system partition). The second step kept showing me exclamation marks for minutes. I left it running for one hour and finally decided to break the upload by ending the SSH session and starting a new SSH session. I wasn’t able to connect to the controller via SSH and physical access via the console didn’t work either. So I decided to reboot the controller via the hard reset. The controller rebooted the old system partition, but I noticed that the new system partition was imported and digitally signed (check via: show image version).

I changed the boot parameter to boot the new software and rebooted the controller. I received the following error message on the console after the reboot.

Ancillary image stored on flash is not for this release
************************************************************
* WARNING: An additional image upgrade is required to complete the *
* installation of the AP and WebUI files. Please upgrade the boot *
* partition again and reload the controller. *
************************************************************

I decided to upload the firmware a second time to the same system partition, but this time the controller “told” me that there wasn’t enough free space on the flash drive so I couldn’t copy the file. I noticed that I only had 35M flash storage left (check via: show storage).

I deleted some files from flash (via command: delete filename <file name>), but I couldn’t free enough space to copy the image a second time. Finally I used the tar command to clean up enough storage. The tar command archives a directory and creates a tar file in the flash memory, which can be deleted. The syntax is:

tar clean {crash|flash|logs}| crash | flash | logs {tech-support|user}}

I ran the commands:

tar crash
tar flash
tar logs.

This creates three separate files in the flash memory. The files can be deleted via the commands:

tar clean flash
tar clean logs
tar clean crash

After running these commands I had113.3M flash storage available, which is more than enough to copy the new firmware a second time to the system partition.

In my situation the crash files were the reason I didn’t have enough flash memory. Because I did a hard reset the controller created a lot of crash files, which are stored in flash memory.

Cisco router: determine amount of memory/flash

Somebody asked me how he could determine the amount of DRAM and flash memory on a Cisco router. I always thought that everybody would know how to determine this information, but since this isn’t matter, I will tell you how you can determine the values.

You use the show version command to retrieve the requested information. Below you see an example output of the command on a Cisco 876 router.

Router#show version
Cisco IOS Software, C870 Software (C870-ADVIPSERVICESK9-M), Version 12.4(15)T6, RELEASE SOFTWARE (fc2)
If you require further assistance please contact us by sending email to
export@cisco.com.

Cisco 876 (MPC8272) processor (revision 0x200) with 118784K/12288K bytes of memory.
Processor board ID FCZ121160T5
MPC8272 CPU Rev: Part Number 0xC, Mask Number 0x10
4 FastEthernet interfaces
1 ISDN Basic Rate interface
1 ATM interface
128K bytes of non-volatile configuration memory.
24576K bytes of processor board System flash (Intel Strataflash)

Configuration register is 0x2102

The first highlighted line tells you how much Dynamic RAM (DRAM) and Packet memory are installed in your router. Some platforms use a fraction of their DRAM as Packet memory. The memory requirements take this into account, so you have to add both numbers to find the amount of DRAM available on your router (from a memory requirement point of view).

Some types of routers have separate DRAM and Packet memory, so you only need to look at the first number. Other routers use a fraction of DRAM as Packet memory, so you need to add both numbers to find out the real amount of DRAM.

The second highlighted line tells you how much flash memory is installed in your router. This amount can also be determined by using the command show flash:.

Router#show flash:
24576K bytes of processor board System flash (Intel Strataflash)

Directory of flash:/

2  -rwx    18934284   Mar 1 2002 01:33:35 +01:00  c870-advipservicesk9-mz.124-15.T6.bin

23482368 bytes total (4542464 bytes free)

Maybe I can imagine why somebody doesn’t know where to look, because a show version actually gives you a lot of information. So I hope this posts helps all of you who don’t know where to look.

XMODEM recovery speed

Configuring switches and routers is regular work for me. But if I would like to configure a switch or a router, I have to be able to boot the specific device…. Today I had to configure some new Cisco Catalyst 3650(E) en 3750 switches. In total I had 16 switches to configure, but three of them didn’t have any IOS image in flash and weren’t able to boot.

I have never seen this before. The switches aren’t refurbished, at least that is what the customer told me. At first I didn’t see any problem, because I wanted to upload an image from rommon through TFTP. After accessing rommon, I noticed that the Catalyst 3560 en 3750 don’t support TFTP upload in rommon. This leaves an XMODEM transfer as the only available option.

The image I wanted to upload was approximately 10 MB and upload with XMODEM at a baud rate of 9600 bps isn’t really fast. I had only one laptop to use, so it would take a whole day to upload the correct image into the three switches. Because I had only one COM port, I wasn’t able to configure anything.

I wanted to speed up my XMODEM transfer to buy some time and I found a way. At the switch prompt I set the baud rate to 115200:

switch: set BAUD 115200

Next I reconfigured my terminal (TeraTerm) to use the new baud rate of 115200. I started the XMODEM recovery procedure:

switch: copy xmodem: flash:c3560-ipbasek9-mz.122-50.SE.bin

I was satisfied while looking at the transfer rate. I had some time to invite myself to a cappuccino and  chat a little with the customer. The image was transferred in approximately 30 minutes. The last step in the recovery was setting back the baud rate to 9600, reconfigure my terminal and boot the image:

switch: set BAUD 9600

switch: boot flash:c3560-ipbasek9-mz.122-50.SE.bin

It only took two hours upload the correct IOS image to the three switches. Now I am set to start the configuration.