> ## Documentation Index
> Fetch the complete documentation index at: https://docs.axottle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Обновление панели

> Как панель обнаруживает новые версии, как безопасно обновиться и что происходит при неудачном апгрейде.

Панель Axottle **сама себя не обновляет** — она только обнаруживает новые версии. Сам апгрейд выполняет отдельный скрипт установщика, который останавливает службу, подменяет бинарь и миграции, запускает службу заново и проверяет её здоровье. Если проверка не проходит — скрипт автоматически откатывает и бинарь, и миграции.

<Info>Для кого: администратор панели / SRE. Требуемые права: сессия администратора; для запуска апгрейда из консоли — root на хосте панели.</Info>

## Как панель узнаёт о новых версиях

* Нестампованные dev-сборки панель сравнивать отказывается — это защита от ложных «обновлений» на сборках без версии.

## Безопасный порядок обновления

<Steps>
  <Step title="Сделайте бэкап">
    Запустите бэкап панели и проверьте его (`verify`) — см. [Резервные копии панели](/ru/operations/backups). Апгрейд умеет откатываться сам, но проверенный бэкап — ваша страховка от любых сценариев.
  </Step>

  <Step title="Запустите апгрейд">
    Из консоли на хосте панели:

    Скрипт запускается в отдельной сессии и переживает остановку службы панели. Он скачивает архив релиза, **сверяет SHA-256** (при несовпадении — отказ), сохраняет текущий бинарь и каталог миграций как резервные копии, останавливает службу, подменяет файлы и запускает службу снова.
  </Step>

  <Step title="Проверьте здоровье">
    Скрипт проверяет запуск панели в течение заданного таймаута. Если служба не поднялась, он автоматически восстанавливает предыдущий бинарь и миграции вместе и перезапускает службу.
  </Step>
</Steps>

## Проверка

* Лог апгрейда лежит в каталоге данных панели; системные события — в `journalctl -u axottle.service`.

## Откат

* **Автоматический**: при неуспешном старте или неуспешной health-проверке скрипт сам возвращает предыдущий бинарь и миграции и перезапускает службу.
* **Ручной**: после успешного апгрейда скрипт печатает точные команды ручного отката (восстановление сохранённых бинаря и миграций). Помните: бинарь и миграции откатываются только вместе.
* Если и откат не помог — восстановите панель из проверенного бэкапа ([Резервные копии панели](/ru/operations/backups)).

## Обновления агентов

Агенты на нодах обновляются отдельным механизмом: панель раздаёт проверенные по SHA-256 бинари, а задание считается успешным только после того, как агент отчитается целевой версией. Подробно — в [Обновлении агентов](/ru/nodes/updates).

## Ограничения и риски

* Апгрейд из панели доступен только для стампованных релизных сборок.
* Флаг отключения проверки контрольной суммы у скрипта существует, но настоятельно не рекомендуется.
* Пока идёт апгрейд, панель может быть недоступна несколько десятков секунд — планируйте окно.

<AccordionGroup>
  <Accordion title="Статус апгрейда — failed, но панель работает" />

  <Accordion title="Панель не поднялась после апгрейда и отката">
    Смотрите `journalctl -u axottle.service` и лог апгрейда в каталоге данных панели. Крайняя мера — восстановление из бэкапа.
  </Accordion>
</AccordionGroup>

Связанные страницы: [Резервные копии панели](/ru/operations/backups), [Обновление агентов](/ru/nodes/updates), [Регулярное обслуживание](/ru/operations/maintenance).

<Note>Проверено для версии Axottle текущей ветки. Дата проверки: 2026-07-11.</Note>
