百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

OESPlus刷机终于趋于完美了!全面的图文教程在此

nanshan 2025-08-03 06:46 8 浏览 0 评论

“大家好,我是拆墙设计师Jony,一个爱好广泛的建筑师,喜欢Web技术、AICG、玩NAS,乐于分享经验,高效工作,快乐生活!”


最近网心云OES系列一代的OES边缘计算盒子,网上流出不少。恰好近期近乎完美的刷机固件和刷机方法资源也公开了,看了官网对比主要硬件没有区别,于是提前下好了刷机固件,下手搞了一台OESPlus。

但是我没搞清楚CPU型号有区别,当我发现OESPlus的CPU是S922x,和OES的A311D不一样,网上教程能刷机固件资源也不通用的时候,我已经擦了flash和BootLoader刷进去了OES的ubuntu底包。

然后按照OES刷机方法,死活连不上系统,而且原系统也进不去了。就这样把它变成了砖。

详细拆机照片见: 你的下一台NAS,可能是块砖头!OESPlus从入手到变砖!

网上找了一圈,发现这个OESPlus还真是难搞定,刷机资源几乎没有,更别提教程了。恩山大佬@kaitian888 于5.21抛出来一个OESP的ubuntu设备树,然后5.28号更新了一版就没再发进展了。

无奈只好到放出OES固件的@ophub大佬的github项目下提了个issues,希望能支持一下OESP,结果OP大佬竟然和我一样,也被官网对比表误导了,以为两款是一样的CPU

好在一石激起千层浪,看来也有不少网友在折腾OESP呢,有网友分享了一个OESP的刷机固件资源,也不知道出自哪位大佬之手,反正我的已经变砖了,索性刷下看看。

这个OESPlus刷机方法别出心裁,用了两个底包接力的方法刷入,这种刷法我还是第一次见。按照网友分享的资源里的说明刷完底包,竟然可以进去了,OES系列刷机,只要搞定底包系统,基本上后面就简单了,最起码能U盘运行以及写入EMMC了,剩下的就是主系统设备树的完善。

这两天这个issues下面讨论和反馈都很积极,OP大佬也连夜打黑工编译好了OESPlus的armbian和OpenWrt固件,集成并更新了oesp的设备树文件,简化了刷机步骤。但是目前设备树仍然不完善,网口指示灯显示还有点问题,正在调试。但是固件功能上已经接近完美了。

O大在帖子里也已经写了刷机方法,鉴于OSPLus刷机教程很少,全网都没有找到详细的教程,我这里再根据自己的刷机步骤,详细截图补充说明一下,方便新手刷机。

后面大家刷机尽量就用O大新编译的固件刷,原来网友分享的方法是用另一款设备的固件替换成kaitian888大佬的OESP的设备树文件刷机的,可能更新内核之后设备树会被替换回去,导致连不了网。

为了测试O大新编译的固件,我昨天晚上又重新用O大新固件刷了一遍,确认固件主体功能基本上没有问题再来写教程。

OEPSlus刷机步骤

工具准备:

  1. 1. 晶晨刷机工具: amlogic_usb_burning_tool [1] ,建议2.2.4版本以上。用于刷底包。
  2. 2. U盘启动盘制作工具: rufus-4.5_arm64_for-windows.exe [2] ,用于将主刷机固件写入U盘启动。
  3. 3. SSH工具:PuTTY或者Tabby(中文界面,颜值高,推荐): tabby-1.0.223-setup-x64.exe [3]
  4. 4. 镊子或者易弯折的电线一段,用于短接刷机。(仅在长按前面板重启键无法连接晶晨刷机工具时使用)
  5. 5. 双公头USB刷机线。
  6. 6. 质量稳定的空白U盘一只。
  7. 7. 网线一段。

固件准备:

  1. 1. OESPlus刷机底包: wxy-oes-plus-ubuntu-s922x.tar.xz [4] ,刷入底包后,才能绕过原生系统,利用底包系统设置U盘启动,进而启动U盘里的固件包,并将其写入emmc覆盖原系统。
  2. 2. OEPSlus主系统固件:Armbian和Openwrt两大主系统固件,O大都已经编译好了,可以到O大仓库找对应版本下载:

不熟悉Github仓库的小伙伴可能打开链接也找不到固件在哪。选择对应固件下面的【Assets】展开。

另外O大根据所用的系统版本编译了不同的细分版本,分别是 noble jammy bullseye bookworm 等,具体怎么选,这里限于篇幅,就不展开了,有困惑的小伙伴可以自行百度。

展开【Assets】后,选择OESPlus的CPU对应的版本,即包含 s922x-oes-plus 的文件,有两个,一个900多MB的,是主固件文件,另外一个是sha验证文件,用于验证下载的固件包是否完整。建议验证对比一下。以免下载不完整导致刷机出错还查不出原因。

主固件下载之后,需要解压出 *.img 格式的系统映像文件才能刷机,拿压缩包直接加载是加载不了的。

刷入底包:

OESPlus的底包刷入方法比较特别,需要两个底包固件接力烧写。

先安装晶晨刷机工具,并按提示安装驱动,我这里使用的是2.2.4版本。将双公头USB刷机线一头接OESP盒子,一头接电脑;盒子插电并长按前面板重启按钮。出现下图的设备连接成功即连上了盒子,可以进行下一步。

如果始终无法连上,那就只好拆掉后盖,用镊子短接刷机点,短接点位于主板背面,拆掉后盖即可看到, PC download 下面白框内两个触点即是。用镊子连接两个触点,然后再插电,这个有点难度,需要双手协调,稳住哈。

连上之后点软件左上角【文件】-【导入烧写包】,加载准备好的刷机底包里的第一个。按文件说明点开始刷机到过了7%格式化之后,马上点停止。然后同样的步骤加载另第二个img,直到刷到100%成功。

烧写完之后,底包就刷好了。点停止,然后关掉软件,拔掉USB线和电源。

这里两点需要说明,一是一定要刷过完7%再点,刚到7%就点停止再刷下一个会出错;二是默认右侧的擦除flash和擦除BootLoader两个是勾选的,参照OES的教程是不要勾选点击取消掉,但是我第一次误刷OES时就没取消,现在刷OESP固件发现也没问题,所以不用纠结这里。

准备主固件启动盘

将空U盘插入电脑,打开Refuse工具,设备处选择你要写入的U盘,注意不要选错把别的盘格了!在【引导类型选择】后面点击【选择】选你准备好的Armbian或者Openwrt主固件,其他默认即可,然后点底部【开始】等它刷写完,关闭软件,拔掉U盘。

将制作好的U盘插入OESP的USB口。

进入底包系统

进入底包系统有两种方法,网上OES刷机教程大部分没写清楚,导致一些新手连不成功。

  1. 1. 方法一: 如果家里路由器局域网网段是 192.168.1.X ,进路由器确保原有网络没有使用 192.168.1.200 IP地址的设备,如果有,将它改成别的IP,然后将OESP用网线接入路由器。
  2. 2. 方法二: 如果如果家里路由器局域网网段 不是 192.168.1.X ,则需将网线一头插入OESP靠近USB口附近的主网口,另一头插入电脑网口直连电脑,然后按下图步骤,将电脑IP地址改为 192.168.1.X 同网段,IP最后一位随意但是不能是200。

以上两种方法根据自己情况任选其一,电脑使用SSH工具访问 192.168.1.200 ,端口号: 22 ,用户名和密码都是: root 。成功进入底包Ubuntu系统如下:

分别输入两条命令(注意空格),设置从U盘启动,命令如下:

                                              fw_setenv xl_softmode "usermode"
fw_setenv upgrade_step 3

设置成功如下图:

到这一步成功,以后再刷机就方便了,有新的刷机包直接烧入U盘插上开机就进U盘系统了,运行没问题可以直接命令刷入emmc,就不再需要拆机短接了。

U盘启动主固件并烧入EMMC

上面底包U盘启动设置好之后,就可以拔电源重启了。如果是使用第二种连接方法,可以将OESP网线从电脑端拔掉接上路由器了,记得电脑改回路由器IP段。

确认U盘连接好设备,插电开机,过1-2分钟到路由器管理后台找到名为 armbian 的设备,记好Ip地址。

电脑用SSH工具登录armbian系统,用户名: root ;密码: 1234 。成功登录如下:

要求创建密码,可以修改root账户的默认密码,建议及时修改掉。

选择命令行工具,两个都可以,随意。创建普通账户,可以创建,也可以不创建,建议创建一个普通账户,避免直接使用root顶级权限登录的风险。

初始设置完成之后,就进入到armbian系统了。

此时系统运行在U盘上,可以测试一下各个硬件是否正常,包括硬盘识别,网络识别等等。确认没有问题了,就可以将系统写入emmc了。

输入命令 armbian-install ,将系统写入emmc。O大已经集成了OESP的设备树,需要根据提示选择一下设备树文件,最新编译的是 410 .

选择文件系统,都可以,区别自行百度,我这里选择的是 btrfs

等待刷写完成,出现【SUCCESS】提示即成功,按照提示,输入 poweroff 关机,拔掉U盘,插电重启。

重启后可以看到系统容量6.7G左右,即是emmc可用容量。

输入 lsblk 查看分区信息:

输入 cat /etc/ophub-release 查看设备系统信息。

到此OESPlus设备就成功刷好Armbian系统了。Openwrt系统刷机方法类似,这里就不再啰嗦了。接下来好好玩吧,想装什么随意了。

最后说明

感谢恩山@kaitian888,Ophub,以及搞出接力刷机方法的扫地僧大佬,以及众多热心小伙伴,OESPlus终于捋的差不多了!

以上刷机教程截图由于汇聚近期多个版本,可能图中存在固件版本信息不一致的情况,请勿介意。

另外因为OESP刷机教程太少,这里希望尽量详尽,如有疏漏也欢迎留言订正。

据网友反馈,同样是OESP,可能硬件还有细微差别,导致刷同一固件有的人有SATA不识别或者网络不识别等情况,如有请先排除刷机流程和文件问题,再及时反馈。

目前设备树还有些小问题,网络指示灯显示O大还在调试,也可关注我公众号或者O大仓库此话题issues: OESPlus有计划支持吗? [7] ,获取后续更新完善信息。

引用链接

[1] amlogic_usb_burning_tool: https://github.com/ophub/kernel/releases/download/tools/amlogic_usb_burning_tool_v3.2.0_and_driver.tar.gz
[2] rufus-4.5_arm64_for-windows.exe: https://github.com/ophub/kernel/releases/download/tools/rufus-4.5_arm64_for-windows.exe
[3] tabby-1.0.223-setup-x64.exe: https://github.com/Eugeny/tabby/releases/download/v1.0.223/tabby-1.0.223-setup-x64.exe
[4] wxy-oes-plus-ubuntu-s922x.tar.xz: https://github.com/ophub/kernel/releases/download/tools/wxy-oes-plus-ubuntu-s922x.tar.xz
[5] Releases · ophub/amlogic-s9xxx-armbian: https://github.com/ophub/amlogic-s9xxx-armbian/releases
[6] Releases · ophub/amlogic-s9xxx-openwrt: https://github.com/ophub/amlogic-s9xxx-openwrt/releases
[7] OESPlus有计划支持吗?: https://github.com/ophub/amlogic-s9xxx-armbian/issues/3029


注我, 解锁更多工作生活中的新玩法, 一起 发现乐趣, 高效工作,快乐生活!


相关推荐

0722-6.2.0-如何在RedHat7.2使用rpm安装CDH(无CM)

文档编写目的在前面的文档中,介绍了在有CM和无CM两种情况下使用rpm方式安装CDH5.10.0,本文档将介绍如何在无CM的情况下使用rpm方式安装CDH6.2.0,与之前安装C5进行对比。环境介绍:...

ARM64 平台基于 openEuler + iSula 环境部署 Kubernetes

为什么要在arm64平台上部署Kubernetes,而且还是鲲鹏920的架构。说来话长。。。此处省略5000字。介绍下系统信息;o架构:鲲鹏920(Kunpeng920)oOS:ope...

生产环境starrocks 3.1存算一体集群部署

集群规划FE:节点主要负责元数据管理、客户端连接管理、查询计划和查询调度。>3节点。BE:节点负责数据存储和SQL执行。>3节点。CN:无存储功能能的BE。环境准备CPU检查JDK...

在CentOS上添加swap虚拟内存并设置优先级

现如今很多云服务器都会自己配置好虚拟内存,当然也有很多没有配置虚拟内存的,虚拟内存可以让我们的低配服务器使用更多的内存,可以减少很多硬件成本,比如我们运行很多服务的时候,内存常常会满,当配置了虚拟内存...

国产深度(deepin)操作系统优化指南

1.升级内核随着deepin版本的更新,会自动升级系统内核,但是我们依旧可以通过命令行手动升级内核,以获取更好的性能和更多的硬件支持。具体操作:-添加PPAs使用以下命令添加PPAs:```...

postgresql-15.4 多节点主从(读写分离)

1、下载软件[root@TX-CN-PostgreSQL01-252software]#wgethttps://ftp.postgresql.org/pub/source/v15.4/postg...

Docker 容器 Java 服务内存与 GC 优化实施方案

一、设置Docker容器内存限制(生产环境建议)1.查看宿主机可用内存bashfree-h#示例输出(假设宿主机剩余16GB可用内存)#Mem:64G...

虚拟内存设置、解决linux内存不够问题

虚拟内存设置(解决linux内存不够情况)背景介绍  Memory指机器物理内存,读写速度低于CPU一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存...

Elasticsearch性能调优(5):服务器配置选择

在选择elasticsearch服务器时,要尽可能地选择与当前业务量相匹配的服务器。如果服务器配置太低,则意味着需要更多的节点来满足需求,一个集群的节点太多时会增加集群管理的成本。如果服务器配置太高,...

Es如何落地

一、配置准备节点类型CPU内存硬盘网络机器数操作系统data节点16C64G2000G本地SSD所有es同一可用区3(ecs)Centos7master节点2C8G200G云SSD所有es同一可用区...

针对Linux内存管理知识学习总结

现在的服务器大部分都是运行在Linux上面的,所以,作为一个程序员有必要简单地了解一下系统是如何运行的。对于内存部分需要知道:地址映射内存管理的方式缺页异常先来看一些基本的知识,在进程看来,内存分为内...

MySQL进阶之性能优化

概述MySQL的性能优化,包括了服务器硬件优化、操作系统的优化、MySQL数据库配置优化、数据库表设计的优化、SQL语句优化等5个方面的优化。在进行优化之前,需要先掌握性能分析的思路和方法,找出问题,...

Linux Cgroups(Control Groups)原理

LinuxCgroups(ControlGroups)是内核提供的资源分配、限制和监控机制,通过层级化进程分组实现资源的精细化控制。以下从核心原理、操作示例和版本演进三方面详细分析:一、核心原理与...

linux 常用性能优化参数及理解

1.优化内核相关参数配置文件/etc/sysctl.conf配置方法直接将参数添加进文件每条一行.sysctl-a可以查看默认配置sysctl-p执行并检测是否有错误例如设置错了参数:[roo...

如何在 Linux 中使用 Sysctl 命令?

sysctl是一个用于配置和查询Linux内核参数的命令行工具。它通过与/proc/sys虚拟文件系统交互,允许用户在运行时动态修改内核参数。这些参数控制着系统的各种行为,包括网络设置、文件...

取消回复欢迎 发表评论: