#楼主# 2022-6-12

跳转到指定楼层
DS918系统是6.21版本到6.22版本之间的,下载nvme驱动libNVMEpatch.sh,用PuTTY(管理员root权限)将文件复制到群晖的/usr/local/etc/rc.d/ 目录下面,重启群晖,这样在储存空间管理员里就可以看到未格式化缓存设备,后续添加成为群晖储存空间的缓存

DS918系统是6.23的,下载nvme驱动libsynonvme.so.1,用PuTTY(管理员root权限)将文件复制到群晖的/usr/lib64目录下面,重启群晖,这样在储存空间管理员里就可以看到未格式化缓存设备,后续添加成为群晖储存空间的缓存


但是,作为缓存而不能储存数据,非常非常非常浪费,特别想用来跑x86网心云(nvme固态效果绝对一流),在群晖里无论你用Docker还是virtual machine Manager虚拟机来跑网心云,挂载磁盘必须是群晖里的储存空间而不能挂缓存设备,百度了一晚,终于找到大神的教程(原出处


下面是流程:(基本整给流程都是照抄大神的,只是加备注颜色,让家更易看懂,紫色为输入的命令行,浅蓝色为机器反馈信息,没颜色为作者注解)
Step1 创建分区

用PuTTY登陆群晖命令行终端, 并键入

sudo -i

输入密码获得root权限, 然后执行

ls /dev/nvme*

此命令用来显示机器上有哪个几个nvme硬盘(假设只有一个250G)

/dev/nvme0n1 or /dev/nvme1n1 .

输入:

fdisk -l /dev/nvme0n1

此命令用来确认nvme SSD的状态大小. ( if your SSD at slot 2, use /dev/nvme1n1 instead)

Disk /dev/nvme0n1: 238.5 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

如果信息符合你要使用的NVme SSD的信息,用如下命令创建分区:

synopartition --part /dev/nvme0n1 12

and answer 'Y' if you confirm

Device Sectors (Version8: SupportRaid)
/dev/nvme0n11 4980480 (2431 MB)
/dev/nvme0n12 4194304 (2048 MB)
Reserved size: 260352 ( 127 MB)
Primary data partition will be created.

WARNING: This action will erase all data on '/dev/nvme0n1' and repart it, are you sure to continue? [y/N]y
Cleaning all partitions...
Creating sys partitions...
Creating primary data partition...
Please remember to mdadm and mkfs new partitions.

这样实际上给一个nvme 盘创建了标准的群晖方式的分区, 即: 2.4G大小的系统分区, 2G大小的swap分区, 然后是剩余空间分配了一个给用户使用的数据分区。 我自己是一个250G的SSD,这样分区后, 数据分区大小是大概228G

Type

fdisk -l /dev/nvme0n1

You will see the partition layout is created

Disk /dev/nvme0n1: 238.5 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xef61a3e4

Device Boot Start End Sectors Size Id Type
/dev/nvme0n1p1 2048 4982527 4980480 2.4G fd Linux raid autodetect
/dev/nvme0n1p2 4982528 9176831 4194304 2G fd Linux raid autodetect
/dev/nvme0n1p3 9437184 500103449 490666266 234G fd Linux raid autodetect

原文例子里是一个256G SSD, 群晖分区后数据区大概是234G的样子

Step2 建立存储空间

Type

cat /proc/mdstat

此命令用于检查当前的磁盘阵列情况

Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
md2 : active raid1 sda3[0] sdb3[1]
5855700544 blocks super 1.2 [2/2] [UU]

md3 : active raid1 sdc3[0] sdd3[1]
9761614848 blocks super 1.2 [2/2] [UU]

md1 : active raid1 sda2[0] sdb2[1] sdc2[2] sdd2[3]
20097088 blocks [4/4] [UUUU]

md0 : active raid1 sda1[0] sdb1[3] sdc1[1] sdd1[2]
2489920 blocks [4/4] [UUUU]

这个命令显示了目前已有逻辑存储盘的情况: md0 其实就是群晖的系统分区, 以RAID1的形式, 在每个物理磁盘上都有分区, md1是swap分区, 也是RAID1形式, 每个盘都有一个分区; md2 是物理磁盘sda, sdb的第三分区(数据区) 组成的RAID1存储空间; md3 是物理磁盘sdc, sdd 的第三个分区组成的RAID1存储空间,各人的群晖已挂载的储存分区数量各不相同

输入:

mdadm --create /dev/md4 --level=1 --raid-devices=1 --force /dev/nvme0n1p3(看完下面注解确认自己情况再输入)

此命令为刚才建立的Nvme SSD的数据分区建立新存储空间 , 注意/dev/md4如果你在刚才的mdstat命令中看到的已有存储空间已经最大是md4, 那么这里需要改成/dev/md5以此类推

And answer y

mdadm: Note: this array has metadata at the start and
may not be suitable as a boot device. If you plan to
store '/boot' on this device please ensure that
your boot-loader understands md/v1.x metadata, or use
--metadata=0.90
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md4 started.

Step3 格式化文件系统

如果你要使用常见的ext4 文件系统

(强烈不建议格式化成这种文件系统,虚拟机不支持)

mkfs.ext4 -F /dev/md4(不建议,不建议,不建议,要跳过这个命令,用下条命令)

(不建议,不建议,不建议,要跳过这个命令,用下条命令)


mke2fs 1.42.6 (21-Sep-2012)
Filesystem label=1.42.6-23824
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
15335424 inodes, 61333024 blocks
25600 blocks (0.04%) reserved for the super user
First data block=0
Maximum filesystem blocks=2210398208
1872 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

看到最后的done, 那么ext4 文件系统已经建立好了

如果你想用群晖新版DSM更推荐的btrfs系统,

(强烈建议格式化成这种文件系统,因为虚拟机支持)

mkfs.btrfs -f /dev/md4

无论你建立的是ext4还是btrfs系统, 如果这时候你在DSM的存储空间管理员里查看,还是看不到新的存储空间, Nvme SSD 也还是作为未分配的缓存空间。 这时候你需要在SSH 终端输入

reboot

重启后, 就可以看到新的nvme存储空间啦!在虚拟机里装个X86网心云,指定nvme硬盘为数据盘,爽得飞起

168fc1021e435b1d3793a2166e8b7e9.png

93b28825a8fbe7179a70c2e63a82fd3.png

9a06ac6b182fd26e4fd1749c128c665.png

转播转播 分享淘帖
回复

使用道具

该用户从未签到

5

主题

20

帖子

42

积分

幼儿园

Rank: 1

积分
42
137****5723 发表于 2022-6-13 10:40:39
我只有机械硬盘安装重启后找不到系统文件怎么解决
回复

使用道具 举报

该用户从未签到

1

主题

6

帖子

20

积分

幼儿园

Rank: 1

积分
20
小叶 发表于 2022-6-13 10:55:45
137****5723 发表于 2022-6-13 10:40
我只有机械硬盘安装重启后找不到系统文件怎么解决

储存空间管理员里修复就好,如果没次都这样,建议你换新硬盘吧
回复

使用道具 举报

该用户从未签到

4

主题

13

帖子

28

积分

幼儿园

Rank: 1

积分
28
buzz 发表于 2022-6-13 11:00:09
那白群晖需要这样设置吗
回复

使用道具 举报

该用户从未签到

1

主题

6

帖子

20

积分

幼儿园

Rank: 1

积分
20
小叶 发表于 2022-6-13 11:08:52
199****3689 发表于 2022-6-13 11:00
那白群晖需要这样设置吗

白群不用装补丁就可以看到缓存设备了,但要作为储存空间使用,还是要做下面挂载的步骤
回复

使用道具 举报

该用户从未签到

4

主题

13

帖子

28

积分

幼儿园

Rank: 1

积分
28
buzz 发表于 2022-6-13 11:55:17
小叶 发表于 2022-6-13 11:08
白群不用装补丁就可以看到缓存设备了,但要作为储存空间使用,还是要做下面挂载的步骤 ...

明白了谢谢
回复

使用道具 举报

该用户从未签到

5

主题

20

帖子

42

积分

幼儿园

Rank: 1

积分
42
137****5723 发表于 2022-6-13 13:59:07
安装了x86那个虚拟机就出现这个  
985C1E49-A27A-4482-8530-32F35FE70739.png
回复

使用道具 举报

该用户从未签到

1

主题

6

帖子

20

积分

幼儿园

Rank: 1

积分
20
小叶 发表于 2022-6-13 16:06:05
137****5723 发表于 2022-6-13 13:59
安装了x86那个虚拟机就出现这个

看看建立虚拟机时,有没有cpu兼容模式
回复

使用道具 举报

  • TA的每日心情
    郁闷
    2023-2-8 14:40
  • 3

    主题

    24

    帖子

    82

    积分

    小学生

    Rank: 2

    积分
    82
    挨踢农民 发表于 2022-9-10 15:18:29
    楼主,请教我的6.23在执行脚本拷贝那一步就提示失败,要怎么处理呢?
    使用的root用户

    /usr/lib64/libsynonvme.so.1: Permission denied
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    1

    帖子

    3

    积分

    幼儿园

    Rank: 1

    积分
    3
    若苏 发表于 2023-3-1 01:20:03
    大佬用你的办法成功了 但是现在有个问题 我刷回esxi的时候  nvme无法格式化和清空分区  其他linux系统没法读取nvme  这个需要怎么改
    回复

    使用道具 举报

    关于作者

    小叶

    幼儿园

    • 主题

      1

    • 帖子

      6

    • 关注者

      0