cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
50063
Views
5
Helpful
22
Replies

Boot system flash: does not appear on 2960 running config

gautamzone
Level 1
Level 1

Dear friends,

On the 2960, i have two .bin images and i am pointing to the latest one.

However, the boot system flash: command along with the new image does not appear in the running config but it appears in the

show boot command.

t3a.sidradc.dmz.01#dir flash:
Directory of flash:/

    2  -rwx        2131   Jan 3 2010 07:30:45 +03:00  private-config.text
    4  -rwx     8040418   Mar 1 1993 05:31:51 +03:00  c2960-lanbasek9-mz.122-50.SE3.bin
    5  -rwx         676   Jan 3 2010 07:28:50 +03:00  vlan.dat
    6  drwx         128   Mar 1 1993 03:02:32 +03:00  c2960-lanbasek9-mz.122-44.SE6
  546  -rwx        4120   Jan 3 2010 07:30:45 +03:00  multiple-fs
  548  -rwx        9001   Jan 3 2010 07:30:45 +03:00  config.text

32514048 bytes total (21123072 bytes free)

t3a.sidradc.dmz.01(config)#boot system flash:c2960-lanbasek9-mz.122-50.SE3.bin
t3a.sidradc.dmz.01(config)#exit
t3a.sidradc.dmz.01#wr
Building configuration...
[OK]
t3a.sidradc.dmz.01#sh boot
BOOT path-list      : flash:c2960-lanbasek9-mz.122-50.SE3.bin
Config file         : flash:/config.text
Private Config file : flash:/private-config.text
Enable Break        : no
Manual Boot         : no
HELPER path-list    :
Auto upgrade        : yes
Auto upgrade path   :
NVRAM/Config file
      buffer size:   65536
Timeout for Config
          Download:    0 seconds
Config Download
       via DHCP:       disabled (next boot: disabled)

t3a.sidradc.dmz.01#sh run | inc boot
boot-start-marker
boot-end-marker

Are you aware of any reasons for this?

Thanks a lot

Gautam

1 Accepted Solution

Accepted Solutions

glen.grant
VIP Alumni
VIP Alumni

   Thats normal behavior on smaller non chassis based switches like 2950,2960 ,3560 etc...   Don't know what the reasoning was behind that .  On some of ealier models like the 2950 it would only hold 1 image so it didn't matter.

View solution in original post

22 Replies 22

glen.grant
VIP Alumni
VIP Alumni

   Thats normal behavior on smaller non chassis based switches like 2950,2960 ,3560 etc...   Don't know what the reasoning was behind that .  On some of ealier models like the 2950 it would only hold 1 image so it didn't matter.

Thanks a lot for the clarification Glen. I guess that should be the same with the 3750 too.

However, the 4948 switch shows the boot system flash: command in the running config too. Probably its because it uses a 4500 image.

Thanks a lot again

Gautam

as suggested earlier its not been seen in small switches incase you would like to know the boot variable and things like that try "show boot "

this will tell you the boot variable, boot loader and configration registor.

Pretty usefull command

Hope that helps.


Varun

So, viewing the boot variables is fine, but how can one control the boot variable from the CLI? We are needing to download an image and configure the switch to boot the new image via a telnet script.

So, viewing the boot variables is fine, but how can one control the boot variable from the CLI? 

Depends on the hardware.  4K and 6K boot variable statement will show up in the config but 2K and 3K doesn't.  

 

 

Hi, Leo, and thanks for the response!

Ok, but that doesn't answer my question, though? I need to know how to control the boot variable from the CLI, as I need to write a telnet script to upgrade the standalone switch and configure it to boot the new image. The commands to download the new image are not the problem, configuring the boot variable is the problem. I've done this many times, but never on this platform

 

Acceptable answers would be either "It can't be done", or "you need to issue the following commands":

switch(config)#config command a

switch(config)#config command b

switch(config)#config command c

switch(config)#end

switch#wr

 

 

 

 

 

Hold on ... exactly HOW is the IOS being upgraded.  


There are exactly three different "methods" to upgrade an IOS on a Cat 2K and 3K (except the newer 3650 & 3850):  

 

1.  Copy the BIN file; 

2.  The "archive tar /x" script using the TAR file; and 

3.  The "archive download-sw" using the TAR file.

 

The best method is to use the third method because this method will automatically set the boot variable string.  

I'm using the "copy the BIN file" (even though there seems to be another minor bug with this method, which we can work around in the script).

After doing some research on the TAR file methods, it would seem that "archive download-sw" would be the second best method, except for a couple of reasons, one being the excess resources used by the tar file for web access which is not needed in our setup, and the other being the issue where IOS can return the prompt before it's done unpacking the files, which in our case could lead to issues where the script reboots the switch before the process is complete, which could in turn brick the switch and lead to RMA issues. The "archive download-sw" script looks to be a big improvement for interactive upgrades where the TAR file is required, but doesn't bring any advantages to our deployment, and has the above disadvantages.

 

 

and the other being the issue where IOS can return the prompt before it's done unpacking the files

Ok, now what EXACTLY is the appliance and IOS version?  The only time I know of this bug is the Metro Ethernet (ME) switches and when the current appliance is upgraded FROM an IOS version 15.2(1)S.  

 

But there is a "workaround" which Cisco doesn't want to publish (don't ask me why not):  Use "archive tar /x" and, optionally, delete the old IOS sub-directory.

 

Personally, I wouldn't recommend anyone using the "copy the BIN file" method unless you know what you are doing or you've put extra measures in place.  The "archive /x tar" and/or "archive download-sw" was developed so that it could be automated and the operator can see the result at the end.  The "copy the BIN file" method doesn't give anyone a result whether or not the file was copied or not or was the file copied completely.  

Regularly, I would upgrade our switches (2960/2960S, ME-3800X, 3560E/3560CG, 3750X) fleet using the "archive download-sw" method and I don't use scripts.  I just copy-and-paste the command.  So far, since 2009, I've "lost" only 6 switches when I upgraded the switch to upgrade the wrong file (another IOS bug on it's own) and I had to physically show up and upgrade using ROMmon.  Every time I would upgrade, about 900 switches (some in a stack), it would take me about 4 days.  Even though I work with three guys who's very good at almost any scripting but we've come to a unanimous conclusion NOT to use scripting.  

 

Moving on, if "copy the BIN file" is still a preferred choice, I would like to know how do you go about verifying the file was copied completely?  Whenever I resort to the "copy the BIN file", I ensure the file copied is complete by verifying the MD5 hash value against the MD5 hash value found in the Cisco website.  Trust me, adding this additional "layer" of security saved me doing ROMmon upgrade so many times.  

The script will be verifying the image after copying to flash via the "verify /md5 <image>" command.

I started here at Cisco over 14 years ago in GSBU, and continue to do lab testbed and network support for my current BU, so I do have plenty of experience with switch/router configuration and maintenance.

 

What appliances are you trying to upgrade the IOS?

12 port 2960 switch.

12 port 2960 switch.

Must be a brand new model.  I've never seen a 12-port 2960/2960CG before.  

 

Be careful with IOS 15.X as they are very, very unstable.  If you have to use 15.X then try 15.0(2)SE4.  

Exact model from show version output:

WS-C2960C-12PC-L

 

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Innovations in Cisco Full Stack Observability - A new webinar from Cisco