这是一个教程给需要更改群晖 NAS 存储池以及存储空间顺序的人,适用于以下情况: 强迫症患者 故障修复 迁移后恢复 其他需要更改存储池或存储空间顺序的原因
你可以在这里找到其他语言的版本:简体中文English 使用须知 请务必先完整阅读后在操作,并确保你具有以下知识: 熟悉群晖 DSM 系统 熟练的 Linux 运维技术 了解 RAID 原理 了解 LVM 原理 明白数据是无价的
准备工作尽可能备份涉及需要修改顺序的存储空间内的数据 (如果你愿意承担一点小风险,可以跳过这一步) 启用 SSH 功能 (控制面板 -> 终端机和 SNMP-> 终端机 -> 启动 SSH 功能) 使用你喜欢的工具 SSH 连接至群晖 NAS 提升至 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 容器 停止所有群晖服务,这个命令可能会执行一段时间,务必耐心等待
查看存储空间位于的存储池是否支持支持多个存储空间 (存储空间管理员 -> 存储池 -> 展开)
对于支持多个存储空间 的存储池,群晖将磁盘分区设置为一个 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'
|
对于不支持多个存储空间 的存储池,群晖直接将存储空间应用于整个磁盘分区上,因此无法调整大小,或增加多个空间,为此我们直接修改群晖内部的编号。 查看现有存储空间列表
1 2 3 4 5 6 7 8 9
| spacetool --synoblock-enum > ****** Syno-Block of /dev/sda ****** > Version: 5 > Space Type: Volume > Space Path: /volume1 >****** Syno-Block of /dev/sdb ****** > Version: 5 > Space Type: Volume > Space Path: /volume2
|
修改存储空间顺序
命令格式:synospace --synoblock -s {设备路径} -v volume_{存储空间编号} 例如将上述 [存储空间 1] 与 [存储空间 2] 编号互换,则输入以下命令: 1 2 3 4 5
| synospace --synoblock -s /dev/sda -v volume_2 > success to set syno-block on disk '/dev/sda'
synospace --synoblock -s /dev/sdb -v volume_1 > success to set syno-block on disk '/dev/sdb'
|
重启 (DSM 内的重启可能会失效,需要执行 reboot 命令) 共享文件夹以及 iSCSI 服务应已自动修改,检查各服务是否正常
|