群晖 DS918+扩展 – M.2 NVMe SSD 缓存变储存空间
本文最后更新于 2021年09月6日

前言

部分群晖机型带有M.2 NVMe SSD 缓存插槽,例如ds918+,ds920+,不过这些机型的M2插槽并不能作为存成空间使用,只能作为缓存使用,和隔壁威联通的支持所有磁盘的分层缓存比,群晖的缓存机制可以说是非常垃圾,dsm7也没有改进多少

奸商群晖

如果能够把这两个m2好好利用,变成存储位就好了。

老奸巨猾的群晖,在系统中当然不会开放,毕竟他就是按盘位收钱的,一个盘位1000块👍🏻
好在可以通过Linux命令挂载m2插槽上的磁盘,从而使他们变成存储空间

实施

下面就来讲讲怎么实施,不会太细,因为大部分机型上都是一样的

一共就几步,非常简单

ssh 进入群晖,切换root账户

sudo -i

查看nvme设备信息

# 查看nvme设备
ls /dev/nvme*

会显示 /dev/nvme0n1 或者 /dev/nvme1n1

查看磁盘信息,如果是想查看第一个插口上的ssd,输入

fdisk -l /dev/nvme0n1

查看第二个插口上的ssd,输入

fdisk -l /dev/nvme1n1

 好像群晖带m2插槽的机型都是这两个

创建分区

# 在第一块SSD上创建分区
synopartition --part /dev/nvme0n1 12

# 如果想在第二块SSD上创建分区
synopartition --part /dev/nvme1n1 12

# 回车
# 输入“Y”,确认

查看创建的分区布局

查看第一块SSD的分区布局

# 容量最大的分区,则是我们要挂载的
fdisk -l /dev/nvme0n1

查看第二块SSD的分区布局

fdisk -l /dev/ nvme1n1

创建磁盘阵列

创建“Basis”的阵列

cat /proc/mdstat

md0是系统分区,而md1是系统交换。 当前的卷/存储池是从md2开始的,新创建的存储空间则为md里最大的数字+1

比如我是4盘位插满,新增的ssd作为第五盘位,目前已经到了md6,那么我就创建md7,md8

mdadm --create /dev/md7 --level=1 --raid-devices=1 --force /dev/nvme0n1p3
mdadm --create /dev/md8 --level=1 --raid-devices=1 --force /dev/nvme1n1p3

格式化ssd存储池为btrfs

mkfs.btrfs -f /dev/md7
mkfs.btrfs -f /dev/md8

格式化ssd存储池为ext4(不建议,大部分人应该都会用到虚拟机,所以只能是btrfs)

mkfs.ext4 -F /dev/md7
mkfs.ext4 -F /dev/md8

然后就可以重启nas了

reboot

DSM中修改存储池名称

通过这种方式创建的存储池,名称是错的,比如可能会叫做存储空间6,手动删除这个存储空间,在存储空间管理员中重新创建时正确命名即可

gFxG0C

关于ssd使用策略

我推荐:使用第一块容量较小的ssd,比如我是256G的SSD做缓存盘,存储空间较大的2T SSD做群晖套件、虚拟机、下载盘,这样存盘性能需求高的软件都在SSD分区中,性能最高

同时,SSD作为下载盘,NAS在下载时不会有硬盘频繁读写的噪音,整个NAS非常安静

另外,想让硬盘再安静些,还需要关闭群晖的虚拟内存SWAP,内存小的机器请不要轻易尝试

swapoff -a
# 或
# sysctl -w vm.swappiness=1

关于SSD如何做临时下载盘,我会再写一篇已写完,囊括Aria2,qbittorrent

迁移套件到SSD盘

网络上有很多关于群晖套件迁移磁盘的教程,但是NAS作为24时开机的设备,稳定性应该压倒一切,所以我不推荐任何软连接的方式迁移,我的建议就是,删除所有套件,设置套件中心,套件下载安装位置为SSD盘

然后重新下载安装套件

无脑操作版

其实关于操作部分,设置什么都不看也没有关系,只要你插上了一块m2 ssd,那么可以直接复制这段代码,不过还是推荐一行一行复制,因为有些步骤你还要输入”Y”确认操作

# 在第一块SSD上创建分区
synopartition --part /dev/nvme0n1 12

mdadm --create /dev/md7 --level=1 --raid-devices=1 --force /dev/nvme0n1p3

mkfs.btrfs -f /dev/md7

reboot

引用参考

本篇文章操作部分大量引用definuler在smzdm中发表的《群晖 DS918+免费扩展 —- M.2 NVMe SSD 缓存变储存空间》。Linux命令,无论怎么写,都是一样,故引用definuler中关于操作部分的内容,在此感谢

https://post.smzdm.com/p/av7zm3v4/

原创声明
本文由 NG6 于2021年09月04日发表在 sleele的博客
如未特殊声明,本站所有文章均为原创;你可以在保留作者及原文地址的情况下转载
转载请注明:群晖 DS918+扩展 – M.2 NVMe SSD 缓存变储存空间 | sleele的博客

评论

  1. horseman
    Windows Firefox
    1年前
    2023-7-28 22:34:09

    我装DSM7.2,缓存改存储空间后安装完套件,再重启,直接提示不受当前DSM支持!

    • 查理
      horseman
      Windows Chrome
      1年前
      2023-8-03 22:44:24

      @horseman 老哥解决了没有

      • horseman
        查理
        Windows Firefox
        1年前
        2023-8-04 20:42:10

        @查理 没有

      • NG6
        查理
        博主
        Macintosh Safari
        1年前
        2023-8-21 16:35:23

        @查理 使用这个脚本,将SSD信息,添加到群晖硬盘数据库中,即可修复

        https://github.com/007revad/Synology_HDD_db

  2. bigorange
    Windows Edge
    2年前
    2023-4-22 10:38:23

    请问一块256做缓存,一块1TB做储存池要怎么操作?我的想法是先插1TB的,变为储存池后,再关机插256G的不动

  3. along
    Windows Edge
    2年前
    2023-4-19 8:31:33

    我的920,原来只有一块ssd,使用这个方法做存储用着,最近SSD便宜了,又买了一块,安装到第二个SSD槽,使用这方法,最后重启还是不行,测试了好几遍

    • NG6
      along
      Macintosh Safari
      2年前
      2023-4-19 16:25:52

      @along 我没升级到7.2,检查一下SSD,fdisk -l /dev/nvme1n1

    • deepblue
      along
      Windows Edge
      2年前
      2023-5-18 11:41:13

      @along 看清楚,这是918+的方法

  4. 匿名
    Windows Chrome
    2年前
    2023-4-17 22:50:37

    DSM7.2实测,安装完套件,再重启后,直接提示不受当前DSM支持。。

  5. 若谷
    Windows Edge
    已编辑
    2年前
    2022-12-23 21:58:21

    nvme改成存储空间后,如何改回缓存。

    • NG6
      若谷
      Macintosh Safari
      2年前
      2023-4-19 16:26:53

      @若谷 删除这个磁盘后重启就可以了,群晖的缓存很废
      建议一个SSD只读缓存,另外一个做数据盘

  6. will
    Windows Edge
    2年前
    2022-12-10 15:54:14

    大佬您好,新买的920+,想问问需不需要讲系统文件迁移至固态硬盘里呢?而且在DSM7.1.1中,也无法设置套件的安装位置了,没有找到选项。。。

  7. DZ
    Macintosh Chrome
    3年前
    2022-2-23 2:31:06

    你好,问下直接挂一块SSD做读缓存,另一块SSD做下载空间,和两块同样的SSD做读写缓存有啥区别?我理解是,下载这种任务,有读写缓存的时候,系统都是先写到SSD缓存里,后面空闲再慢慢在写入到HDD。
    PS,我之前DS920+一直是跟你说的一样用256G做读缓存,1T做硬盘空间。用了一年多除了“下载到SSD”这一特定用途,这块SSD存储空间基本没有做其他用途。现在换DS1821+了,在想还不如直接两块1T(或者2T,还在犹豫)做读写缓存,让系统决定哪些文件写入SSD缓存。

    • NG6
      DZ
      博主
      Macintosh Chrome
      3年前
      2022-2-23 21:35:14

      @DZ 群晖cache策略非常垃圾,具体可以搜索引擎搜索
      1、cache中的冷数据基本不会移除(后面的数据会不停的在仅剩的空间中进行擦写,chh有不少讨论贴),并且ssd cache只能加速一个盘,系统和套件也依然是运行在hdd中
      2、使用ssd做存储盘和可以把套件全部安装到ssd中,高频数据也可以存储到ssd中,提升整体相应速度

  8. first908
    Macintosh Chrome
    3年前
    2022-1-12 10:55:11

    你好博主,
    想问下这套操作在dsm7.0上是否依然有效?
    我看其他地方说这个方法在dsm7上失效了。

    谢谢

    • NG6
      first908
      博主
      Jetpack
      3年前
      2022-1-12 14:07:07

      @first908 我没有升级dsm7

    • 里脊
      first908
      Macintosh Chrome
      已编辑
      3年前
      2022-3-05 19:43:51

      @first908 [DSM 7.0.1-42218 Update 2]
      如果删除后重建存储池,系统会显示 “The drive is installed in a drive slot reserved for SSD caches.”
      DSM7 上正确的做法是重启后不删除,而是选择 “Online Assemble”

      • 匿名
        里脊
        Windows Chrome
        1年前
        2023-7-25 23:35:30

        @里脊 DSM7.2 试了 在线重组失败,只能删除,删除后不能重新添加为存储池

        • NG6
          匿名
          博主
          Macintosh Safari
          1年前
          2023-7-26 10:58:29

          @匿名 这篇文章有点老了,是在6.X时代写的,过两天我更新一般7.2及以后版本适用的,其实原理上就是,通过修改硬盘数据库,识别为官方SSD

    • xunxun
      first908
      Windows Chrome
      3年前
      2022-3-28 21:13:01

      @first908 DSM7本身就支持把NVMe盘做存储盘吧

  9. Pear
    Macintosh Chrome
    3年前
    2021-12-17 20:16:33

    头一次看到夸威联通,原来群晖也有不足,太多看到鼓吹群晖的

  10. 匿名
    Macintosh Chrome
    3年前
    2021-12-17 20:16:02

    头一次看到夸威联通,原来群晖也有不足,太多看到鼓吹群晖的

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇