User Tools

Site Tools


zh-cn:doc:howto:generic.failsafe

OpenWrt 安全模式

OpenWrt 有一个内置的安全模式, 此模式下 OpenWrt 会绕过几乎所有的配置并使用内置的默认配置, 路由将只启动必要的服务并使用默认的IP 192.168.1.1/24. 这种情况下你可以使用 telnet 连接进路由并修复某些错误.

flash.layout, 你应该明白 OpenWrt 的安全模式能帮你解决任何问题是因为 OpenWrt 使用 JFFS2 分区存储用户数据 (如果你用的是 SquashFS 固件)! 在你忘记密码, 或把你自己墙了, 或你弄坏了一个启动脚本的情况下, 你可以用安全模式恢复.

需求

  • 你的设备必须有一个定义了的按键(比如复位/wps按键), 如果你的设备上有按键, 这个按键有可能被定义; 检查你的设备(box)是否有关于安全模式的信息, 并确保一切在更新后依然有效!
  • 或者你需要能连上串口(ttl)
  • 任何东西除了JFFS2分区,例如:核心和SquashFS分区必须完好,然后:
    • 启动过程只是需要按下按钮
    • 最低要求二进制和一些原始设置的设置文件存在(存放在SquashFS分区)

通过按钮触发(标准OpenWrt方法)

  1. 电脑IP设置为192.168.1.2,子网设置为255.255.255.0 subnet
  2. 路由电源循环(关闭和开启)
  3. 在以上程序过后立刻迅速的按下路由上的按钮60秒(可能是任何按钮). 提示: 如果你的路由启动时间长的夸张(例如DIR-300 A),那么你可能要等很长时间)
  4. 如果所有过程都正确, 192.168.1.1将能够ping通和可以telnet
  5. Telnet进192.168.1.1 – 将会有不需要认证就可以进去的root shell
  6. 尝试一下下面的命令

连接串口后,通过键盘触发

  1. 断开路由器电源线。
  2. 把你的电脑用网线连接路由器的LAN口。
  3. 给你的电脑配置静态IP,在192.168.1.2 and 192.168.1.254之间。比如:192.168.1.2 (网关和DNS都不需要配置).
  4. 接通路由器电源线。
  5. 通过串口线连接路由器。
  6. 等待一会,直到出现以下内容: Press the [f] key and hit [enter] to enter failsafe mode
  7. 按下“F”键并回车。
  8. 现在,你可以使用telnet连接192.168.1.1了 (不需要用户名和密码)

在安全模式下

You get a message like this “bla bla, you booted into failsafe mode”

NOTE: The root file system in failsafe mode is the only the SquashFS partition. The JFFS2 is not present. To mount JFFS2 in read-write mode run mount_root:

mount_root

接下来,可以修复你的系统了:

  • In case you forgot your password, you need to set a new one. Type:
    passwd
  • In case you forgot the routers IP address, get it with
    uci get network.lan.ipaddr
  • In case you filled up the entire JFFS2 by installing too big/too many packages, clean the entire JFFS2 partition. All settings will be reset (OpenWrt equivalent of a factory reset)
    mtd -r erase rootfs_data

If you are done with failsafe mode use

reboot -f

to reboot. (Normal /sbin/reboot will not work, because init is not running.) Or power cycle the router.

Notes

  • the article process.boot may help you better understand when failsafe “kicks in” once activated
This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
zh-cn/doc/howto/generic.failsafe.txt · Last modified: 2018/02/20 18:51 by bobafetthotmail