# 19. Фильтр: обновление прошивки [← Оглавление](../README.md) · [← Раздел 18: Фильтр: мониторинг и диагностика](18.md) --- Обновление программного обеспечения фильтра выполняется через CLI из конфигурационного режима. Система хранения прошивок построена на принципе **двух равнозначных разделов**, что позволяет безопасно обновляться и при необходимости откатываться на предыдущую версию. ## 19.1. Два раздела: prim1 и prim2 (равнозначные) + FB (заводская) На SSD-накопителе фильтра расположены **три раздела** для программного обеспечения: | Раздел | Описание | | --------- | ---------------------------------------------------------------- | | **FB** | Заводская прошивка — минимальный образ, предоставляющий только доступ к management-интерфейсу и возможность загрузить нормальную прошивку | | **prim1** | Первый рабочий раздел для полноценной прошивки | | **prim2** | Второй рабочий раздел для полноценной прошивки | Разделы **prim1** и **prim2** — **абсолютно равнозначные**. Нет «основного» и «второстепенного» — оба раздела одинаковы. На каждом может быть загружен свой образ ПО, и между ними можно свободно переключаться (с перезагрузкой). ## 19.2. `firmware status` — текущее состояние (cur / boot) Команда `firmware status` (из конфигурационного режима) выводит информацию о разделах прошивки: | Поле | Описание | | --------- | ----------------------------------------------------------- | | **cur** | Активная версия — та, с которой устройство работает сейчас | | **boot** | Версия, которая будет загружена при следующей перезагрузке | Пример вывода: активная версия — `4031` (cur), после перезагрузки загрузится `4038` (boot). Это означает, что новая прошивка была установлена, но устройство ещё не перезагружено. В нормальном рабочем состоянии значения **cur** и **boot** указывают на один и тот же раздел. После установки новой прошивки **boot** автоматически переключается на раздел с новой версией. ## 19.3. `firmware download` — скачивание, `firmware install` — установка Обновление прошивки выполняется в **два этапа**: ### Этап 1: Скачивание ```text firmware download ``` Команда скачивает образ прошивки с указанного URL на устройство. ### Этап 2: Установка ```text firmware install ``` Команда устанавливает скачанный образ на **неактивный раздел** (тот, который сейчас не используется). После установки значение **boot** автоматически переключается на раздел с новой прошивкой. **Важные ограничения:** - Установка выполняется быстро (~5 секунд), но в этот момент фильтр может **не реагировать** на команды в CLI; - После установки, пока устройство не перезагружено, **повторная установка невозможна** — для установки новой прошивки значения cur и boot должны совпадать; - Для применения новой прошивки необходима **перезагрузка** устройства (из конфигурационного режима, с подтверждением). ### Полная последовательность обновления ```text # 1. Проверить текущее состояние firmware status # 2. Скачать новую прошивку firmware download # 3. Установить на неактивный раздел firmware install # 4. Проверить, что boot указывает на новый раздел firmware status # 5. Перезагрузить устройство reload ``` ## 19.4. `firmware rollback` / `firmware reset` Для управления разделами загрузки доступны две команды: | Команда | Действие | | --------------------- | ----------------------------------------------------------- | | **firmware rollback** | Переключает **boot** на неактивный раздел (откат на другую версию) | | **firmware reset** | Возвращает **boot** обратно на текущий активный раздел (отмена rollback) | ### firmware rollback Команда `firmware rollback` меняет значение boot с активного раздела на неактивный. Это позволяет: - **Откатиться** на предыдущую версию прошивки (если на другом разделе сохранена рабочая версия); - **Отменить** запланированное обновление (если после `firmware install` вы решили не обновляться). ### firmware reset Команда `firmware reset` выполняет обратное действие — возвращает boot на текущий активный раздел. Используется, если rollback был выполнен по ошибке. > **Примечание:** обе команды изменяют только указатель boot — фактического переключения не происходит до перезагрузки. ## 19.5. Централизованное обновление через ЦСУ В промышленной эксплуатации обновление прошивок выполняется **централизованно** через центральную систему управления (ЦСУ): - Оператор инициирует обновление через интерфейс ЦСУ; - ЦСУ автоматически скачивает и устанавливает прошивку на фильтры; - По завершении формируется **отчёт** об успешности или неуспешности обновления; - Перезагрузка фильтров также инициируется через ЦСУ. Ручное обновление через CLI остаётся важным навыком для: - Диагностики проблем с обновлением; - Обновления единичных устройств; - Работы на площадках, где ЦСУ временно недоступна. При массовом обновлении множества фильтров через ЦСУ рекомендуется **последовательная** перезагрузка с проверкой работоспособности каждого устройства после обновления. --- [← Оглавление](../README.md) · [← Раздел 18: Фильтр: мониторинг и диагностика](18.md) · [Раздел 20: Балансировщик: аппаратная платформа →](20.md)