本文转自:http://sukhoi.blog.51cto.com/229761/1416755

I recently upgraded a Cisco Catalyst 3750X stack to a newer version of IOS. Since the production system I was planning to upgrade had some critical systems on it, I tested the process on a stack in the lab first.

At the outset I figured “no problem, this will take a few minutes to reboot and we’ll be back up and running.” Little did I know I was in for a long wait… Unknow to me the version of code I was upgrading to included a Microcode update which adds a considerable amount of time to the process… emphasis on considerable.

 

The stack was running c3750e-universalk9-mz.122-55.SE5 and I was upgrading it to c3750e-universalk9-mz.152-1.E2, which at the time of the upgrade was the recommended 15 version,the cisco

suggested version.

After copying the new version to the stack and setting the boot variable, I rebooted the switch stack.

 

Switch(config)#boot system flash:/c3750e-universalk9-mz.152-1.E2.bin

Switch(config)#exit
Switch#reload

 

The switch automatically reloaded itself after this and that’s when the really long wait began. Here’s the output from the console during the upgrade portion of the reload.

Looked like a normal reload until the console displayed this:

 

extracting front_end/front_end_ucode_info (309 bytes)
Software version is different so extracting
the whole bundle

front_end/ (directory)
extracting front_end/fe_type_4 (78520 bytes)
extracting front_end/fe_type_3 (78520 bytes)
extracting front_end/fe_type_2 (78520 bytes)
extracting front_end/fe_type_5_1 (307958 bytes)
extracting front_end/fe_type_5_2 (25150 bytes)
extracting front_end/fe_type_5_0 (594412 bytes)
extracting front_end/fe_type_5_3 (84734 bytes)
extracting front_end/front_end_ucode_info (309 bytes)
extracting ucode_info (77 bytes)

Front-end Microcode IMG MGR: Installed 4 image(s) in cache:

Front-end Microcode IMG MGR: found microcode images for 4 devices.
Image for front-end 0: flash:/front_end_ucode_cache/ucode.3
Image for front-end 0: flash:/front_end_ucode_cache/ucode.4
Image for front-end 0: flash:/front_end_ucode_cache/ucode.5
Image for front-end 0: flash:/front_end_ucode_cache/ucode.6

Front-end Microcode IMG MGR: Preparing to program device microcode…
Front-end Microcode IMG MGR: Preparing to program device[0]…594412 bytes.
Front-end Microcode IMG MGR: Programming device 0…rrrrrrwsssssssssssssssssss

pssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssssssssssss

sspssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssssssssss

sssspssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssssssss

sssssspssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssssss

sssssssspssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssss

 

waiting for 10 more minutes with the same “sppppppppppppspppp”output , I think maybe update failed already as this against privious experience. (factually this time I really missing and wrong. just waiting untill update finished is the only right thing.)

 

so I press “mode” button into switch ROM mode to check and expect to try to find something abnormal.

 

switch: flash_init

 

switch: dir flash:

 

I saw under flash there was a new folder “front_end_ucode_cache”, I removed all files in this folder without futher thinking as I wrongly think these files caused updating fail.

 

switch: delete flash:/front_end_ucode_cache/ucode.3

switch: delete flash:/front_end_ucode_cache/ucode.4

switch: delete flash:/front_end_ucode_cache/ucode.5

switch: delete flash:/front_end_ucode_cache/ucode.6

 

but I kept the empty folder “front_end_ucode_cache” remain, then try to boot from the new image:

 

switch: boot flash:c3750e-universalk9-mz.152-1.E2.bin

 

but due to I removed files required, a whole night later, update failed finally, I start to regret my removing action.

 

“maybe I should also remove the empty folder”,the second day morning, I think.

so I quickly removed the empty folder “front_end_ucode_cache” (this really a right action proved at last), and boot image again.
switch: rmdir flash:/front_end_ucode_cache

 

switch: boot flash:c3750e-universalk9-mz.152-1.E2.bin

 

the reloading code back, likewise before:

Front-end Microcode IMG MGR: Preparing to program device microcode…
Front-end Microcode IMG MGR: Preparing to program device[0]…594412 bytes.
Front-end Microcode IMG MGR: Programming device 0…rrrrrrwsssssssssssssssssss

pssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssssssssssss

sspssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssssssssss

sssspssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssssssss

sssssspssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssssss

sssssssspssssssssssssssssssspssssssssssssssssssspssssssssssssssssssspsssssssss

 

but this time I will never do anything and wait till the update succeed. cost about 28 minutes, so long a time, mentioned on cisco 3750x upgrade documents like this”the upgrade will take up to 20 minutes” which against all previous experience.