Press "Enter" to skip to content

在 Synology DS920+ (DSM 7.2) 上使用 M.2 NVMe SSD 创建存储空间

1. 背景说明

Synology 的 DS920+ 等型号官方仅允许将 M.2 NVMe SSD 用作缓存(Cache),而不允许直接用作存储卷(Storage Volume)
但是,通过 GitHub 用户 007revad 开发的两个脚本,我们可以突破这个限制:

  1. Synology_HDD_db: 让系统“认可”你的第三方 SSD,消除“未验证硬盘”的警告。
  2. Synology_M2_volume: 帮你创建存储池,让你能在存储管理器中建立卷。

⚠️ 风险提示:此操作属于非官方修改。尽管社区反馈非常稳定,但请务必做好数据备份。如果不熟悉命令行操作,请谨慎进行。


2. 准备工作

  • 一台安装了 NVMe SSD 的 Synology NAS(本教程以 DS920+ / DSM 7.2 为例)。
  • 开启 SSH 功能。

3. 详细步骤

  1. 打开 控制面板 (Control Panel) > 终端机和 SNMP (Terminal & SNMP)
  2. 勾选 启动 SSH 功能 (Enable SSH service),端口默认为 22。
  3. 在电脑上通过终端工具(Windows 用 PuTTY 或自带的 CMD/PowerShell,Mac 用 Terminal)登录:codeBashssh 你的用户名@你的NAS_IP -p 22输入密码时不会显示字符,输完按回车即可。

你需要运行两个脚本。建议先运行 Synology_HDD_db 解决兼容性警告,再运行 Synology_M2_volume 创建存储池。

方法 A:一键命令(推荐,简单快捷)
登录 SSH 后,依次复制以下命令运行。

1. 运行 Synology_HDD_db 脚本
这个脚本会将你的硬盘加入兼容列表,防止系统报错。

sudo -s  # 切换到 root 权限,需要再次输入密码
wget https://github.com/007revad/Synology_HDD_db/archive/refs/heads/main.zip -O syno_hdd_db.zip
unzip syno_hdd_db.zip
cd Synology_HDD_db-main
chmod +x syno_hdd_db.sh
./syno_hdd_db.sh -nra
  • -r: 禁用内存兼容性检查(可选,如果你加了非原厂内存)。
  • -n: 防止 DSM 自动更新数据库覆盖修改。
  • -a: 自动更新脚本(可选)。

2. 运行 Synology_M2_volume 脚本
这个脚本负责创建存储池。

cd .. # 返回上一级目录
wget https://github.com/007revad/Synology_M2_volume/archive/refs/heads/main.zip -O syno_m2_volume.zip
unzip syno_m2_volume.zip
cd Synology_M2_volume-main
chmod +x syno_create_m2_volume.sh
./syno_create_m2_volume.sh


执行过程中的交互:
运行 syno_create_m2_volume.sh 后,脚本会问你几个问题:

  1. 它会列出检测到的 NVMe 驱动器(例如 /dev/nvme0n1)。
  2. 询问你要创建什么类型的 RAID(Basic, RAID 0, RAID 1, SHR 等)。
    • 如果是单盘,选 Basic 或 SHR。[2]
    • 如果是双盘,想速度快选 RAID 0,想数据安全选 RAID 1 (或 SHR)。
  3. 确认输入 yes。
  4. 脚本运行完毕后,会提示你存储池已创建成功。

注意:在 DSM 7.2 上,通常不需要重启即可生效。如果脚本提示你需要重启,请重启 NAS。


  1. 回到 Synology 的网页管理界面。
  2. 打开 存储管理器 (Storage Manager)
  3. 你应该能看到一个新的 存储池 (Storage Pool) 已经出现(通常显示为“可用”或类似状态)。
  4. 点击该存储池,选择 创建卷 (Create Volume)
  5. 按照向导设置容量(通常选最大)、文件系统(推荐 Btrfs),完成创建。

恭喜!你现在可以像使用普通硬盘一样使用你的 NVMe SSD 了。


4. 维护与注意事项(重要!)

1. DSM 系统更新后怎么办?
每次你更新 Synology DSM 系统(例如从 7.2 更新到 7.2.1),系统可能会重置数据库文件,导致 NVMe 存储池报错或显示为“未验证”。
解决方法

  • 重新运行 Synology_HDD_db 脚本
  • 通常不需要重新运行 M2_volume 脚本,因为存储池结构还在,只是系统“不认识”它了。修复数据库后即可恢复正常。

2. 设置计划任务(自动修复)
为了避免更新后忘记运行脚本,建议在群晖的 任务计划程序 (Task Scheduler) 中添加一个开机启动任务:

  1. 控制面板 > 任务计划程序 > 新增 > 触发任务 > 用户定义的脚本
  2. 常规:任务名称随便填(如 “Fix HDD DB”),用户账号选 root,事件选“开机”。
  3. 任务设置:在“用户定义的脚本”框中填入你脚本的路径,例如:codeBash/volume1/scripts/Synology_HDD_db-main/syno_hdd_db.sh -nra(请确保你之前的下载路径正确,建议将脚本移动到一个固定的文件夹,如 /volume1/scripts/)

3. 数据安全
虽然此方法被广泛验证有效,但 NVMe SSD 发热量较大,且没有风扇直接吹拂(取决于机型)。请注意监控 SSD 温度,并保持重要数据的备份(如使用 Hyper Backup 备份到机械硬盘或云端)。

资源链接

https://www.reddit.com/r/synology/comments/1da4gzu/storage_pool_with_m2_nvme_ssd_on_dsm_72_at_ds920/?tl=zh-hans
https://github.com/007revad/Synology_M2_volume
https://github.com/007revad/Synology_HDD_db

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注