本文翻译整理自:https://github.com/007revad/Synology_HDD_db
文章目录
一、关于 Synology HDD db
该脚本工具可将SATA/SAS硬盘、SSD以及M.2 NVMe/SATA设备添加到群晖NAS的兼容驱动器数据库中,包括对M.2 PCIe扩展卡和扩展柜的支持。
支持DSM 6.x和DSM 7.x全系列版本(含DSM 7.2),并提供还原功能撤销所有修改。
相关链接资源
- github : https://github.com/007revad/Synology_HDD_db
- 下载地址:https://github.com/007revad/Synology_HDD_db/releases
- 扩展卡支持工具:https://github.com/007revad/Synology_enable_M2_card
- 捐赠支持:https://www.paypal.com/paypalme/007revad
- GitHub赞助:https://github.com/sponsors/007revad
关键功能特性
1、自动识别NAS型号和DSM版本
2、检测已安装的HDD/SSD/SAS/NVMe设备
3、备份原始数据库文件
4、将未认证设备添加到兼容数据库
5、可选禁用DSM自动更新驱动数据库
6、支持禁用内存兼容性检查
7、可设置最大内存值匹配实际安装容量
8、启用非官方M.2扩展卡支持(M2D20/M2D18等)
9、支持创建M.2存储池(DSM 7.2+)
10、提供Western Digital WDDA禁用功能
11、可更新IronWolf健康监控组件
12、内置版本更新检查机制
二、安装
系统要求
- 群晖DSM 6.x或7.x系统
- 需通过SSH获取root权限
下载脚本
1、从https://github.com/007revad/Synology_HDD_db/releases下载最新版_Source code (zip)_
2、将zip文件保存到群晖本地目录(不要存放在M.2卷)
3、解压zip文件
或通过SSH执行:
cd $HOME
wget https://github.com/007revad/Synology_HDD_db/archive/refs/heads/main.zip -O syno_hdd_db.zip
7z x syno_hdd_db.zip
cd Synology_HDD_db-main && ls -ali
必需文件
解压后以下文件需保持在同一目录:
1、syno_hdd_db.sh
2、syno_hdd_vendor_ids.txt
3、dtc工具(仅E10M20-T1/M2D20/M2D18扩展卡需要)
三、使用说明
1、运行时机
建议在以下情况执行脚本:
- 首次添加非认证硬盘时
- 每次DSM系统升级后
- 建议设置为开机自动运行(通过计划任务)
注意:首次运行后可能需要重启NAS才能生效
2、脚本参数选项
-s, --showedits 显示对数据库文件的修改详情
-n, --noupdate 禁用DSM自动更新驱动数据库
-r, --ram 禁用内存兼容检查并设置最大内存值
-f, --force 强制禁用驱动器兼容性检查(慎用)
-i, --incompatible 将不兼容驱动器标记为支持(慎用)
-w, --wdda 禁用WD设备分析功能
-p, --pcie 启用未知PCIe适配器的M.2卷创建
-e, --email 禁用输出内容的颜色标记(计划任务用)
-S, --ssd=DRIVE 设置HDD为write_mostly模式,优先从SSD读取
--restore 还原脚本所有修改(需配合--ssd=restore还原全部)
--autoupdate=AGE 设置自动更新检查间隔(天数)
-I, --ihm 更新IronWolf健康监控到v2.5.1
-h, --help 显示帮助信息
-v, --version 显示脚本版本
注意事项:
--force
参数会禁用数据去重功能,仅作为最后手段使用- 如需更新群晖原厂硬盘固件,应先不带
-n
参数运行脚本 - DSM 7.2.1+已默认禁用WDDA功能
3、通过SSH运行
1、启用SSH登录:https://kb.synology.com/en-global/DSM/tutorial/How_to_login_to_DSM_with_root_permission_via_SSH_Telnet
2、使用root权限执行:
sudo -s /path-to-script/syno_hdd_db.sh -nr
查看修改详情:
sudo -s /path-to-script/syno_hdd_db.sh -nr --showedits
四、故障排查
问题现象 | 可能原因 | 解决方案 |
---|---|---|
报错/usr/bin/env: ‘bash\r’ | 文件含Mac换行符 | 重新下载最新版zip |
脚本无响应 | Windows换行符问题 | 重新下载最新版zip |
语法错误 | 误下载网页文件 | 重新下载zip压缩包 |
其他注意事项:
1、确保脚本路径不含空格(如有需加引号)
2、设置脚本可执行权限:
sudo chmod +x "/volume1/scripts/syno_hdd_db.sh"
五、高级配置
厂商ID配置
当NVMe设备显示为"Unknown brand"时,需在syno_hdd_vendor_ids.txt中添加对应厂商ID:
IronWolf 健康监控
更新后可支持最新款IronWolf系列硬盘:
六、致谢
- 灵感来自Reddit用户Empyrealist的建议
- 感谢Alex_of_Chaos、dwabraxus等技术支持
- 特别鸣谢所有通过PayPal、GitHub赞助的贡献者
(完整贡献者名单详见原文)
伊织 xAI 2025-04-22(二)