Обновление роутеров Wive-NG-HQ через SSH
По умолчанию подключение по SSH разрешено только из внутренней LAN сети.
За обновление отвечает демон fwupdate. Запуском одноименной команды без ключей можно вывести подсказку по синтаксису использования:
[Wive-NG:/home]# fwupdate
usage: fwupdate [-d]/[-c check/download/flash]/[-f <filename> [-r]]
Firmware updater
-d start in non-interactive mode
-c check check current firmware for updates
-c download download an updated firmware binary to /tmp/
-c flash install previously downloaded firmware
-c force-update check for updates, download and install new firmware
-f <filename> install custom firmware from file (retain rwfs)
-f <filename> -r install custom firmware from file (erase rwfs)
-C <filename> check the firmware file integrity
-h show this info and exit
Статус его работы можно смотреть в рабочей папке /tmp/updater
Содержимое папки по умолчанию:
[Wive-NG-HQ:/tmp/updater]# ls
command image_md5 image_name image_url state
в файле state он отражает свой статус работы, чем он сейчас занимается
[Wive-NG-HQ:/tmp/updater]# cat state
downloaded
Процесс обновления состоит из трех шагов:
-
Проверка на наличие обновления fwupdate -c check
-
Загрузка обновления fwupdate -c download
-
Прошивка :) fwupdate -c flash
Данную процедуру легко автоматизировать скриптом или NMS, который будет “обходить” все устройcтва и обновлять автоматически.
Пример живой сессии обновления ПО Wive-NG-HQ по ssh:
login as:
Odmin@192.168.1.1's password:
[Wive-NG-HQ:/home]# cd /tmp/updater/
[Wive-NG-HQ:/tmp/updater]# ls
command image_md5 image_name image_url state
[Wive-NG-HQ:/tmp/updater]# cat state
available[Wive-NG-HQ:/tmp/updater]# ps | grep fw
200 daemon 256 S fwupdate -d
[Wive-NG-HQ:/tmp/updater]# fwupdate -c download
Updater has been started.
[Wive-NG-HQ:/tmp/updater]# cat state
downloaded
[Wive-NG-HQ:/tmp/updater]#
[Wive-NG-HQ:/tmp/updater]# fwupdate -c flash
Updater has been started.
[Wive-NG-HQ:/tmp/updater]# cat state
flash-prepare
[Wive-NG-HQ:/tmp/updater]# cat state
flashing
[Wive-NG-HQ:/tmp/updater]# cat state
flashing
[Wive-NG-HQ:/tmp/updater]# cat state
flashing
[Wive-NG-HQ:/tmp/updater]# cat state
flashing
[Wive-NG-HQ:/tmp/updater]# cat state
flashing
[Wive-NG-HQ:/tmp/updater]#
login as: Odmin
Odmin@192.168.1.1's password:
[Wive-NG-HQ:/home]# cd /tmp/updater/
[Wive-NG-HQ:/tmp/updater]# cat state
uptodate
[Wive-NG-HQ:/tmp/updater]#