Вот честно содранная с 4pda инструкция от Digger7 (написана для роутера, но думаю, подойдет и для нас).TEP писал(а): Может есть способ сделать бекап прошивки перед добавлением протокола?
Можно ли это сделать через Uart и tftp сервер?
Как слить старую прошивку:
Желательно перед заливкой новой прошивки сделать копию старой прошивки.
Для этого подключиться через telnet к роутеру.
Проверить достаточно ли свободного места в RAM. Команда free
Затем проверить, есть ли папка /etc_ro/web
Если есть, то надо попытаться выполнить команду: cat /dev/mtdblock0 > /etc_ro/web/mtdblock0.bin
А затем попытаться забрать этот файл через веб-интерфейс по адресу: http://192.168.169.1/mtdblock0.bin" onclick="window.open(this.href);return false;
Адрес "192.168.169.1" заменить на адрес роутера.
Как прошить.
1. Записать прошивку на флэшку, отформатированную в фат, в корень и назвать, например, fw.bin
2. Подключить к роутеру.
3. Зайти с помощью putty в консоль роутера (протокол telnet).
4. Выяснить, куда она смонтировалась командой mount, в выводе этой команды будет строка вида /dev/sda1 или /dev/sda - и путь, где она смонтирована, например /media/sda1
5. Выполнить команду cat /media/sda1/fw.bin > /dev/mtdblock6
6. Подождать, пока выполнение команды закончится - обновление занимает около минуты.
7. Перезагрузить роутер, например командой reboot
Если флэшка не определяется и не смонтировалась, то попробовать скачать прошивку с компьютера, к которому подключен роутер (если там есть http или ftp сервер) или из интернета, если роутер подключился к интернету.
1. Подключаемся к консоли роутера с помощью putty.
2. Выполняем команду: mount -t ramfs -o size=8M ramfs /etc_ro/web/graphics
3. Выполняем команду: cd /etc_ro/web/graphics
4. Командами, в случае подключения к компьютеру:
wget http://192.168.169.2/fw.bin" onclick="window.open(this.href);return false;
- где 192.168.169.2 - адрес компьютера, к которому подключен роутер и запущен http сервер.
Или, если есть подключение к интернету и прошивка залита на какой-нибудь файлообменный сервер, то wget ссылка_на_файлообменный_сервер
4. Выполнить команду: cat /etc_ro/web/graphics/fw.bin > /dev/mtdblock6
5. Подождать, пока выполнение команды закончится - обновление занимает около минуты.
6. Перезагрузить роутер командой reboot
Как прошить из загрузчика:
Программатор при прошивке через UART не нужен.
Инструкция проста. Необходимо запустить TFTPD сервер, в его рабочую папку поместить файл с прошивкой.
Затем подпаяться к выводам uart'a на роутере - желательно, если используется usb-com переходник, то использовать переходник на микросхеме FTDI. (FT232RL).
rx переходника на tx роутера, tx переходника на rx роутера, земля на gnd роутера.
Затем запустить putty - выбрать работу с последовательным портом, скорость 57600.
Затем включить роутер.
Если всё сделано правильно, то в putty появится меню.
Меню
В течении 3 секунд нужно выбрать пункт меню "2" (Нажать цифру 2 на клавиатуре).
Затем подтвердить выбор, ответив на вопрос "Warning!! Erase Linux in Flash then burn new one. Are you sure?(Y/N)" Y.
Далее на вопрос об адресе устройства ввести ip-адрес, который нужно присвоить устройству (в данном случае 192.168.1.109) "Input device IP (192.168.1.109) ==:192.168.1.109" Enter
На следующий вопрос вводим ip-адрес tftp-сервера (компьютера, где запущен TFTPD). Input server IP (192.168.1.55) ==:192.168.1.55. Enter В данном случае это 192.168.1.55.
На вопрос "nput Linux Kernel filename () ==:new_image.bin" Enter - вводим название файла прошивки, находящегося на TFTP сервере. В данном случае это: new_image.bin.
Если всё проделано правильно, то запустится процесс обновления прошивки и через 2-3 минуты роутер перезагрузится.
От себя добавлю, что у наших загрузчиков вместо "2" надо жать "Ctrl C".
Возможно, для нашего регистратора необходимо что то изменить, надеюсь гуру линукса подскажут
