cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2105
Views
0
Helpful
7
Replies

Reinstalling new firmware after testing rolling back on 9000 series

HYDRA22
Level 1
Level 1

Hi there cisco community,

I have been testing the firmware update process on a new 9000 series switch (9500 first 9300 next) that has no users so I can fully understand the update process and how to roll back before I implement the firmware update for the rest of my enterprise. I am having trouble finding how to go back to the new version once I've tested the rollback process.

I love the rollback option to use the id and before my rollback I see two IDs, one is the new one is the old version. I was hoping I could go back to the new using the id since my packages are already activated. My flash: has both the new and old packages. I was wanting to stay in install mode but I'm nervous if I redo my command #install add file <filename.bin> activate commit, I will have my .bin extracted again (2x new packages, 1x old packages) filling up my flash. I tried #install activate file flash:filename but have no profiles and I no longer see the id option, when I put in the .bin file I got an error "...bin is not a valid file or cannot be handled by the install CLI. 

My question is, does anyone know how I can go back to the new code and stay in install mode using the install commands to go back to new code after a rollback? I just rolled back to test, my firmware upgrade was successful the first time. My test was successful now I want to go back to the new code. I have not ran the #install remove inactive yet. thanks!

1 Accepted Solution

Accepted Solutions

HYDRA22
Level 1
Level 1

For all of you who are interested in testing before implementing, I didn't want to wait and this is a 9500 switch I can test with, so in the rollback version, I simply reran my #install add file bootflash:<filename.bin> activate commit and the switch did not end up reextracting a second set of pkgs. I did not have double so it either over wrote or understood those pkgs were already in bootflash. Lesson learned, do NOT do install remove inactive until you've tested your new firmware and your ready to accept this is a valid version for your enterprise. 

So I successfully updated with #install add file bootlash:<filename.bin> activate commit

I rolled back with #install rollback to id 1 (which was the old version)

then I went back to the new version with the same #install add file bootlash:<filename.bin> activate commit

Here is the docs I went through. Caution with step one unless you have your .bin hidden somewhere! https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst9300/software/release/17-9/release_notes/ol-17-9-9300/upgrading_the_switch_software.html

View solution in original post

7 Replies 7

HYDRA22
Level 1
Level 1

For all of you who are interested in testing before implementing, I didn't want to wait and this is a 9500 switch I can test with, so in the rollback version, I simply reran my #install add file bootflash:<filename.bin> activate commit and the switch did not end up reextracting a second set of pkgs. I did not have double so it either over wrote or understood those pkgs were already in bootflash. Lesson learned, do NOT do install remove inactive until you've tested your new firmware and your ready to accept this is a valid version for your enterprise. 

So I successfully updated with #install add file bootlash:<filename.bin> activate commit

I rolled back with #install rollback to id 1 (which was the old version)

then I went back to the new version with the same #install add file bootlash:<filename.bin> activate commit

Here is the docs I went through. Caution with step one unless you have your .bin hidden somewhere! https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst9300/software/release/17-9/release_notes/ol-17-9-9300/upgrading_the_switch_software.html

Leo Laohoo
Hall of Fame
Hall of Fame

Pffft ... I got an easier method.  

Rename the "packages.conf" file back. 

back to the .bin name? The first time I tried pointing the boot variable to the packages.conf-00 (which contained the old version), had already done the #install remove inactive when I first did the upgrade. So when I changed the boot variable to the old version and rebooted to try to roll back, I got into rommon with no .bin in flash! Now I know how to get out of it after not knowing how during this first test! So I'm hesitant messing with the boot variable now. 

Nope.  Different. 

Every Install Mode upgrade will create two "conf" file.  The "packages.conf" file will point to the new IOS.  The Install Mode script will rename the "old packages.conf" file to something like "packages.conf.00-".  The new firmware version will be named "packages.conf". 

For me, roll back is easy.  Rename the new firmware version "packages.conf" to something else and rename the old/original firmware to "packages.conf".  If the boot variable statement is pointing to "packages.conf" then reboot. 

Additionally, check the contents of the "packages.conf" file if it is pointing to the correct version or not: 

  • For 3650/3850, the command is:  more flash-X:packages.conf | begin for NOVA
  • For Catalyst 9200/9300, the command is:  more flash-X:packages.conf | begin rp_boot
  • For Routers & 9800, the command is:  more bootflash:packages.conf | begin rp_boot

For "consistency" purposes, the use of "flash" or "bootflash" is based entirely on the platform and highly dependent on the firmware version.  For instance, "flash" might work with one firmware version but "bootflash" will only work in certain versions.  


@HYDRA22 wrote:
So I'm hesitant messing with the boot variable now. 

Catalyst 9200 have a very tiny flash space.  It has enough flash space for two firmware packages and nothing more.  

Catalyst 9300 (and above), because they are more expensive, have enough flash space for three to four fiwmare packages.  

As long as the boot variable statement is pointing to "packages.conf", there is no need to keep edit it.  Just change the filename and the result is better.  

How do you rename it? I saw I cannot mv or move like in linux. I saw very limited commands. I didn't see a rename option either. If I get stuck in rommon is it possible to rename it there and rollback? When I move forward with my other switches, I figure if I get stuck at rommon is when I'll have to do the roll back. 

Post the complete output to the command "dir".