Использование 'configure replace' вместо 'copy start run' в Cisco IOS

Cisco
Этот пост своеобразное продолжение темы "IOS 15.1 и команда DO". Нашел в забугорном блоге комментарий по этому поводу и решил перевести, надеюсь другим коллегами пригодится:
Начинающие администраторы сетей Cisco, как правило, используют команду copy running-config startup-config (copy run start) или даже write memory (wr), чтобы сохранить конфигурацию Cisco в NVRAM (т.е. на флэшку). Админы думаю, что следствием копирования running конфигурации в startup конфигурацию является то, что строки startup, будут записаны в running конфигурацию. Однако, эта операция работает не совсем, как можно было ожидать. Copy run start создает новый файл конфигурации и перезаписывает полностью предыдущий файл конфигурации. Copy start run, однако, действует более как операции копирования и вставки: содержание startup конфигурации обрабатываются как если бы они были вставлены через интерфейс командной строки. Это означает, что в running конфигурации будут строки, которые в startup конфигурации не будут перезаписаны или удалены. Результат, как правило, неполная конфигурация.

В качестве примера, рассмотрим следующий отрывок из startup конфигурации:
interface FastEthernet0/0
 description Internet
 ip address 11.11.0.2 255.255.255.252
 load-interval 60
 duplex auto
 speed auto
 service-policy input InetAll
!
interface FastEthernet0/1
 no ip address
 shutdown
 duplex auto
 speed auto

После нескольких изменений для настройки другого аплинк порта, running конфигурация теперь выглядит следующим образом:
interface FastEthernet0/0
 no ip address
 shutdown
 duplex auto
 speed auto
!
interface FastEthernet0/1
 description New Internet
 ip address 12.12.42.2 255.255.255.252
 load-interval 60
 duplex auto
 speed auto
 service-policy input InetAll

Перед записью новой конфигурации в startup конфигурацию, администратор решает, что новый аплинк еще не готов и отменяет изменения, с помощью copy start run, думая, что будет восстановлена рабочая конфигурация с startup конфигурации. Вот результат:
interface FastEthernet0/0
 description Internet
 ip address 10.10.0.2 255.255.255.252
 load-interval 60
 shutdown
 duplex auto
 speed auto
 service-policy input InetAll
!
interface FastEthernet0/1
 description New Internet
 no ip address
 load-interval 60
 shutdown
 duplex auto
 speed auto
 service-policy input InetAll

Как видно, остались настройки интерфейса FastEthernet0/1 по сравнению с предыдущим состоянием конфигурации. Кроме того, shutdown не был удален из FastEthernet0/0.

Лучшей альтернативой является использование команды configure replace, которая является частью функции configuration archival. Эта операция может занять некоторое время в зависимости от размера вашего файла конфигурации.

Router# configure replace nvram:startup-config
This will apply all necessary additions and deletions
to replace the current running configuration with the
contents of the specified configuration file, which is
assumed to be a complete configuration, not a partial
configuration. Enter Y if you are sure you want to proceed. ? [no]: y
*Mar  1 00:22:03.095: Rollback:Acquired Configuration lock.
*Mar  1 00:22:06.619: %PARSER-6-EXPOSEDLOCKRELEASED: Exclusive configuration lock released from terminal '0' -Process= "Exec", ipl= 0, pid= 193
*Mar  1 00:22:08.627: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar  1 00:22:09.655: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
The rollback configlet from the last pass is listed below:
********

!List of Commands:
line vty 0 4
 no login
end
********

Rollback aborted after 5 passes
Router#
*Mar  1 00:22:14.995: %PARSER-3-CONFIGNOTLOCKED: Unlock requested by process '193'. Configuration not locked.
Router#


Мы можем проверить, что наша текущая конфигурация теперь идентична нашей startup конфигурации.

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.