9.8 KiB
中兴B863AV3.2-M 刷 Armbian + CUPS打印服务 完整教程
风险警告
刷机前请务必阅读
- 刷机会清除原有系统,无法恢复运营商IPTV功能
- 操作失败可能导致变砖,需要TTL救砖
- 建议有一定Linux基础再操作
- 请确保有备用设备,刷机过程中断电可能导致不可逆损坏
目录
设备信息
| 项目 | 信息 |
|---|---|
| 型号 | 中兴 B863AV3.2-M |
| 芯片 | 晶晨 S905L3A |
| 设备树 | meson-g12a-s905l3a-m401a.dtb (编号306) |
注意: B863AV3.2-M有两种主控版本,本教程仅适用于S905L3A版本。刷机前请确认芯片型号。
第一部分:刷机准备
1.1 所需工具
| 工具 | 说明 |
|---|---|
| 公对公USB线 | 连接盒子与电脑 |
| U盘 x2 | 8G以上,建议有一个USB2.0的 |
| HDMI短接器(可选) | 替代手动短接 |
| 镊子/导线 | 用于短接 |
| 刷机软件 | USB Burning Tool v2.2.0 |
| 写盘工具 | Rufus 或 balenaEtcher |
1.2 下载资源
1. Armbian镜像
从 https://github.com/ophub/amlogic-s9xxx-armbian/releases 下载
- 选择带
s905l3a或s905l3-cm211字样的镜像 - 推荐 Debian Bookworm server 版本
2. 安卓底包(可选)
用于恢复或开启ADB,建议从网盘或论坛获取对应型号的底包
第二部分:刷机步骤
2.1 拆机找短接点
- 拧开机器背面两颗螺丝(在防滑垫下)
- 用拆机片从后面划开取出主板
- 找到短接点 C79A8
提示: 如果有HDMI短接神器,可以跳过拆机,直接插HDMI口
2.2 线刷安卓底包(可选但推荐)
- 打开 USB Burning Tool
- 导入安卓刷机包
- 勾选「擦除Flash」和「擦除Bootloader」
- 用镊子短接 C79A8,不要松手
- 插入双公头USB线到盒子靠近网口的USB口
- 接通盒子电源
- 软件显示连接成功后松开短接
- 等待刷机完成(约3-5分钟)
2.3 开启ADB
刷入安卓底包后,需要开启ADB才能从U盘启动Armbian。
方式一:二维码验证
- 进入 设置 → 关于 → 连续点击「版本号」7次
- 返回设置,进入「开发者选项」
- 出现二维码验证,使用「中兴STB工具」扫描
- 输入工具返回的验证码
- 开启「USB调试」和「网络ADB调试」
方式二:随机码验证
- 进入 设置 → 高级设置
- 记录屏幕上显示的随机码
- 使用「算号器」计算开发者密码
- 输入密码进入开发者选项
- 开启「USB调试」和「网络ADB调试」
验证ADB是否开启: 在同一局域网的电脑上执行
adb connect 盒子IP,返回connected表示成功
2.4 制作Armbian启动U盘
- 使用 Rufus 将 Armbian 镜像写入U盘(选择DD模式)
- 写入完成后,打开U盘根目录
- 编辑
uEnv.txt文件 - 找到
FDT=行,修改为:FDT=/dtb/amlogic/meson-g12a-s905l3a-m401a.dtb - 保存并安全弹出U盘
2.5 从U盘启动Armbian
将U盘插入盒子靠近网口的USB接口,然后在电脑上执行:
adb connect 192.168.x.x # 替换为盒子IP
adb shell reboot update # 重启进入U盘系统
提示: 如果无法启动,尝试换一个USB2.0的U盘
2.6 写入eMMC
成功从U盘启动后,通过SSH登录Armbian:
- 默认用户:
root - 默认密码:
1234
执行安装命令:
armbian-install
按提示操作:
- 选择 306: M401A,UNT403A,B863AV3.2-M
- 文件系统选择 ext4
- 等待写入完成,根据提示拔掉U盘并重启
如果写入失败,尝试以下步骤:
# 清除分区表
dd if=/dev/zero of=/dev/mmcblk2 bs=4096 count=4
# 重新安装
armbian-install -m yes
第三部分:系统初始化
3.1 首次登录设置
从eMMC启动后,首次登录会提示:
- 修改root密码
- 创建普通用户(可跳过)
- 选择默认Shell
3.2 网络配置
设置静态IP(推荐用于服务器场景)
# 使用图形界面配置
nmtui
或手动编辑配置:
nano /etc/network/interfaces
3.3 基础优化
# 设置时区
timedatectl set-timezone Asia/Shanghai
# 更新系统
apt update && apt upgrade -y
# 减少swap使用,延长eMMC寿命
echo 'vm.swappiness=10' >> /etc/sysctl.conf
sysctl -p
第四部分:安装CUPS打印服务
一键安装(推荐)
提供一键脚本,自动完成 CUPS 安装和配置:
# 方式一:直接运行(最简单)
curl -fsSL https://gitee.com/yu-yon/S905L3A/raw/master/setup_cups.sh | bash
# 方式二:使用wget
wget -qO- https://gitee.com/yu-yon/S905L3A/raw/master/setup_cups.sh | bash
# 方式三:先下载再执行(更安全)
curl -fsSL https://gitee.com/yu-yon/S905L3A/raw/master/setup_cups.sh -o setup_cups.sh && chmod +x setup_cups.sh && ./setup_cups.sh
脚本功能:
- 自动安装 CUPS 和 Avahi
- 交互式选择打印机驱动
- 自动配置局域网访问权限
- 自动启动服务并设置开机自启
- 检测 USB 打印机连接状态
如果想手动安装,请继续阅读以下步骤。
4.1 安装CUPS和依赖(手动)
apt update && apt upgrade -y
apt install cups avahi-daemon -y
4.2 安装打印机驱动
根据打印机品牌选择安装:
# HP打印机
apt install hplip -y
# 爱普生
apt install printer-driver-gutenprint -y
# 兄弟
apt install printer-driver-brlaser -y
# 通用驱动(推荐都装)
apt install printer-driver-all -y
4.3 配置CUPS允许远程访问
nano /etc/cups/cupsd.conf
修改以下内容:
# 修改监听地址(允许所有IP访问)
Listen 0.0.0.0:631
Listen /run/cups/cups.sock
# 启用网络浏览
Browsing Yes
BrowseLocalProtocols dnssd
# 修改访问权限(允许所有网络)
<Location />
Order allow,deny
Allow all
</Location>
<Location /admin>
Order allow,deny
Allow all
</Location>
<Location /admin/conf>
AuthType Default
Require user @SYSTEM
Order allow,deny
Allow all
</Location>
说明: 内网环境无公网IP,可直接使用
Allow all。如需限制访问,可改为Allow from 192.168.*.*等。
4.4 将用户添加到打印组
usermod -aG lpadmin root
4.5 启动服务
systemctl restart cups
systemctl enable cups
systemctl restart avahi-daemon
systemctl enable avahi-daemon
4.6 访问Web管理界面
浏览器打开: https://盒子IP:631
用户名: root
密码: 你的SSH密码
注意: CUPS默认使用HTTPS,浏览器可能提示证书不安全,选择继续访问即可
4.7 添加打印机
- 点击 Administration → Add Printer
- 选择你的USB打印机(Local Printers下)
- 填写打印机名称和描述
- 勾选 Share This Printer
- 选择对应的驱动型号
第五部分:客户端连接
Windows
设置 → 蓝牙和其他设备 → 打印机和扫描仪 → 添加打印机
如果自动发现不到,手动添加:
http://盒子IP:631/printers/打印机名称
macOS / iOS
自动通过AirPrint发现(需要avahi-daemon正常运行)
Linux
# 使用 IPP 协议添加
lpadmin -p 打印机名 -E -v ipp://盒子IP:631/printers/打印机名
Android
安装「Mopria Print Service」或「CUPS Printing」应用,可自动发现打印机
常见问题排查
| 问题 | 可能原因 | 解决方案 |
|---|---|---|
| USB Burning Tool 识别不到设备 | 驱动未安装/短接失败 | 1.安装LibUSB驱动 2.换USB口 3.确认短接成功 |
| U盘启动后黑屏 | 设备树错误/U盘兼容性 | 1.检查uEnv.txt配置 2.换USB2.0 U盘 3.TTL查看日志 |
| armbian-install 选项没有306 | 脚本版本过旧 | 运行 armbian-update 更新脚本 |
| eMMC写入失败 | 分区表损坏 | 执行 dd if=/dev/zero of=/dev/mmcblk2 bs=4096 count=4 |
| CUPS打印机不显示 | USB未识别 | 运行 lsusb 确认识别,检查USB线 |
| Windows找不到打印机 | 防火墙/网络问题 | 1.关闭防火墙测试 2.手动输入IPP地址 |
| macOS无法发现AirPrint | avahi服务问题 | 运行 systemctl status avahi-daemon 检查状态 |
| 打印乱码 | 驱动不匹配 | 在CUPS中更换其他驱动测试 |
TTL调试接线
如遇启动问题,建议连接TTL查看日志:
| TTL线 | 盒子 |
|---|---|
| GND | GND |
| RX | TX |
| TX | RX |
波特率: 115200
注意事项
- 刷机有风险,建议先备份原系统
- 如果U盘无法识别,换一个USB2.0的U盘
- 建议连接TTL调试观察启动日志排查问题
- CUPS驱动建议用apt安装,不要从厂商网站下载
- B863AV3.2-M有两种主控版本,确认是S905L3A
- 首次启动Armbian可能较慢,请耐心等待
测试环境
| 项目 | 版本 |
|---|---|
| Armbian | Debian Bookworm (建议使用最新Release) |
| 内核 | 6.1.x LTS |
| 测试日期 | 2024年 |