一、OpenWRT web界面无法登陆远程更新系统

背景

今天突然发现openwrt的55R无法打开了。自己通过系统选项,卸载了带有相应名字的插件,但是结果更加悲剧,web页面登不进去了。提示如下:

解决办法

  1. 测试系统是否还在运行。因为我设置了端口转发,通过连接发现,端口转发仍然生效,说明opnwrt的系统仍然是在运行的。因此打开putty,连接root帐户。测试OK。
  2. 下载新的固件。
    下载地址,在Ubuntuserver中下载新编译的固件。
  3. 打开winscp。

    进入到tmp文件目录。

    将第2步下载的文件拖进tmp目录,完成后重新命名为:openwrt.img
  4. 进入putty,输入更新代码,然后回车。即可保留原有配置,并且修复损坏的55R插件。
1
2
root@OpenWrt:~# cd /tmp
root@OpenWrt:/tmp# sysupgrade openwrt.img
  1. enjoy!

二、OpenWRT更新后无法通过web登录

  1. 无法登录,提示:
      
  2. 外网无法登录ssh\winscp.
  3. 只有通过远程控制,看能不能在内网环境重新设置密码。
  4. 如果可以重置密码就可以了。
  5. 以上问题已经解决了。详见此处

三、sysupgrade的用法

参考链接:https://my.oschina.net/u/4356872/blog/3467508   

  • 更新openwrt.bin固件
1
sysupgrade openwrt.img
  • 强制更新openwrt.bin固件:sysupgrade会检查支持板子的固件头信息,如果一个model没有在sysupgrade的支持列表里,使用-F来忽略检查失败,强制烧写。
1
sysupgrade -F openwrt.bin
  • 更新后不保存之前的配置:sysupgrade烧写时默认会备份配置文件,在烧写后把配置文件覆盖到新系统中。-n参数指定不做这个动作。
1
sysupgrade -n openwrt.img
  • 备份配置文件到/tmp/backup.tgz
1
sysupgrade -b /tmp/backup.tgz
  • 恢复之前备份的/tmp/backup.tgz
1
sysupgrade -r /tmp/backup.tgz
  • 列出会被备份的文件,列出的文件会在-b备份时或系统升级时被保存。
1
sysupgrade -l

为防止文章丢失,截图见下: