Поиск по сайту

    Мои услуги на Kwork

Обновление прошивки (IOS) на Cisco Catalyst Series

Пример обновления на 2940

Сегодня я покажу как обновить прошивку на примере WS-C2940-8TF-S.
Данный коммутатор сейчас находится в рабочем состоянии и находится не рядом. Поэтому прошивать его буду удаленно, через TFTP.

Данная инструкция подойдет для процедуры обновления прошивки (IOS) на серии управляемых коммутаторов Cisco Catalyst, таких как 2940, 2950, 2955, 2960, Series 30XX,  Series 3500, Series 3550,  Series 3750.  И это только те, на которых мне приходилось обновлять прошивку. Думаю, это не полный список.

Для хранения образа прошивки (IOS) может использоваться дисковая файловая система или flash. Поддерживаемые маршрутизаторами Cisco хранилища, могут обозначаться по разному: flash:, slot0:, slot1:, disk0: и disk1:. Чтобы узнать какие хранилища доступны, и размер свободного места – нужна команда show file systems:

Switch#show file systems
File Systems:

     Size(b)     Free(b)      Type  Flags  Prefixes
*    7612416     2139136     flash     rw   flash:
           -           -    opaque     ro   bs:
           -           -    opaque     rw   vb:
       32768       25810     nvram     rw   nvram:
           -           -    opaque     rw   null:
           -           -    opaque     rw   system:
           -           -   network     rw   tftp:
           -           -    opaque     ro   xmodem:
           -           -    opaque     ro   ymodem:
           -           -   network     rw   rcp:
           -           -   network     rw   ftp:
           -           -    opaque     ro   cns:

В моем случае это flash:

Теперь проверим, какая версия прошивки сейчас у меня:

DISNETERN-NET_84.15#show version
...
System image file is "flash:/c2940-i6k2l2q4-mz.121-22.EA12/c2940-i6k2l2q4-mz.121-22.EA12.bin"
...

Или посмотреть непосредственно в файловой системе:

DISNETERN-NET_84.15#dir flash:
Directory of flash:/

    7  drwx         192  Mar 04 2009 13:48:17 +00:00  c2940-i6k2l2q4-mz.121-22.EA12
    2  -rwx        5839  Mar 01 1993 00:04:14 +00:00  config.text
    3  -rwx          44  Mar 01 1993 00:04:14 +00:00  private-config.text
    4  -rwx         616  Mar 01 1993 00:00:19 +00:00  vlan.dat
    5  -rwx        1048  Mar 01 1993 00:04:14 +00:00  multiple-fs

7612416 bytes total (2139136 bytes free)

Порывшись в просторах интернета, находим более свежую прошивку (IOS) для нашего коммутатора, в моем случае это c2940-i6k2l2q4-mz.121-22.EA14.bin

Стоить обратить внимание на то, что старая прошивка лежит в папке (на что указывают ключи drwx) и она имеет файлы для web управления. В моем же случае есть только 1 файл прошивки, т.к. web-интерфейс мне не нужен.
Если образ хранится в виде каталога, то для удаления воспользуемся следующей командой:

DISNETERN-NET_84.15#delete /force /recursive flash:c2940-i6k2l2q4-mz.121-22.EA12
Delete filename [c2940-i6k2l2q4-mz.121-22.EA12]? Press "ENTER"

Если же файл прошивки лежит отдельным файлом (-rwx), то тогда удаляем такой командой:

DISNETERN-NET_84.15#delete flash:c2940-i6k2l2q4-mz.121-22.EA12
Delete filename [c2940-i6k2l2q4-mz.121-22.EA12]? Press "ENTER"

Проверяем:

DISNETERN-NET_84.15#dir flash:
Directory of flash:/

    2  -rwx        5839  Mar 01 1993 00:04:14 +00:00  config.text
    3  -rwx          44  Mar 01 1993 00:04:14 +00:00  private-config.text
    4  -rwx         616  Mar 01 1993 00:00:19 +00:00  vlan.dat
    5  -rwx        1048  Mar 01 1993 00:04:14 +00:00  multiple-fs

7612416 bytes total (7602176 bytes free)

Видим, что папка с прошивкой пропала. Теперь главное, что бы не пропало питание на cisco, иначе она просто не загрузится. И тогда придется подключаться к нему непосредственно кабелем, что бы залить новую прошивку.

После того как нашли и скачали новую прошивку, зальем её на свой TFTP.

После этого, скопируем новую прошивку с TFTP на flash: нашей cisco. Указываем что копируем с TFTP на flash, потом указываем IP-адрес нашего сервера, указываем имя файла с прошивкой, который нужно скачать, и конечное имя файла прошивки (укажем такое же):

DISNETERN-NET_84.15#copy tftp: flash:
Address or name of remote host []? 10.20.30.46
Source filename []? c2940-i6k2l2q4-mz.121-22.EA14.bin
Destination filename [c2940-i6k2l2q4-mz.121-22.EA14.bin]?
Accessing tftp://10.3.5.246/c2940-i6k2l2q4-mz.121-22.EA14.bin...
Loading c2940-i6k2l2q4-mz.121-22.EA14.bin from 10.3.5.246 (via Vlan18): !!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 3758409 bytes]

3758409 bytes copied in 100.228 secs (37499 bytes/sec)

Пока новый файл будет заливаться на флешку, будут идти знаки “!“, если при передачи данных будут появляться ошибки, то вместо восклицательных знаков начнут появляться “о“. После успешной заливки прошивки появится надпись “ОК“. Проверим её наличие в файловой системе:

DISNETERN-NET_84.15#dir flash:
Directory of flash:/

    6  -rwx     3758409  Mar 01 1993 01:09:07 +00:00  c2940-i6k2l2q4-mz.121-22.EA14.bin
    2  -rwx        5839  Mar 01 1993 00:04:14 +00:00  config.text
    3  -rwx          44  Mar 01 1993 00:04:14 +00:00  private-config.text
    4  -rwx         616  Mar 01 1993 00:00:19 +00:00  vlan.dat
    5  -rwx        1048  Mar 01 1993 00:04:14 +00:00  multiple-fs

7612416 bytes total (3843584 bytes free)

Как видим, новый файл прошивки на месте. Теперь для надежности и проверки его целостности, проверим его контрольную сумму, которую можно взять на сайте производителя, где мы скачали прошивку:

DISNETERN-NET_84.15#verify /md5 flash:c2940-i6k2l2q4-mz.121-22.EA14.bin
.........................................................................
.........................................................................
.........................................................................Done!
verify /md5 (flash:c2940-i6k2l2q4-mz.121-22.EA14.bin) = 5f98e351fedc866e14e87cd98a683704

Контрольная сумма совпадает, значит загрузка выполнена корректно. Указываем коммутатору необходимость загрузки системы с нового образа, не забыв предварительно отключить загрузку предыдущего образа:

DISNETERN-NET_84.15(conf)#no boot system
DISNETERN-NET_84.15(conf)#boot system flash:/c2940-i6k2l2q4-mz.121-22.EA14.bin

Перепроверяем, что при следующей загрузке будет использоваться новая прошивка:

DISNETERN-NET_84.15#show boot
BOOT path-list:       flash:/c2940-i6k2l2q4-mz.121-22.EA14.bin
Config file:          flash:/config.text
Private Config file:  flash:/private-config.text
Enable Break:         no
Manual Boot:          no
HELPER path-list:
NVRAM/Config file
      buffer size:    32768
Timeout for Config
          Download:    0 seconds
Config Download
       via DHCP:       disabled (next boot: disabled)

Все. Теперь можно смело перезагружать нашу cisco и ждать когда она загрузится уже с новой прошивкой (IOS). Настройки при этом все сохранятся:

DISNETERN-NET_84.15#reload
Proceed with reload? [confirm] Press "ENTER"

После перезагрузки убеждаемся что прошивка уже новая. Хотя, если что-то пошло не так, старая все равно не загрузится, так мы её снесли напрочь.

DISNETERN-NET_84.15#show version
...
System image file is "flash:/c2940-i6k2l2q4-mz.121-22.EA14.bin"
...

Пользуемся, радуемся, и дальше занимаемся своими делами 🙂

Comments

So empty here ... leave a comment!

Добавить комментарий

Sidebar



Яндекс.Метрика Рейтинг@Mail.ru