Skip to content

本篇主要介绍电视盒子刷机并 root 后,刷入当贝桌面镜像。后又刷入 armbian 系统,并从 U盘启动 armbian,最后刷入 emmc。

之前有过了解树莓派,又贵配置又低。在了解电视盒子后,无论是 CPU 主频、核数、内存都香太多。最重要的是便宜、便宜、便宜。

各类Amlogic S905 的盒子,支持 ARM 64位架构【arrch64】,刷入 armbian 系统,可以当作一台常开的小服务器使用。并且各类 arrch64 应用非常多,开发工具也很多(Java、Python)。

电视盒子信息

魔百盒:CM311-1as ZG

CPU: 晶晨 Amlogic S905L3A

硬件信息:2G 内存 + 8GB emmc【2USB2.0 + 1 HDMI】

网络:百兆网口

无线网络:蓝牙 + 双频 WIFI(2.4G & 5G)

经过了解,推荐的电视盒子:

  1. 魔百盒 CM311-1as ZG 蓝牙&WIFI
  2. 魔百盒 CM311-1a-YST 蓝牙&WIFI
  3. E900V22C/D 蓝牙&WIFI
  4. M401A 蓝牙 不带WIFI
  5. M411A 蓝牙 无WIFI 唯一发现的2G+16G的配置
  6. UNT403A 蓝牙&WIFI
  7. UNT413A 蓝牙&WIFI
  8. ZTE-B863AV3.2-M, B863AV3.1-M2 蓝牙&WIFI

s905l3a-b 相对于 s905l3a 有杜比音效,其他无异,如果作为 armbian 则有无杜比其实无甚作用。

s905l3a 相对于 s905l3/s905l3b 等性能较强,网上有相关的评比。购买盒子建议选择:s905l3a 的U。

注意: s905l3a-b/s905l3a/s905l3b 分别是 3 个型号,一定要清楚。

电视盒子刷机,并 Root

电视盒子刷机

默认购买没有经过 root 的电视盒子,一般无法通过 adb 连接,也不能安装其他桌面 和 APP。需要先刷机,并 root。

不过各类品牌的电视盒子,root 的方法并不相同。可以再某鱼买盒子让店主来 root,这样省的自己去研究。

ADB,Root

之前做的,没有拍照记录下来。记得是 update.zip,recovery.zip, **.xml,刷机包, 放到 U盘 根目录下。U 盘格式化为 FAT32 格式,插入到电视盒子。

启动盒子疯狂按遥控器某键,进入 recovery 模式,选择 U 盘中的刷机包,开始刷机。

电视盒子刷入镜像

建议去买个刷机神器吧,不贵。如果非要去研究短接点,还需要螺丝刀、镊子等工具,重要的还能要看懂一些电路,找到短接点(各类盒子的电接点并不相同)。

短接的时候,手还要稳,一会短接一会掉了,无形中给自己制造了坑。

下面我就以刷机神器和双 USB 公头作为工具。

usb-burning-tool-choice-image

选中擦除 flush

选中擦除 bootloaderusb-burning-tool-process

烧录完成后,点击停止按钮,再断开盒子 USB 和 关闭电源。

usb-burning-tool-success

镜像烧录完成后,重新启动盒子,第一次启动时间较长一些,会自动进入系统【如当贝桌面】。进入系统后,可从网络设置中找到盒子的 IP 地址。 可在开心电视助手,通过 ip 远程连接到盒子。

可在开心电视助手远程看到盒子的画面,首页列举出盒子的硬件信息。

kaixindianshi-home

通过管理可远程安装 App。

kaixindianshi-install-app

现在可以通过盒子遥控器可以愉快的看电视了,或者安装各类 TV 应用看网络电视。纵享丝滑!

刷入armbian【岸边】Linux 系统

写入 armbian 镜像

armbian 系统地址:https://github.com/ophub/amlogic-s9xxx-armbian/ 可按照首页盒子类型选择镜像。如果盒子不再上述列表,可能目前还不支持,如果是列表中的 cpu 类型,可能需要一些爬坑,不适合小白刷机。

在看了上述支持列表,如果购买盒子,可按照列表中的选择,可以避坑。

armbian 系统下载地址:https://github.com/ophub/amlogic-s9xxx-armbian/releases

系统说明:

  1. noble: Ubuntu 24
  2. jammy: Ubuntu 22
  3. bookworm: Debian 12
  4. bullseye: Debian 11

armbian github编译的频率很高,根据观察基本每周一个编译版本。每个系统版本又有多个内核的适配版本,本次我选择的是:Armbian_24.11.0_amlogic_s905l3a_bookworm_6.6.63_server_2024.12.01.img.gz

armbian-os-images

制作U盘镜像,从 U盘启动 armbian

选择USB2.0 的U盘,或者选择采用mini SD卡,并用 SD卡读卡器作为 U盘(我就是这种方法,推荐)。

采用 rufus 或 balenaEtcher 制作U盘镜像。具体制作非常简单,网上有很多教程,这里就不赘述了。

写入 U 盘镜像后,用文本编辑器打开 uEnv.txt 文件,选择合适的 dtb 文件。

shell
LINUX=/zImage
INITRD=/uInitrd
FDT=/dtb/amlogic/meson-g12a-s905l3a-cm311.dtb
APPEND=root=UUID=f1cadcbc-139f-463c-afb1-11009939acda rootflags=data=writeback rw rootfstype=ext4 console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 max_loop=128 cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1

dtb/amlogic 目录下找到适合盒子的 dtb 文件,修改 FDT 的值。

制作好 armbian U盘镜像,插入到离网口较近 的 USB 接口(网上的教程有这么要求,我没测试其他口是否可行,就不找麻烦了)。选择从 SD卡启动。

从 SD 卡启动系统有2中方式:

  1. 从开心电视助手,选择从 SD 卡启动。

kaixindianshi-sd-boot

  1. 从开心电视助手,安装U盘启动APK,然后用遥控器打开 APP 从 SD 卡启动;

dianshi-libre-elec

从 SD卡启动前,最好先插入键盘,键盘建议选择 USB线键盘,不建议采用2.4G无线键盘,有的无法识别。

盒子上2个 USB 接口,一个插入键盘,一个插入 U 盘,另外接入 HDMI 显示器或者插上电视。然后盒子开机,开机后显示器会花屏几秒,然后进入 armbian 系统。

经过10多秒的字符滚动后,进入系统,首先是选择 shell 类型,可选择 bash 。然后是创建 root 的密码,从键盘输入。其他可以不用输入,直接 CTRL+C 跳过。

然后就可进入到 armbian 系统。

用户可输入 linux 命令进行操作,比如输入 neofetch,查看系统信息。

armbian-neofetch

刷入 emmc

当前 armbian是从 U 盘启动,并未写入到盒子上,因此重启后,系统就不是 armbian 了。需要执行命令写入到盒子的 emmc。

shell
armbian-install

选择盒子类型,可在网上查询。

armbian-emmc-choice

选择 emmc 文件系统类型,直接 ext4 即可。

armbian-emmc-fstype

等待约 2 分钟左右,系统刷入 emmc,然后 reboot 重启盒子。reboot 命令执行数秒后在显示器黑色时快速拔掉 U 盘,则从 emmc 正常重启。

或者: shutdown -h now 进行正常关机,然后从盒子上拔掉 U 盘,再重启电源进行重启。

重启后再次进入,需要输入登录账号 root 和密码。

进入系统后,可选择 apt update 等更新源。

shell
apt update

可安装一些常用工具软件:

shell
apt install vim curl git tree -y
apt install net-tools wireless-tools -y

armbian-config 系统配置

armbian 通过 armbian-config 进行系统各类配置。

shell
armbian-config
The current Armbian 24.11.0 rebuild (bookworm) is supported.
Loaded Runtime variables...
Loaded Dialog...
Loaded Docs...
Loaded System helpers...
Loaded Network helpers...
Loaded Software helpers...

armbian-config

SSH远程进入 armbian

检查 sshd 服务是否正常。

shell
netstat -an |grep 22
lsof -i tcp:22
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    1504 root    3u  IPv4  19243      0t0  TCP *:ssh (LISTEN)
sshd    1504 root    4u  IPv6  19245      0t0  TCP *:ssh (LISTEN)

如果 22 端口正常,则可通过 ssh 工具远程登录系统。

armbian-ssh

如果没有 sshd 服务,则通过 apt 安装。

shell
apt install openssh-server -y
systemctl restart sshd

删除armbian 系统,重新刷入其他镜像

体验了 armbian 系统后,如果想刷回当贝等系统,可直接删除 armbian 系统的引导分区(/boot)。

shell
root@armbianserver:~# df -h
文件系统        大小  已用  可用 已用% 挂载点
udev            831M     0  831M    0% /dev
tmpfs           194M  5.6M  189M    3% /run
/dev/mmcblk2p2  6.2G  2.7G  3.5G   44% /
tmpfs           968M     0  968M    0% /dev/shm
tmpfs           5.0M  8.0K  5.0M    1% /run/lock
tmpfs           968M   36K  968M    1% /tmp
/dev/mmcblk2p1  510M  162M  349M   32% /boot
/dev/zram1       47M  624K   43M    2% /var/log
tmpfs           194M     0  194M    0% /run/user/0

## 删除 /boot 分区文件
cd /boot
rm -rfv *

armbian-killos

删除了上述分区文件,电视盒子重启后无法进入系统。

然后采用双头 USB、刷机神器重新刷入电视盒子系统,则重新作为电视盒子使用。

参考