Раздел nand флеш памяти ubi имеет разное разбиение на разделы
(volumes) на стоковой прошивки и в lede. Поэтому переходы между
прошивками немного сложнее, чем для других роутеров.
Более подробную и дополнительную информацию о прошивках читайте
на форуме
4pda.
До сборки 1283 файлы с прошивками назывались lede-rt-.... Начиная со сборки 1283 файлы называются openwrt-r...... Откат с прошивок openwrt на lede описан ниже и осуществляется специальным способом.
(1) Скачайте с http://lede-ac58u.zyxmon.org/firmware/
две прошивки: openwrt-r...-factory.trx (для первого этапа)
и openwrt-r...-sysupgrade.tar (для второго этапа). Прошейте
...factory.trx через web интерфейс заводской прошивки
стандартным способом. Теперь нам нужно зайти по ssh на роутер (ip
после прошивки 192.168.1.1, пользователь root, пароля нет) и
удалить раздел (ubi volume) с именем jffs2. В сессии ssh проверьте
не смонтирован ли этот раздел, т.к. это может помешать удалению
jssf2. Если команда mount содержит строку с /dev/ubi0_5 on
/mnt/ubi0_5... размонтируйте раздел командой umount
/mnt/ubi0_5. Удалите раздел jffs2 командой ubirmvol /dev/ubi0
-N jffs2. Команда должна быь выполнена без ошибок. Если
раздел jffs2 останется, прошивка lede не сможет сохранять
настройки. Проверить наличие раздела jffs2 можно командой
ubinfo -a.
(2) Зайдите на роутер по http (ip 192.168.1.1, пользователь root,
пароля нет) и обновите через раздел меню Система прошивку.
Установите openwrt-r...-sysupgrade.tar. После перезагрузки
у Вас будет роутер с последней прошивкой LEDE. Периодически
проверяйте папку с прошивкой по ссылке и используйте файл openwrt-r...-sysupgrade.tar
для обновления.
Скачайте прошивку stock2lede.trx
(идею создания такой прошивки принадлежит dullish с
форума 4pda.ru).
Эта прошивка автоматически выполнит операции, описанные в
предыдущем варианте, но прошивка не будет последней. Время
прошивки до 6-10 минут (два этапа, два раза прошивается
автоматически). После прошивки зайдите на роутер по http (ip
192.168.1.1, пользователь root, пароля нет) и обновите через
раздел меню Система прошивку. Установите openwrt-r...-sysupgrade.tar
с http://lede-ac58u.zyxmon.org/firmware/.
После перезагрузки у Вас будет роутер с последней прошивкой LEDE/OpenWrt.
Периодически проверяйте папку с прошивкой и используйте файл
openwrt-r...-sysupgrade.tarдля обновления.
Этот вариант для профессионалов. Потребуется разобрать роутер и
подключить его к компьютеру с помощью (usb-uart). Потребуется файл с расширением itb.
Подробности на форуме 4pda.
Откат со сборки 1283 (и последующих) на сборки до 1283 (Откат с прошивок openwrt... на lede...) можно сделать только через консоль ssh (putty). Для этого переименуйте файл lede.....sysupgrade.tar в lede.tar (нужно имя покороче, любое). Закиньте этот файл в папку tmp на роутере. Зайдите по ssh на роутер и выполните sysupgrade -F /tmp/lede.tar. Флаг -F (force) нужен, т.к. в проекте OpenWrt ,был изменен способ board detection и новая прошивка считает старую сделанной для другого роутера. Все остальные прошивки: openwrt->openwrt, lede->openwrt можно делать через web (морду). Вот пример скачивания (сразу переименовываем) и отката прошивки через ssh
root@LEDE:~# wget http://lede-ac58u.zyxmon.org/archive/lede-rt-ac58u-r1057-ed83357-ipq806x-RT-AC58U-squashfs-sysupgrade.tar -O /tmp/lede.tar
Connecting to lede-ac58u.zyxmon.org (87.239.250.123:80)
lede.tar 100% |*****************************************************************| 6680k 0:00:00 ETA
root@LEDE:~# syspgrade -F /tmp/lede.tar
(1) Для последней прошивки создан дополнительный репозиторий с
модулями ядра. Если требуемые Вам пакеты opkg включают эти
модули kmod*.ipk, то их можно будет установить только на
последнюю версию.
(2) С помощью usb-uart можно восстановить роутер практически из
любого состояния, если вы ошибетесь с операциями по прошивке.
Для возврата на заводскую прошивку нам необходимо удалить разделы
(ubi volumes) на флеше, которые отличаются по размеру (или
названию) от заводской прошивки. После перезагрузки загрузчик
(бутлоадер) U-Boot автоматически пересоздаст разделы для заводской
прошивки и переведет роутер в режим восстановления. Для удаления
разделов можно написать специальный скрипт, но делать это лень.
Воспользуемся системным скриптом sysupgade с флагом -F (force), но
вместо прошивки передадим скрипту произвольный файл (мусор). В
этом случае sysupgrade удалит три раздела linux, rootfs и
rootfs_data. Поскольку в качестве параметра вместо прошивки задан
"мусор", требуемые размеры под новое ядро (размер раздела linux) и
файловую систему (rootfs) определить нельзя, скрипт sysupgrade
новые разделы не создает и перезагружает роутер. Для того, чтобы
избежать bootloop (циклическую перезагрузку), удалим еще и раздел
linux2 с копией ядра lede. Итак в консоли (ssh) неободимо
выполнить две команды: (1) ubirmvol /dev/ubi0 -N linux2
(удаляем раздел с копией) и (2) sysupgrade -F
/bin/busybox (в качестве мусора выбрали бинарник busybox).
После этого роутер перезагрузится и перейдет в режим
восстановления. Восстановите роутер с помощью асусовской утилиты
rescue или же с помощью tftp клиента. Назначьте на компе с
утилитой или tftp клиентом ip 192.168.1.70. Если восстановление не
проходит, попробуйте выключить и включить роутер. Или поменять
компьютер. В режиме восстановления драйвер ethernet роутера не
очень надежен, не всегда поднимает линк и может быть несовместим с
некоторыми сетевыми картами компов.