Функціональність Attended SysUpgrade (ASU) дозволяє оновити OpenWrt до нової прошивки з збереженням встановлених пакетів і налаштувань. Це суттєво спрощує процес оновлення: лише кілька кліків і трохи очікування — і ви отримаєте новий образ з усім попереднім програмним забезпеченням.
ASU усуває потребу вручну складати список встановлених пакетів або використовувати `opkg` для відновлення системи після оновлення.
Оскільки оновлення ініціюється користувачем, який очікує завершення процесу, воно називається “attended” (контрольованим).
Приклад використання Attended Sysupgrade можна побачити у відео OneMarcFifty: https://www.youtube.com/watch?v=FFTPA6GkJjg&t=1034s
Доступні як веб-інтерфейс (LuCI), так і CLI (командний рядок) для ASU.
Пакет luci-app-attendedsysupgrade додає сторінку до веб-інтерфейсу маршрутизатора. Він запитує новий образ прошивки з поточним набором пакетів, чекає його збірки, а потім завантажує і прошиває. Якщо в GUI відмічено “Keep configuration”, пристрій збереже всі налаштування.
Щоб встановити `luci-app-attendedsysupgrade`, перейдіть до System → Software, оновіть список пакетів і знайдіть `luci-app-attendedsysupgrade`. Встановіть як звичайний пакет.
Для оновлення прошивки:
Головне вікно. Натисніть Search for sysupgrade
Виберіть доступний реліз і натисніть Request Sysupgrade
Перевірте параметри нового образу, виберіть “Keep Settings” (або ні) та натисніть Install Sysupgrade
Пакет auc виконує те саме, що і `luci-app-attendedsysupgrade`, але з командного рядка через SSH. Доступний у версіях до включно з OpenWrt 23.05. У новіших версіях (та SNAPSHOT) замінений на owut.
Щоб встановити `auc`, підключіться по SSH та виконайте:
opkg install auc
Або через LuCI: System → Software, оновіть список, знайдіть `auc` і встановіть.
Щоб оновити прошивку:
auc
Команда `auc` за замовчуванням завантажить наступну доступну версію. Можна вказати параметри:
auc --help
| Опція | Типово | Опис |
|---|---|---|
| `-b <branch>` | поточна гілка | Оновлення з конкретної гілки, напр. `19.07`, `23.05`, `SNAPSHOT` |
| `-B <version>` | остання версія гілки | Оновлення до конкретної версії гілки |
| `-c` | false | Лише перевірка наявності оновлень, без змін |
| `-f` | false | Примусове оновлення, навіть без змін |
| `-n` | false | “Сухий запуск” — побудова образу без завантаження і прошивки |
| `-r` | false | Перевірка лише нових релізів, без змін пакетів |
| `-F <fstype>` | поточна (звичайно `squashfs`) | Примусова зміна типу ФС — уважно! |
| `-y` | false | Автоматичне підтвердження всіх дій |
Перевірка оновлень без змін:
auc -c
Приклад перевірки оновлення до іншої версії:
auc -c -b 22.03 -B 22.03.4
Увага: пониження версії (downgrade) може працювати неочікувано — будьте обережні.
Сервер ASU приймає запити на образи і генерує їх автоматично. Він координує кілька OpenWrt ImageBuilder-ів і кешує результати в Redis.
ASU значно покращено завдяки оновленням ImageBuilder від @aparcar ASU на GitHub
Якщо ваш пристрій використовує Extroot, після будь-якого sysupgrade потрібно перезавантажити двічі. Extroot не монтується автоматично після першого запуску. Не потрібно змінювати чи відтворювати налаштування — просто перезавантажте ще раз, і все буде працювати як раніше.