QNAP8528 内核模块(容器化编译版)
本项目基于 0xGiddi/qnap8528 二次开发,针对 NAS 系统普遍缺乏编译环境、追求系统纯净的用户,新增 Docker 容器化编译方案。通过映射 NAS 内核资源到容器,实现无侵入式驱动编译与安装,兼容原厂及第三方固件(如飞牛 OS)。
经实测在 TS-453Bmini(刷入飞牛 OS) 稳定运行,理论支持所有 Debian 系 Linux 环境。
🚀 核心优势
容器化编译
◦ 无需在 NAS 本地安装编译工具链,通过 Docker 隔离环境编译,避免污染系统。
◦ 自动挂载 NAS 内核头文件,解决跨平台依赖问题。
一键式脚本
◦ build.sh
脚本覆盖 编译、安装、依赖刷新、驱动加载及开机自启 全流程,减少手动操作风险。
系统洁癖友好
◦ 仅向系统写入必要的驱动文件,支持轻松卸载,适合对系统修改敏感的场景。
📦 前置准备
- 在 NAS 应用中心安装 Docker(若系统支持)。
- 通过 SSH 登录 NAS(需启用 SSH 服务)。
- 克隆仓库:
git clone https://github.com/gzxiexl/qnap8528.git && cd qnap8528
- 赋予脚本执行权限:
chmod +x build.sh
🛠️ 使用步骤
以 root 权限运行脚本(推荐)
sudo ./build.sh
脚本自动执行流程
-
启动 Docker 容器:挂载 NAS 内核头文件及当前目录,构建隔离编译环境。
-
编译驱动:在容器内生成适用于当前 NAS 内核的 qnap8528.ko
模块。
-
安装驱动:将模块复制到系统内核模块目录 /lib/modules/$(uname -r)/extra/
。
-
刷新依赖:执行 depmod -a
更新系统模块数据库,确保驱动可被识别。
-
加载驱动:通过 modprobe qnap8528
立即启用模块,无需重启。
-
配置自启:创建 Systemd 服务,确保驱动随系统启动自动加载。

💡 注意事项
- 内核升级后:若 NAS 内核版本更新(通过
uname -r
确认),需重新运行 sudo ./build.sh
重新编译安装驱动。
- 特殊设备适配:若设备为 TS-464/TS-253D 等非 ITE8528 芯片型号,可在脚本中添加参数
skip_hw_check=true
(如 sudo ./build.sh skip_hw_check=true
)。
🧪 功能验证
- 检查驱动是否加载:
lsmod | grep qnap8528
# 输出包含 `qnap8528` 即表示加载成功
- 查看 Systemd 服务状态:
systemctl status qnap8528-load-module.service
# 状态应为 `active (exited)`
📄 原项目功能继承
完整支持原仓库所有特性,包括:
- 硬件控制:风扇转速调节、LED 状态管理(含磁盘槽指示灯)、温度传感器读取。
- 系统信息:设备序列号(VPD)、EC 固件版本等底层信息获取。
- 兼容性:支持 QNAP 多型号 NAS(详见原仓库 Supported Models)。
🤝 贡献与反馈
欢迎通过 Star/Fork 支持项目!若遇问题或有优化建议:
- 在 GitHub 仓库提交 Issue,附 NAS 型号、固件版本及日志信息。
- 优秀改进可通过 Pull Request 合并至主分支。
License:GPLv3
Copyright:基于 0xGiddi 原项目,容器化改进 by gzxiexl
Disclaimer:本项目为第三方开发,与 QNAP 官方无关,使用前请备份数据。