PeaceSheep's blog PeaceSheep's blog
首页
  • 分类
  • 标签
  • 归档
相关链接
提建议&咨询&赞赏
GitHub (opens new window)

PeaceSheep

以最简洁、易懂的话解决问题
首页
  • 分类
  • 标签
  • 归档
相关链接
提建议&咨询&赞赏
GitHub (opens new window)
  • web

  • 物联网与路由器

    • 使用树莓派安装OMV系统并启用nextcloud
    • openwrt安装软件包到U盘
    • openwrt挂载ntfs只读
    • 东南大学openwrt中继校园网
    • 关于玩路由器tplink-xdr6088差点变砖的心得
      • 什么叫“变砖”
      • 什么是固件
      • 路由器的启动过程
        • preloader.bin:
        • xxxuboot.fip
        • xxx-squashfs-sysupgrade.itb:
        • xxx-initramfs-recovery.itb:
      • uboot是否就是不死系统,可以直接用它更新固件?
      • uboot是否是通用的?
      • openwrt、immportalwrt、qwrt之类的都是什么?
  • 操作系统

  • 错误解决

  • 使用技巧

  • 教程
  • 物联网与路由器
PeaceSheep
2024-09-26
目录

关于玩路由器tplink-xdr6088差点变砖的心得

起因是某天和工位隔壁组同学一起吃海底捞的时候,想着一起买个路由器,挂点服务在上面。

由于人比较多,而且工位网速较快,需要一个高性能的路由器,又考虑到自带的存储可能不够,可能需要个USB口外接硬盘。所以买了比较小众的TPlink tl-XDR6088路由器。然后就开始了刷机,遇到了很多问题,期间差点变砖,在这里把一些收获和心得写下来。

刷机过程主要参考的是一篇教程 (opens new window),下文所述“教程”如果没有特别说明都是这个教程。

# 什么叫“变砖”

顾名思义,如果你的路由器成了一个没有任何路由功能,且不能恢复的只有硬件的东西,那就叫做变砖了。

# 什么是固件

通俗来说,硬件就是看得见摸得着的东西,例如CPU、显卡、内存等。软件就是我们用编程语言编写出来的具有一定功能的程序。

固件是一种介于两者之间的东西,介于软件和硬件之间的一种程序代码,也被称为固化的软件。举个例子,你发明了一个无人机,你需要为它编写程序让他动起来,尽管你是用代码编写的,但是它与硬件强绑定,即这个代码的功能只能控制这个无人机,不能控制别的,与硬件高度耦合。

我们在日常写软件过程中,需要尽可能解耦,避免把软件写成固件。

# 路由器的启动过程

路由器启动大致可以分成三个阶段:Preloader、bootloader、系统启动。

根据上面的教程,你会发现下载了四个文件,这四个文件的作用分别是:

# preloader.bin:

Preloader 是在 U-Boot 之前运行的一个小型启动程序,它是设备启动的第一个阶段,用于初始化最基本的硬件功能,例如时钟、内存控制器等,以便引导加载 U-Boot。 它的作用是初始化关键的硬件设置,并为 U-Boot 和系统的进一步加载准备好环境。这个文件相当于启动链的第一步。

# xxxuboot.fip

这是 BL31 和 U-Boot 的组合文件,可以认为就是bootloader。

BL31 是 ARM 体系结构中的一个固件阶段,属于,负责在启动过程中进行关键硬件初始化。 U-Boot 是一个通用的引导加载程序,用于初始化硬件设备(如 CPU、RAM、存储设备)并启动操作系统内核。它允许设备在启动时选择从哪里加载固件或启动操作系统。 这个文件的作用是引导加载,并且为路由器提供一个初始化和启动的基础。

# xxx-squashfs-sysupgrade.itb:

Sysupgrade 文件是 OpenWrt/ImmortalWRT 用来升级系统的固件文件,它包含整个路由器的文件系统和内核。 SquashFS 是一种只读文件系统,用于存储路由器的固件内容,因为它的压缩率高,可以节省存储空间。 ITB (Image Tree Blob) 是一种多段固件打包格式,包含内核、设备树和根文件系统,通常用于设备的固件升级。 这个文件是用来通过 Web 界面或命令行方式更新 ImmortalWRT 固件的核心文件。它包含了路由器运行的操作系统的所有内容。

# xxx-initramfs-recovery.itb:

Initramfs 是一种临时的内存文件系统,用于在系统启动时加载并运行。这种文件系统包含一个最小化的 Linux 系统,可以在硬件初始化后作为恢复系统使用。 Recovery 文件是用于路由器的恢复模式,它在设备出现问题或需要重新刷机时非常有用。

装过机的同学应该比较熟悉,这就类似于转机的PE系统。

# uboot是否就是不死系统,可以直接用它更新固件?

一定程度上,uboot就是不死系统。因为只要uboot存在,就能实现一些基础的功能。比如,教程中提到的uboot,启动后会默认使用tftp协议,向一个特定的地址(可能是192.168.1.254),不断请求一个叫做openwrt-mediatek-filogic-tplink_tl-xdr6088-initramfs-recovery.itb。只要你开启tftp服务,并且存在这个文件,那么就能进入到一个临时系统(类似于PE,就是上文提到的Recovery),你就可以在这个临时系统进行一些操作,拯救你的路由器。

不同的uboot具有不同的功能,教程提到的uboot比较麻烦,你要有tftp服务器,要有恢复用的固件,然后从恢复固件里面用系统升级。如果你不知道这个,在你看来这个路由器就是“变砖了”。

但是,有的uboot打开会看到这样的界面,你可以非常方便的升级固件。

# uboot是否是通用的?

不一定,不同的固件采用不同的布局,不同的uboot能支持的布局也不一样。有的uboot可以支持多种布局,你可以在刷固件的时候选择使用哪种布局,刷入对应的固件。

如果你刷错了uboot不支持的固件,会导致无法进入系统,但通常不会损坏uboot自身,你可以进入uboot重新刷适合的固件。

# openwrt、immportalwrt、qwrt之类的都是什么?

OpenWRT、ImmortalWRT、QWRT等都是基于Linux的开源路由器固件。其中OpenWRT是最基础的,类似于linux系统本身。KWRT、QWRT、ImmportalWRT,像是ubuntu、debian等linux发行版。尤其是ImmportalWRT,是专门针对国内优化过的固件,推荐使用。

参考链接

TL-XDR6088/6086 刷入官方 Openwrt/Immortalwrt (opens new window)

【分享】XDR-6088支持多分区的Uboot,支持OP官方、爱快、Immortal,QWRT (opens new window)

小白亲刷 TP-LINK TL_XDR6088 /6086 刷入官方Openwrt/Immortalwrt 及刷回原厂教程完 (opens new window)

感谢“完美闭环-MT798X交流总群”各位群友的帮助!

编辑 (opens new window)
上次更新: 2025/04/15, 10:52:45
东南大学openwrt中继校园网
使用k8s部署需要gpu的项目

← 东南大学openwrt中继校园网 使用k8s部署需要gpu的项目→

最近更新
01
ubuntu安装g++显示已有但是输入g++又找不到命令
04-15
02
使用cloudflare-r2搭建webdav
04-08
03
LLM聚合平台客户端对比
03-29
更多文章>
Theme by Vdoing | Copyright © 2022-2025 PeaceSheep
冀ICP备2022004632号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式