修改群晖存储池及存储空间顺序
这是一个教程给需要更改群晖 NAS 存储池以及存储空间顺序的人,适用于以下情况:
- 强迫症患者
- 故障修复
- 迁移后恢复
- 其他需要更改存储池或存储空间顺序的原因
本文仅适用于 DSM 6 用户,DSM7 已失效
使用须知
请务必先完整阅读后在操作,并确保你具有以下知识:
- 熟悉群晖 DSM 系统
- 熟练的 Linux 运维技术
- 了解 RAID 原理
- 了解 LVM 原理
- 明白数据是无价的
准备工作
- 尽可能备份涉及需要修改顺序的存储空间内的数据 (如果你愿意承担一点小风险,可以跳过这一步)
- 启用 SSH 功能 (控制面板 -> 终端机和 SNMP-> 终端机 -> 启动 SSH 功能)
- 使用你喜欢的工具 SSH 连接至群晖 NAS
- 提升至 root 权限
1 |
sudo su root
|
更改存储池顺序
修改存储池顺序是非常安全的,理论上不会造成数据丢失损坏或系统崩溃的情况,因为存储池只是一个逻辑上的名称。如果你只需要修改存储池,可以不备份数据。
- 查看现有存储池列表
1 |
synospace --meta -e |
- 修改存储池顺序
命令格式:synospace --meta -s -d "{存储池描述}" -i reuse_{存储池ID} {设备路径}
例如将上述 [存储池 2] 重新编号至 [存储池 3],则输入以下命令:
1 |
synospace --meta -s -d "希捷 酷狼6T Basic" -i reuse_3 /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 |
lvm lvscan
|
- 修改存储空间顺序
命令格式:lvm lvrename {VG名称} {旧LV名称} {新LV名称}
例如将上述 [存储空间 2] 修改为 [存储空间 3],[存储空间 3] 修改为 [存储空间 4],则输入以下命令:
1 |
lvm lvrename vg1 volume_3 volume_4
|
对于不支持多个存储空间
的存储池,群晖直接将存储空间应用于整个磁盘分区上,因此无法调整大小,或增加多个空间,为此我们直接修改群晖内部的编号。
- 查看现有存储空间列表
1 |
spacetool --synoblock-enum |
- 修改存储空间顺序
命令格式:synospace --synoblock -s {设备路径} -v volume_{存储空间编号}
例如将上述 [存储空间 1] 与 [存储空间 2] 编号互换,则输入以下命令:
1 |
synospace --synoblock -s /dev/sda -v volume_2
|
- 重启 (DSM 内的重启可能会失效,需要执行
reboot
命令) - 共享文件夹以及 iSCSI 服务应已自动修改,检查各服务是否正常
预览: