# OECT刷入飞牛OS

<!--more-->
> [!abstract]-
> 目前飞牛OS的OECT版本正在内测，知道最新版本的后续版本支持OTA就刷入看看。

## 前置准备
如果设备已刷入 `Armbian`，可直接通过开发工具烧录；若为原厂系统，需先参考 B 站视频进入 `Maskrom` 模式（拆机短接）。

> [!warning]
> 风险提示：拆机有风险，请勿大力出奇迹。


资源获取：
- **工具包**：[123云盘](https://www.123865.com/s/rlO3jv-PFfnH?pwd=gaAD#)
- **飞牛固件 (OECT 适配版)**：[恩山论坛原帖](https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=8460004)

## 固件烧录流程
1. 刷入瑞芯微驱动，打开瑞芯微开发工具，取消勾选 1 的 `loader` 选项。
2. 三个点选择刷入的固件。
3. 点击执行，等待进度百分百，就可以断开连接。
4. 插入网线和电源适配器，在路由器后台查看 `Debian` 的设备，输入IP就跳转到飞牛的后台了。

![开始刷入](https://1mg.1144514.xyz/2026/01/20260113013552931.webp )

![刷入完成](https://1mg.1144514.xyz/2026/01/20260113013552933.webp)

![web界面](https://1mg.1144514.xyz/2026/01/20260113013552934.webp)

![检测到更新，但是OTA没反应](https://1mg.1144514.xyz/2026/01/20260113013552935.webp)


## 系统迁移：从 eMMC 到 SSD
为什么需要系统迁移呢？
因为系统刷入的是 OECT 自带的 emmc。
1. 自带的 emmc 速度没有自己硬盘读写速度快。
2. emmc 空间有限，系统默认将下载的东西放在 根目录中，而根目录在 emmc中。
3. 如果使用 emmc，使用docker 的时候需要迁移docker，配置维护麻烦。（这个我在用 armbian 的时候折腾了挺久）
4. 如果 eMMC 读写过度损坏，整个主板可能就报废了；如果 SSD 坏了，你只需要换块硬盘。~~这何尝不是一种raid~~
5. 可以开启 swap（如果是emmc 对寿命影响挺大，而且由于读写速度，swap 开启后可能并不明显）。

这里用的是恩山大神 [xxos](https://www.right.com.cn/forum/?904855)的脚本。
```shell
sudo -i
```

```shell
curl -ksSL https://linux.vvvvvv.de5.net/sh/xxfn-tool.sh -o /usr/local/bin/xxfn-tool && chmod +x /usr/local/bin/xxfn-tool && xxfn-tool
```

如果上面链接下载失败可以使用下面备用节点
```shell
curl -ksSL https://us1.vvvvvv.de5.net/sh/xxfn-tool.sh -o /usr/local/bin/xxfn-tool && chmod +x /usr/local/bin/xxfn-tool && xxfn-tool
```

脚本启动命令
```shell
xxfn-tool
```

![](https://1mg.1144514.xyz/2026/01/20260113013552936.webp)

这个脚本逻辑是这样，机器上电 -> 读取 eMMC 的 `mmcblk0p1`获取启动指令 -> 启动指令告诉内核去 `sda1` 寻找系统文件 -> 系统在 SSD 上运行。
```
root@fnos:~# lsblk
NAME                                              MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
sda                                                 8:0    0 447.1G  0 disk
├─sda1                                              8:1    0    32G  0 part  /
└─sda2                                              8:2    0 415.1G  0 part
  └─md0                                             9:0    0   415G  0 raid1
    └─trim_cbe551aa_7f8d_4f9b_92b2_b7ec31c40f5e-0 253:0    0   415G  0 lvm   /vol1
mmcblk0                                           179:0    0   7.3G  0 disk
├─mmcblk0p1                                       179:1    0   255M  0 part  /vol00/RemovableDisk
│                                                                            /boot
└─mmcblk0p2                                       179:2    0   6.8G  0 part  /vol00/RemovableDisk_1
mmcblk0boot0                                      179:32   0     4M  1 disk
mmcblk0boot1                                      179:64   0     4M  1 disk
zram0                                             252:0    0     0B  0 disk
```

这个脚本还可以web文件上传，然后用 dd 命令刷入固件。

## 基础环境配置
Linux 换源，docker 换源
```shell
bash <(curl -sSL https://linuxmirrors.cn/main.sh)
bash <(curl -sSL https://linuxmirrors.cn/docker.sh)
```
这一步，我家里网络 `curl` 出现问题。
能获取正确 DNS，使用 `mtr` 发现是路由中被运营商丢包。
后面 `export http_proxy=”192.168.1.3:10808"`，在`v2rayn` 里面 `设置` ->`路由` ，强制`linuxmirrors.cn` 走`v2ray`代理 解决。

开启 bbr+fq
```shell
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
```

## 参考
1. [OEC ARM飞牛OTA最强工具-多系统切换 升级 克隆 LED灯 修改MAC 一键工具【原创】-京东云、网心云、玩客云等PCDN云设备-恩山无线论坛 - Powered by Discuz!](https://www.right.com.cn/forum/thread-8459910-1-1.html)
2. [【更新】OECT飞牛固件294版本\|支持OTA更新\|影视-相册-网盘离线安装包-京东云、网心云、玩客云等PCDN云设备-恩山无线论坛 - Powered by Discuz!](https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=8460004&highlight=OECT%2B%E9%A3%9E%E7%89%9B)
3. [网心云oec/oec tubro 刷飞牛os教程\_哔哩哔哩\_bilibili](https://www.bilibili.com/video/BV15cBYBLEU1/?spm_id_from=333.337.search-card.all.click&vd_source=75ba9ed7e36ca38708e502a1d1eac076)

---
{.awesome-hr}
后面使用再看看和 armbian 的 casaOS 区别在哪。


---

> 作者: Chifan  
> URL: https://eo.chifan.de/posts/oect-flash-to-fnos/  

