这是一个教程给需要更改群晖 NAS 存储池以及存储空间顺序的人,适用于以下情况:
- 强迫症患者
- 故障修复
- 迁移后恢复
- 其他需要更改存储池或存储空间顺序的原因
本文仅适用于 DSM 6 用户,DSM7 已失效
使用须知
请务必先完整阅读后在操作,并确保你具有以下知识:
- 熟悉群晖 DSM 系统
- 熟练的 Linux 运维技术
- 了解 RAID 原理
- 了解 LVM 原理
- 明白数据是无价的
准备工作
- 尽可能备份涉及需要修改顺序的存储空间内的数据 (如果你愿意承担一点小风险,可以跳过这一步)
- 启用 SSH 功能 (控制面板 -> 终端机和 SNMP-> 终端机 -> 启动 SSH 功能)
- 使用你喜欢的工具 SSH 连接至群晖 NAS
- 提升至 root 权限
1 | sudo su root |
更改存储池顺序
修改存储池顺序是非常安全的,理论上不会造成数据丢失损坏或系统崩溃的情况,因为存储池只是一个逻辑上的名称。如果你只需要修改存储池,可以不备份数据。
- 查看现有存储池列表
1 2 3 4 5 6 7 8 9 | synospace –meta -e > [/dev/md3] > ——————— > Descriptions=[希捷 酷狼6T Basic] > Reuse Space ID=[reuse_2] > [/dev/md2] > ——————— > Descriptions=[希捷 酷狼 4T Basic] > Reuse Space ID=[reuse_1] |
- 修改存储池顺序
命令格式:synospace --meta -s -d "{存储池描述}" -i reuse_{存储池ID} {设备路径}
例如将上述 [存储池 2] 重新编号至 [存储池 3],则输入以下命令:
1 2 | synospace –meta -s -d “希捷 酷狼6T Basic” -i reuse_3 /dev/md3 > success to set meta (希捷 酷狼6T Basic,reuse_3) into space [/dev/md3] |
注意:可以不添加 -d
参数指定存储池描述,如此存储池描述会被清空,但是你可以随时在 DSM 中修改存储池描述 (存储空间管理员 -> 存储池 -> 动作 -> 更改设置)
- 在 DSM 中可以发现存储池顺序已被修改
更改存储空间顺序
修改存储空间顺序后,可能会造成 iSCSI 服务启动失败,重新启动 iSCSI target 即可恢复,亦可能会产生其他未知问题,故务必注意数据备份。
- 停止所有 Docker 容器
- 停止所有群晖服务,这个命令可能会执行一段时间,务必耐心等待
1 | syno_poweroff_task -d |
- 查看存储空间位于的存储池是否支持
支持多个存储空间
(存储空间管理员 -> 存储池 -> 展开)
对于支持多个存储空间
的存储池,群晖将磁盘分区设置为一个 LVM PV (Physical Volume),并在此 PV 上单独创建一个 VG (Volume Group),因此在这个 VG 上可以创建多个 LV (Logical Volume),亦可以自由调整这些 LV 的大小,LV 即为存储空间,因此修改 LV 的名称即可达到修改存储空间顺序的目的。
- 查看现有存储空间列表
1 2 3 4 | lvm lvscan > ACTIVE ‘/dev/vg1/syno_vg_reserved_area’ [12.00 MiB] inherit > ACTIVE ‘/dev/vg1/volume_2’ [256.00 GiB] inherit > ACTIVE ‘/dev/vg1/volume_3’ [1.00 TiB] inherit |
- 修改存储空间顺序
命令格式:lvm lvrename {VG名称} {旧LV名称} {新LV名称}
例如将上述 [存储空间 2] 修改为 [存储空间 3],[存储空间 3] 修改为 [存储空间 4],则输入以下命令:
1 2 3 4 | lvm lvrename vg1 volume_3 volume_4 > Renamed “volume_3” to “volume_4” in volume group “vg1” lvm lvrename vg1 volume_2 volume_3 > Renamed “volume_2” to “volume_3” in volume group “vg1” |
- 重启 (DSM 内的重启可能会失效,需要执行
reboot
命令) - 共享文件夹以及 iSCSI 服务应已自动修改,检查各服务是否正常
有时候我们遇到了群晖的NAS存储池编号乱了,或者想自定义修改一下存储池编号。本篇文章介绍如何修改存储池和存储空间编号,DSM 7.0可用。

【改硬盘有风险,尽量做个备份】
一、修改存储池编号
1、查看现有存储池
synospace --meta -e
Bash
看到如下结果。reuse_X表示存储池X
sh-4.3# synospace --meta -e
[/dev/vg1/volume_3]
---------------------
Descriptions=[]
Reuse Space ID=[]
[/dev/vg1]
---------------------
Descriptions=[备份分区]
Reuse Space ID=[reuse_3]
[/dev/md2]
---------------------
Descriptions=[]
Reuse Space ID=[reuse_1]
Bash
2、修改存储池编号
例如我们希望将上述中存储池3修改为存储池2,看到存储池3对应的设备为/dev/vg1。
使用如下命令将/dev/vg1分配至reuse_2即存储池2
synospace --meta -s -i reuse_2 /dev/vg1
Bash
二、修改存储空间编号
警告:修改存储空间编号会导致安装在此空间的套件失效,操作前一定要注意
1、查看磁盘列表
spacetool --synoblock-enum
Bash
记下所有源volume对应的物理磁盘编号

2、修改volume卷编号
举例,我们希望将存储空间2修改为存储空间1,即将volume2修改为volume1。
则使用以下命令,将原先volume2中的4块磁盘重新划分至volume1。
警告:修改存储空间编号会导致安装在此空间的套件失效,操作前一定要注意
synospace --synoblock -s /dev/sda -v volume_1
synospace --synoblock -s /dev/sdb -v volume_1
synospace --synoblock -s /dev/sdc -v volume_1
synospace --synoblock -s /dev/sdd -v volume_1
Bash
然后reboot重启,漫长的等待之后,新设置的存储空间编号就生效咯。

————————————————
之前参照CSDN的这篇文章:【逗老师的小技巧】群晖Synology更改存储池和存储空间编号_群晖存储空间改名-CSDN博客
成功的修改了存储池的序号,但是存储空间的序号无法修改,甚至可能导致磁盘损毁。后来发现是Space Path已经变成了@storage_pool,不再是volumeX了。

经过一番摸索,发现了存储空间的序号修改的方法,现分享出来,顺便也把【逗老师的小技巧】的更改存储池序号的一起整理出来。
一、更改存储池序号(以下部分含有引用自原文的段落)
1.ssh登录后台,输入
sudo -i
,然后输入密码。
2.输入
synospace --meta -e
,看到如下结果。reuse_X表示存储池X
[/dev/vg1/volume_3]
———————
Descriptions=[]
Reuse Space ID=[]
[/dev/vg1]
———————
Descriptions=[备份分区]
Reuse Space ID=[reuse_3]
[/dev/md2]
———————
Descriptions=[]
Reuse Space ID=[reuse_1]
3.修改存储池序号
例如我们希望将上述中存储池3修改为存储池2,看到存储池3对应的设备为/dev/vg1。
使用如下命令将/dev/vg1分配至reuse_2即存储池2:
synospace --meta -s -i reuse_2 /dev/vg1
二、修改存储空间的序号(原创)
1.还是ssh登录后台,输入sudo -i,然后输入密码。
2.输入spacetool –synoblock-enum查看的存储空间分配情况。
****** Syno-Block of /dev/sdb ******
Version: 7
Capability: 0x6
Features: 1
Space Type: Storage Pool
Space Path: @storage_pool
Reuse ID: [reuse_2]
Descriptions: []
Volume Description: []
Cross EBox: FALSE
Limited RAID Group: SYNO_24
Cache Info:
PV count: 1
VG path: /dev/vg1
VG UUID: [xxxxxxxxxxxxxxxxxx]
RAID UUID: [xxxxxxxxxxxxx]
简单阐述下原理,不管你是单盘还是阵列,都是一样的,存储池会被映射倒/dev/vgX(X以你系统为准)。
而存储空间会被映射到/dev/vgX/volume_Y(X和Y以你系统为准)。
3.修改存储空间序号
例如我们希望将存储池2(reuse_2)下的存储空间3(volume_3)修改为存储空间2(volume_2),首先要找到存储池2(reuse_2)映射的是什么目录/dev/vgX,就是VG PATH后的参数,记下来。
以我的为例,要修改存储空间序号,那么我们直接重命名/dev/vg1下映射的volume_3目录为volume_2即可。具体命令如下:
lvm lvrename vg1 volume_3 volume_2
一定记得根据你自己的情况修改vg1,volume_3和volume_2三个的数值!!!
最后直接输入reboot,回车,即可重启生效。
我的命令 存储空间8变为4:
synospace --meta -s -i reuse_4 /dev/vg6
我的命令 存储空间9变为1:
synospace --meta -s -i reuse_1 /dev/vg5