无头电视盒子改服务器调优记录

海思 HI3798MV100 盒子调优记录

2026/7/19

环境

  • 芯片: HI3798MV100 (hi3798mdmo1g)
  • 系统: Ubuntu 20.04 LTS (海纳思 ecoo 第三方固件)
  • 内存: 1GB
  • 存储: 6.4GB eMMC
  • IP: 192.168.31.82

串口连接

  • 使用 FT232 USB-TTL 转串口
  • 波特率: 115200
  • 主机: screen /dev/ttyUSB0 115200

⚠️ 翻车教训: 不要用 dd 改 bootargs

直接 dd 写 /dev/mmcblk0p2(bootargs 分区) 极其危险:

  • CRC 校验不对 → U-Boot 用默认值启动
  • 参数写错(如 mmz=ddr,0,0,0) → 盒子变砖
  • 备份存在盒子里 → 砖了也拿不到

正确方法: 串口进 U-Boot(fastboot) 改环境变量

bootargs 调优 --- 释放 mmz 内存

原始状态

  • mem=1G mmz=ddr,0,0,256M --- 解码器吃掉 256M
  • 系统可用: ~723MB

优化: mmz 从 256M → 16M

在 fastboot 提示符执行:

复制代码
setenv bootargs_1G mem=1G mmz=ddr,0,0,16M vmalloc=500M
saveenv
run bootcmd

效果: 系统可用从 723MB → ~960MB,省 240MB

其他模板(可选)

  • 512M 内存: bootargs_512M
  • 768M 内存: bootargs_768M
  • 1G 内存(本机): bootargs_1G
  • 2G 内存: bootargs_2G
  • 3840M(仅限 4G 内存): bootargs_3840M

改 MAC 地址

复制代码
setenv ethaddr AA:BB:CC:DD:EE:FF
saveenv

磁盘清理

  • swapfile 513M --- swapoff /swapfile && rm -f /swapfile (0 使用纯浪费)
  • apt 缓存 --- apt clean
  • 日志 --- journalctl --vacuum-time=3d
  • 清理后从 1.7G → 1.1G 使用量

分区表(原始, 连续排列)

复制代码
fastboot   0M    1M
bootargs   1M    1M
baseparam  2M    4M
pqparam    6M    4M
logo      10M    4M
kernel    14M   20M
recovery  34M   64M
backup    98M  512M
rootfs   610M   -(剩余)

分区连续无间隙,无法合并。 要合并需重刷全盘,风险不划算。

反后门 --- 清理 ecoo 私货

海纳思(ecoo.top)固件夹带大量私货:

已清除的服务/包

服务 作用 状态
register-api 开机上报硬件ID到 register-api.ecoo.top:8000 已删
frpc 反向 SSH 隧道到 slitaz.tk:7000 已删
histb-init 首次开机自动执行脚本框架 已删
histb-hello 每此登录显示版权的 MOTD 横幅 已删
histb-config 系统配置工具 已删
bootargs-histb 修改 bootargs 工具 已删
vipupgrade "专业版"付费墙 已删
vlmcsd KMS Windows 激活服务器(盗版) 已删
install-* 一键安装脚本(占位) 已删
profile.d 脚本 登录时弹出版权声明 已删
ddnsto 远程隧道 已删
kaitong-frp FRP 开通工具 已删

保留的工具(可能有用)

工具 用途
Docker + install-docker 容器
tailscale VPN
ttyd Web 终端
samba / vsftpd / nfs-server 文件共享
transmission 下载
filebrowser / alist 文件管理
aliyunpan 云盘同步
aria2 下载

清理后状态

  • 监听端口: 仅 22(SSH) + 53(DNS)
  • 运行服务: 仅系统标准服务
  • 磁盘: 1.1G/6.4G 已用, 5.1G 空余
  • 内存: ~960MB 可用
相关推荐
一个天蝎座 白勺 程序猿7 小时前
KingbaseES数据库归档重做日志文件管理:从配置到运维的实战指南
运维·数据库·oracle·kingbasees·金仓数据库
天诰10 小时前
SA-K-11 检索会消失吗与四个未解问题
java·服务器·人工智能·python·机器学习·ai编程
La Pulga11 小时前
【FreeRTOS源码学习笔记】任务延时列表
笔记·mcu·学习·嵌入式·freertos·实时操作系统
2035去旅行11 小时前
bootcmd 详细讲解
linux·嵌入式·arm·soc
分布式存储与RustFS11 小时前
镜像仓库的层别堆本地盘:用 RustFS 给 Docker Registry 当 S3 后端
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
蓝天居士11 小时前
EtherCAT从入门到精通(7)
机器人·嵌入式·ethercat
陈希12312 小时前
Linux 防火墙配置实战:firewalld、iptables 与云安全组
linux·运维·服务器
女神下凡12 小时前
芯参谋(95):嵌入式文件系统_开发指南
linux·服务器·arm开发·驱动开发·设计规范
@兽血沸腾13 小时前
Windows系统安装Jenkins部署应用至远程Windows服务器操作指南
运维·服务器·jenkins
蓝天居士13 小时前
EtherCAT从入门到精通(10)
机器人·嵌入式·ethercat