Обновление OpenWrt начинается не с кнопки «прошить», а с проверки точного названия модели и аппаратной ревизии роутера на наклейке снизу корпуса — образ для TP-Link Archer C7 v4 не подойдёт к Archer C7 v5, и попытка залить «почти такой же» файл заканчивается окирпичиванием устройства. Прежде чем скачивать что-либо, сверьте модель, ревизию и региональную версию с таблицей совместимости на официальном сайте проекта OpenWrt.
В этой инструкции разберём два основных способа обновления: через веб-интерфейс LuCI и через командную строку по SSH с помощью утилиты sysupgrade. Также рассмотрим, как сохранить настройки, что делать при переходе между крупными версиями и как вернуться на предыдущую прошивку, если что-то пошло не так.
Подготовка: что проверить перед обновлением
Первый шаг — узнать текущую версию системы и точное имя целевой платформы. Это можно сделать в веб-интерфейсе на странице статуса либо командой в терминале:
cat /etc/openwrt_release
ubus call system board
Вывод покажет DISTRIB_RELEASE (текущую версию), DISTRIB_TARGET (целевую платформу, например ath79/generic или ramips/mt7621) и точное имя образа, которое нужно искать в каталоге загрузок. Имя платформы критично: внутри одного семейства роутеров встречаются разные чипы, и образы между ними несовместимы.
Далее оцените свободное место и объём оперативной памяти. Устройства с 8 МБ флеш-памяти и меньше могут физически не вмещать современные сборки OpenWrt — для таких моделей обновление до свежих релизов либо невозможно, либо требует урезанных образов. Проверить разделы можно командой df -h.
- 🔎 Сверьте модель и аппаратную ревизию на наклейке роутера с данными в
ubus call system board - 💾 Проверьте объём флеш-памяти командой
df -h— для малых разделов современные образы могут не подойти - 🔌 Подключите роутер к компьютеру кабелем, а не по Wi-Fi, и обеспечьте стабильное питание на время прошивки
- 📦 Сделайте резервную копию конфигурации перед любыми действиями
⚠️ Внимание: обновление по беспроводному соединению — частая причина неудачной прошивки. Если соединение оборвётся в момент записи образа, роутер может перестать загружаться. Используйте проводное подключение и, по возможности, источник бесперебойного питания.
Резервное копирование настроек
Архив конфигурации создаётся в LuCI: откройте раздел System → Backup / Flash Firmware и нажмите кнопку Generate archive. На компьютер скачается файл вида backup-OpenWrt-дата.tar.gz, содержащий содержимое /etc/config и другие помеченные к сохранению файлы.
Тот же результат из командной строки даёт утилита sysupgrade:
sysupgrade -b /tmp/backup.tar.gz
Затем файл нужно забрать с роутера, например через scp с компьютера: scp root@192.168.1.1:/tmp/backup.tar.gz ./. Храните копию вне роутера — при сбросе или неудачной прошивке всё содержимое устройства может быть утеряно.
Где скачать правильный образ прошивки
Образы OpenWrt распространяются через официальный каталог загрузок проекта. Искать нужный файл удобнее всего через Firmware Selector — веб-инструмент, где по названию модели подбирается корректный образ. Альтернатива — вручную пройти по структуре каталога: версия релиза → targets → ваша платформа → подплатформа.
Для обновления нужен файл с суффиксом -sysupgrade.bin (или .img.gz на некоторых платформах). Файлы -factory предназначены для перехода со стоковой прошивки производителя и для обновления уже установленного OpenWrt не подходят — использование factory-образа вместо sysupgrade может повредить разметку разделов.
| Тип файла | Назначение | Когда использовать |
|---|---|---|
sysupgrade.bin | Обновление установленного OpenWrt | Штатное обновление версии |
factory.bin | Первичная установка со стоковой прошивки | Переход с прошивки производителя |
initramfs-kernel.bin | Временный образ, загружаемый в RAM | Тестирование, восстановление |
rootfs.tar.gz | Корневая файловая система | Контейнеры, сборка собственных образов |
После скачивания сверьте контрольную сумму файла с опубликованной в каталоге (файл sha256sums). На Linux это делается командой sha256sum имя_файла, на Windows — certutil -hashfile имя_файла SHA256. Несовпадение суммы означает повреждённую загрузку.
Обновление через веб-интерфейс LuCI
Самый наглядный способ — штатный механизм прошивки в LuCI. Откройте System → Backup / Flash Firmware, в блоке «Flash new firmware image» выберите скачанный sysupgrade-образ и нажмите Flash image. Система покажет контрольную сумму загруженного файла — сверьте её с эталонной до подтверждения.
На этом же экране находится переключатель Keep settings. Если он включён, после прошивки роутер попытается восстановить вашу конфигурацию из списка сохраняемых файлов. Для обновлений в рамках одной ветки (например, минорные релизы) это обычно работает корректно.
☑️ Перед нажатием Flash image
После подтверждения роутер запишет образ и перезагрузится — процесс занимает несколько минут. Не закрывайте вкладку браузера и не трогайте устройство, пока индикаторы не вернутся в обычный режим работы. Затем зайдите в веб-интерфейс и проверьте версию на странице статуса.
⚠️ Внимание: при переходе между крупными релизами (например, с 21.02 на 23.05) сохранение настроек может привести к конфликтам конфигурации из-за изменений в синтаксисе — в частности, при миграции с swconfig на DSA старая настройка свитча несовместима с новой. В таких случаях прошивайте с отключённым Keep settings и настраивайте сеть заново.
Что такое DSA и почему старые конфиги не подходят
DSA (Distributed Switch Architecture) — современный механизм управления встроенным коммутатором, при котором каждый порт виден как отдельный сетевой интерфейс (lan1, lan2, wan). В старых версиях OpenWrt свитч настраивался через swconfig с секциями switch_vlan. Конфигурации этих двух подходов несовместимы, поэтому автоматический перенос настроек между ними невозможен.
Обновление через SSH командой sysupgrade
Метод через терминал предпочтителен, когда веб-интерфейс недоступен или нужен тонкий контроль над процессом. Сначала скопируйте образ на роутер во временный раздел:
scp openwrt-версия-target-sysupgrade.bin root@192.168.1.1:/tmp/
Затем подключитесь по SSH и выполните проверку и прошивку:
ssh root@192.168.1.1
sha256sum /tmp/openwrt-версия-target-sysupgrade.bin
sysupgrade -v /tmp/openwrt-версия-target-sysupgrade.bin
Ключ -v включает подробный вывод. Для прошивки без сохранения настроек добавьте -n: sysupgrade -n /tmp/образ.bin. Если образ не прошёл проверку совместимости, утилита откажется прошивать — принудительное игнорирование этой защиты флагом -F оправдано только тогда, когда вы точно понимаете причину отказа.
- 🧪 Команда
sysupgrade -T образ.bin— только тест образа без записи, полезна для проверки совместимости - 🚫 Ключ
-n— прошивка со сбросом конфигурации, рекомендуется при смене крупной версии - 📋 Ключ
-l— показать список файлов, которые будут сохранены при обновлении - ⚡ Ключ
-k— не перезагружаться автоматически после записи (для особых сценариев)
Attended Sysupgrade — обновление с сохранением пакетов
Отдельный инструмент Attended Sysupgrade (пакет luci-app-attendedsysupgrade) решает главную боль обновлений: после обычной прошивки все вручную установленные пакеты пропадают, и их приходится ставить заново. ASU собирает образ на сервере с учётом вашего набора пакетов и прошивает его в один проход.
После установки пакета в меню System появляется пункт Attended Sysupgrade: мастер проверит наличие новой версии, покажет список пакетов, которые попадут в сборку, и выполнит обновление. Метод удобен, но зависит от доступности серверов проекта и поддержки конкретной модели — если сборка для вашего устройства недоступна, останется классический sysupgrade.
Если обновление не удалось: восстановление
Признак проблемы — роутер не отвечает после прошивки: веб-интерфейс недоступен, индикаторы ведут себя необычно. Первое действие — подождать не менее 5–10 минут: первая загрузка после прошивки может быть долгой из-за инициализации файловой системы. Затем проверьте, выдаёт ли роутер адрес по DHCP, и попробуйте подключиться по ping 192.168.1.1.
Если устройство не поднимается, у большинства моделей есть failsafe-режим: на раннем этапе загрузки OpenWrt короткое время ждёт нажатия кнопки на корпусе и при его получении стартует в аварийном режиме с адресом 192.168.1.1 без применения конфигурации. Из failsafe можно сбросить настройки командой firstboot или перепрошить образ заново через sysupgrade по scp. Точный момент и способ входа в failsafe зависят от модели — сверяйтесь с вики OpenWrt для вашего устройства.
Когда failsafe не помогает, остаются аппаратные способы: режим восстановления загрузчика (у части моделей есть встроенный recovery по кнопке Reset при включении) или подключение через UART-консоль. Это уже вмешательство на уровне железа: распиновка последовательного порта и процедура у каждой модели свои, а ошибка при записи загрузчика может потребовать программатора. Если вы не уверены, лучше изучить страницу вашей модели в вики проекта до начала экспериментов.
⚠️ Внимание: команда firstboot и сброс из failsafe полностью удаляют вашу конфигурацию — восстановить её можно будет только из заранее созданного архива. Не выполняйте сброс, если бэкап не сохранён на внешнем устройстве.
Частые вопросы об обновлении OpenWrt
Можно ли обновляться сразу через несколько версий, например с 19.07 до 23.05?
Технически sysupgrade допускает такой переход, но конфигурацию сохранять нельзя: между релизами накопились несовместимые изменения, включая переход на DSA. Прошивайте с ключом -n или снятым Keep settings и настраивайте роутер заново, используя старый бэкап как справочник.
Чем отличается factory-образ от sysupgrade?
Factory предназначен для первой установки OpenWrt поверх заводской прошивки и содержит обёртку, специфичную для загрузчика производителя. Sysupgrade — чистый образ для обновления уже работающего OpenWrt. Для штатного обновления всегда берите sysupgrade.
Пропадут ли установленные пакеты после обновления?
Да, обычный sysupgrade сохраняет только конфигурацию, а пакеты, установленные через opkg, удаляются вместе со старой системой. Чтобы избежать ручной переустановки, используйте Attended Sysupgrade или заранее сохраните список пакетов и установите их заново после прошивки.
Роутер не отвечает после прошивки — он «умер»?
Не обязательно. Сначала подождите до 10 минут, затем проверьте доступность по 192.168.1.1 с компьютера со статическим IP из той же подсети. Далее попробуйте failsafe-режим — он доступен на большинстве устройств и позволяет сбросить конфигурацию или перепрошить образ. Полный отказ без реакции на failsafe встречается редко и обычно связан с прошивкой несовместимого образа.
Как откатиться на предыдущую версию OpenWrt?
Отдельной функции отката нет: нужно скачать sysupgrade-образ прежней версии из архива релизов и прошить его той же процедурой. Старый бэкап конфигурации от новой версии применять к старой не стоит — используйте архив, созданный до обновления.