---
url: https://eoht.net/asus/flashing-prerequisites.md
description: >-
  系统梳理华硕原厂、官改、梅林原版、G 版、梅林改版及网件移植固件的来源、版本号和软件中心差异，并解释固件双清、恢复出厂、格式化 JFFS、JFFS
  挂载与备份还原等刷机术语，最后给出在路由器后台启用 SSH、使用 PuTTY 登录并执行命令的基本步骤，供刷机前核对。
---

# 华硕梅林固件刷机前必读：固件类型、双清、JFFS 与 SSH {#merlin-firmware-flashing-prerequisites}

::: tip 学习路径
刷机前先通过[固件平台介绍](/asus/firmware-platform-introduction)确认机型与固件架构；完成固件和 JFFS 检查后，可继续查看 [fancyss 安装与订阅配置](/asus/fancyss) 或 [Merlin Clash 安装与代理设置](/asus/merlin-clash)。
:::

## 华硕原厂固件 {#official-asus-firmware}

华硕原厂固件即华硕路由器官方固件，其代号为 Asuswrt，官方固件可以在 <Pill icon="simple-icons:asus" name="华硕官方下载中心" link="https://www.asus.com.cn/support/Download-Center/" /> 下载到。

一般华硕官方固件的版本号格式为： `3.0.0.4.384.9173` 、 `3.0.0.4.386.41700`

当然也有类似这样的版本号： `9.0.0.4_386_55919` ，`9.0.0.4` 字样开头的固件版本，是华硕官方出品的测试固件

## 华硕官改固件 {#asus-modified-firmware}

通常我们说的**官改固件**就是指的**华硕官改固件**

华硕官改固件是 kooldev 开发组（原 koolshare 论坛开发组）基于华硕路由器官方源代码修改而来的，带软件中心的固件，版本号为官方固件版本号后加上 `_koolshare` 后缀，

> 如 RT-AX86U 官改固件版本： `3.0.0.4.384_9318_koolshare` 。

华硕官改固件相比华硕官方固件，最大的区别就是加入了软件中心支持，以前叫做 koolshare 软件中心，现在最新版本叫 koolcenter 软件中心。软件中心赋予了路由器自由安装插件的功能，通过

事实上，我们对官改固件的制作相当克制，做法是以最小的代码改动来加入软件中心支持，比如软件中心运行需要的主程序 httpdb，软件中心数据库 skipd，固件的软件中心侧边栏入口，软件中心需要的一些 busybox 功能支持如 xargs 等。所以官改固件和官方固件除了软件中心部分

## 梅林原版固件 {#official-merlin-firmware}

加拿大独立开发者 Eric Sauvageau 在华硕官方源码上二次开发的第三方固件，其代号为 Asuswrt-Merlin，相较华硕官方固件，

其区别为：[这些功能](https://github.com/RMerl/asuswrt-merlin.ng/blob/master/README-merlin.txt#L64-L135)，比如一些系统修复、NFS 支持、AMTM、merlin-addon，多种开机启动项支持等等。

通常我们说到**梅林固件**，就是指**梅林原版固件**，梅林原版固件目前其版本号一般为 `386.x` ，如： `386.1` 、 `386.2_6` ，梅林原版固件的下载地址为：<Pill image="https://www.asuswrt-merlin.net/sites/default/files/Asuswrt-Merlin-smaller.png" name="梅林原版固件" link="https://www.asuswrt-merlin.net/" />

## G 版梅林固件 {#g-edition-merlin-firmware}

另外一位开发者：**gnuton 大神** <Pill :icon="{ icon: 'cib:github', color: { light: '#000', dark: '#fff' } }" name="G版梅林固件源码" link="https://github.com/gnuton/asuswrt-merlin.ng" />，在原版梅林代码的基础上，添加了更多机型的支持，最开始注意到他的项目是因为他做了 DSL-AX82U 的梅林固件。

后来 gnuton 大神在源代码和硬件上都得到了华硕的进一步支持。所以又相继做了 TUF-AX5400、RT-AX82U、ZenWiFi\_XT8 的梅林固件，相对于原版梅林固件，这里我愿意称之为 **G 版梅林固件** 。

按照 gnuton 大神自己的话来说： `My builds should support all features available in the original Merlin firmware` 。

所以原版梅林固件支持的功能，G 版梅林固件都是支持的！总结下来， **G 版梅林固件** 算是在源码梅林基础上对更多机型的一个补全。

## 梅林改版固件 {#modified-merlin-firmware}

梅林改版固件是指 kooldev 开发组基于梅林原版固件源码，或者 G 版梅林固件源码的基础上，再进行开发而来的、带软件中心的改版固件，其版本号和原版梅林固件持一致，如 RT-AX86U 官改固件版本： `386.5_0` 。

相比于梅林原版固件，梅林改版固件最大的区别就是加入了软件中心支持，，以前叫做 koolshare 软件中心，现在最新版本叫 koolcenter 软件中心！软件中心赋予了路由器自由安装插件的功能！

## 网件移植固件 {#netgear-ported-firmware}

网件机型本身是不支持 ASUSWRT/梅林固件的，但是因为网件的一些机型和华硕路由器硬件基本一致，所以经过一些对源代码的修改，就能实现给网件固件刷移植固件。比如网件 RAX80 的硬件（CPU，无线网卡）和华硕 RT-AX88U 一致，所以 RAX80 刷的梅林改版固件，是在 RT-AX88U 的梅林改版固件基础上移植而来的。

目前 kooldev 开发组制作的网件移植固件均是在梅林改版固件基础上移植的，比如 RAX80 是从 RT-AX88U 梅林改本固件移植而来，RAX50 是从 RT-AX58U 梅林改版固件移植而来。但是也有例外的情况，比如即将发布的网件 RAX70 移植固件，因为其对应的华硕机型 RT-AX95Q（ZenWiFi AX6600）并没有梅林原版固件的支持，所以 RAX70 的移植固件是从 RT-AX95Q 的华硕官方源代码移植而来。

## 固件区别 {#firmware-comparison}

|            |                           华硕原厂固件                           |    华硕官改固件     |                    梅林原版固件                     |                          G 版梅林固件                          | 梅林改版固件   |  网件移植固件  |
| :--------: | :--------------------------------------------------------------: | :-----------------: | :-------------------------------------------------: | :------------------------------------------------------------: | :------------- | :------------: |
|   出品方   |                             华硕官方                             |   kooldev 开发组    |                   Eric Sauvageau                    |                             Gnuton                             | kooldev 开发组 | kooldev 开发组 |
|    代号    |                             Asuswrt                              |                     |                   Asuswrt-Merlin                    |                         Asuswrt-Merlin                         |                |                |
|    特点    |                             官方出品                             |      软件中心       |                      功能增强                       |                            功能增强                            | 软件中心       |    软件中心    |
| 版本号示例 |                            386.41700                             | 386.41700\_koolshare |                       386.5\_2                       |                            386.5\_2                             | 386.5\_2        |  视移植源而定  |
|  相关地址  | [华硕下载中心](https://www.asus.com.cn/support/Download-Center/) |        本站         | [梅林原版下载地址](https://www.asuswrt-merlin.net/) | [GITHUB](https://github.com/gnuton/asuswrt-merlin.ng/releases) | 本站           |      本站      |

## 刷机术语 {#flashing-terminology}

为消除小白在刷机过程中的疑惑，下面列出一下华硕/梅林固件刷机的基本术语及我自己的解释，希望对大家有所帮助。如果你对下面的内容已经比较清楚，那么可以跳过这部分直接进入到刷机流程。

### 固件双清 {#full-factory-reset}

双清就是要清除：1. nvram 配置，2：JFFS 分区文件。固件的很多设置都是储存在 nvram 中，例如拨号方式、拨号上网帐号密码、无线网络设置等；固件的很多文件是储存在 JFFS 分区的，例如流量分析储存的流量数据，SSL 证书，UU 加速器程序等。一般同类型固件互刷不需要进行双清，不同类型固件互刷视情况要进行双清，以保证路由器刷机后处于最佳工作状态。

如何双清路由器：进入 `[系统管理]` – `[恢复/导出/上传设置]` ，**勾选恢复按钮旁的选择框，然后点击恢复按钮**。

### 恢复出厂 {#restore-factory-defaults}

恢复出厂就是清除固件的 nvram 配置，但是不清除 JFFS 分区文件。这样流量分析、SSL 证书等文件并不会丢失。值得注意的是很多朋友有用\[导出设置]来备份固件配置的习惯，而在刷固件，特别是不同类型固件互刷的情况下，是不适用使用备份的配置来恢复刚刚进行了恢复出厂的机器的，因为这样就相当于你什么也没恢复。所以请一定不要使用以前备份的配置来恢复刚刷机后，又进行过恢复出厂的路由器。使用\[导出设置]备份的配置文件，一般进行了一些设置导致路由器出了问题，将路由器恢复到原厂默认值后，再用备份配置进行恢复，使用备份配置前后，路由器都是同一个版本。

如何恢复出厂：进入 `[系统管理]` – `[恢复/导出/上传设置]` ，**点击恢复按钮，记住不要勾选恢复按钮右侧的选择框！！**

### 格式化 JFFS {#format-jffs}

格式化 JFFS 就是对 JFFS 分区进行格式化，这样会删除 JFFS 分区中储存的所有文件，而不影响路由器的其它配置。在梅林改版固件中，因为软件中心就是储存在 JFFS 分区中的，所以格式化 JFFS 可以快速的清除当前 JFFS 分区中的软件中心文件，从而实现软件中心的重置。当然，格式化 JFFS，也会删除固件在 JFFS 分区中存放的一些文件，如 SSL 证书、流量分析数据等。如果你只想重置软件中心，而不伤害其它 JFFS 分区中的文件，你可以参考下文\[重要命令]中的\[软件中心重置]或\[删除软件中心]。

如何格式化 JFFS：在梅林/梅林改版固件中，在\[系统管理]–\[ 系统设置]内勾选 `Format JFFS partition at next boot` （中文意思就是：下次重启的时候格式化 JFFS 分区），然后点击 `应用本页面设置` ，成功后点击顶部 `重启` 按钮重启路由器。路由器重启过程中就会对 JFFS 分区进行格式化，重启完成后， `Format JFFS partition at next boot` 将自动变为否，以免下次路由器重启的时候，JFFS 分区再次被格式化。

### JFFS 挂载状态 {#jffs-mount-status}

JFFS 分区是华硕路由器的一个重要分区，因为该分区的可读写的特性，华硕官方会利用其存放一些数据库、图片、甚至程序等文件。比如华硕路由器的\[Traffic Analyzer 流量分析]功能，其数据库就存放在 JFFS 分区，还有\[网络地图]里的在线客户端自定义的图标文件，远程访问的证书文件等等，都存放在 JFFS 分区。JFFS 分区

通过 SSH 连接到路由器后台后输入命令（如果不知道如何使用 SSH 执行命令，可以参考下文的\[SSH 使用]教程）： `mount | grep -w /jffs` ，如果看到类似 `/dev/mtdblock9 on /jffs type jffs2 (rw,noatime)` 这样的输出，说明/jffs 成功挂载了，挂载设备为 `/dev/mtdblock9` 。当然，在梅林/梅林改版固件中，只需要进入`Tools - Sysinfo`页面，在 `JFFS` 一栏即可看到 JFFS 挂载状态，如果成功挂载，将会显示 JFFS 已用容量和总容量，如果没有挂在，则会显示 *umounted* 字样。因为软件中心是储存在 JFFS 中的，所以如果软件中心进入后是白色空白页面，一般来说 JFFS 分区的挂载就出现了问题。遇到这种情况，可以参考常见问题板块中的\[Q4：刷机后软件中心一片空白]来尝试解决。

### JFFS 分区备份/还原 {#backup-and-restore-jffs}

使用梅林/梅林改版固件的朋友，可能知道梅林固件相对于华硕官方固件，多了 JFFS 分区备份/还原功能，其本质就是将 JFFS 分区内的所有文件进行打包，然后在需要的时候进行还原。此功能在某些时候会特别管用，比如某个版本固件升级后，JFFS 分区容量被缩小了，这会导致储存在 JFFS 分区靠后的文件块被强行清除，从而导致 JFFS 分区内文件丢失、文件损坏。而使用 JFFS 分区备份/还原功能，在每次固件升级前先备份一次 JFFS 分区内容，在固件升级后，如果 JFFS 分区内容出现丢失、损坏等，再用备份进行还原即可规避上面的问题。当然如果是梅林改版固件的话，只进行还原还是不够的，因为刚还原后，软件中心相关程序虽然还原了，但是其进程还没有启动，此时重启一次路由器，才能让软件中心在还原后正常工作。

## SSH 使用 {#ssh-access}

1. **启用 SSH：** 在路由器后台的 `[系统管理]` - `[系统设置]` 里，将\[启用 SSH]更改为 `LAN only` ，将端口号设置为 `22` 或者其它数字，点击页面下方 `[应用本页面设置]` 保存更改；
2. **登录 SSH：** 下载 SSH 软件，如 <Pill icon="devicon:putty" name="putty" link="https://the.earth.li/~sgtatham/putty/0.74/w64/putty.exe" /> ，运行后在 Host Name（or IP address）处输入路由器的局域网 IP 地址，如：`192.168.50.1` 或者 `router.asus.com` ，端口为上一步中\[SSH 端口]中的端口，如果没有更改，则为 `22` ，点击\[Open]，如果有弹出 Putty Security Alert，点击\[是]；在界面的 `login as` 后面输入 `路由器的登录帐号` 后回车，然后在 password: 提示符后输入 `路由器登录密码` 后回车（记住：输入密码的时候不会有任何显示，输入完成后直接回车即可），完成登录。
3. **键入命令：** 键入命令时建议将系统输入法切换为英文，也可以复制命令后使用右键即可粘贴命令，粘贴完毕后按回车即可执行命令。
