我的存储池容量增加后,却无法为卷增加容量?
发表于 : 2021年 9月 15日 星期三 9:38 pm
故障排除
适用机型
所有 TNAS型号
适用版本
TOS 4.1.x & TOS 4.2.x & TOS 5.x & TOS 6.x
请按照以下说明解决此问题:
1. 登录 ssh终端如何登录 SSH终端?
2. 如果您已为卷创建了Hyper Cache,请在执行以下命令之前先删除Hyper Cache。
3. 修改存储池和卷
以下所有示例基于“md0, vg0, lv0”(对应“阵列、存储池、卷”)
您的“阵列、存储池、卷” 可能不是 “md0, vg0, lv0”,
请执行以下指令进行确认:
让我们开始修改存储设置。请逐条执行以下指令:
TOS 4.1.x & TOS 4.2.x:
TOS 5.x:
TOS 6.x ,文件系统格式为ext4,参考以下命令:
TOS 6.x ,文件系统格式为Btrfs,参考以下命令:
注意:
无论是 ext4 还是 btrfs 文件系统,若要卸载的卷并非该文件系统中的第一个卷,在执行卸载命令时,都需将默认命令 umount /Volume1 中的 /Volume1 修改为对应的卷名,例如要卸载第二个卷,则命令为 umount /Volume2。
另外,在 btrfs 文件系统格式下,后续执行 umount /var/subvols/8vEbTxkKvwa 这类命令时,若涉及非首个卷对应的子卷,也需将命令修改为 umount /var/subvols/8vEbTxkKvw?,其中 “?” 处为对应的子卷名称。这些名称均可通过 df -T 命令查看确认。如下图:

若提示“Target is busy”,请参考此以下操作指引解除其他进程对卷的占用,并取消 SSD 缓存,然后再次执行以上指令。
viewtopic.php?t=4080
TOS 4.1.x & TOS 4.2.x:
TOS 5.x / 6.x:
4. 调整文件系统大小
首先需要知道调整的卷的文件系统类型(btrfs/ext4),执行以下指令进行确认:
根据上一步得知的文件系统类型,选择要执行的指令:
btrfs
您会看到存储值缓慢增加。 约几十秒后,该过程将完成。
ext4
您会看到存储值缓慢增加。 约几十秒后,该过程将完成。
待调整文件系统大小命令执行完成后,执行以下指令:
适用机型
所有 TNAS型号
适用版本
TOS 4.1.x & TOS 4.2.x & TOS 5.x & TOS 6.x
请按照以下说明解决此问题:
1. 登录 ssh终端如何登录 SSH终端?
2. 如果您已为卷创建了Hyper Cache,请在执行以下命令之前先删除Hyper Cache。
3. 修改存储池和卷
以下所有示例基于“md0, vg0, lv0”(对应“阵列、存储池、卷”)
您的“阵列、存储池、卷” 可能不是 “md0, vg0, lv0”,
请执行以下指令进行确认:
代码: 全选
[root@TNAS-???? ~]lsblkTOS 4.1.x & TOS 4.2.x:
代码: 全选
[root@TNAS-???? ~]# cd /
[root@TNAS-???? /]# mdadm --grow /dev/md0 --size=max
[root@TNAS-???? /]# umount /mnt/md0
[root@TNAS-???? /]# umount /home
[root@TNAS-???? /]# vgchange -an vg0
[root@TNAS-???? /]# pvresize /dev/md0
[root@TNAS-???? /]# vgchange -ay vg0
[root@TNAS-???? /]# lvextend -l +100%FREE /dev/vg0/lv0代码: 全选
[test@TNAS-???? ~]# cd /
[test@TNAS-???? /]# mdadm --grow /dev/md0 --size=max
[test@TNAS-???? /]# umount /Volume1
[test@TNAS-???? /]# umount /home
[test@TNAS-???? /]# vgchange -an vg0
[test@TNAS-???? /]# pvresize /dev/md0
[test@TNAS-???? /]# vgchange -ay vg0
[test@TNAS-???? /]# lvextend -l +100%FREE /dev/vg0/lv0代码: 全选
[test@TNAS-???? ~]# cd /
[test@TNAS-???? /]# mdadm --grow /dev/md0 --size=max
[test@TNAS-???? /]# umount /Volume1
[test@TNAS-???? /]# umount /home
[test@TNAS-???? /]# vgchange -an vg0
[test@TNAS-???? /]# pvresize /dev/md0
[test@TNAS-???? /]# vgchange -ay vg0
[test@TNAS-???? /]# lvextend -l +100%FREE /dev/vg0/lv0
代码: 全选
[test@TNAS-???? ~]# cd /
[test@TNAS-???? /]# mdadm --grow /dev/md0 --size=max
[test@TNAS-???? /]# umount /Volume1
[test@TNAS-???? /]# umount /var/subvols/8vEbTxkKvwa
[test@TNAS-???? /]# umount /home
[test@TNAS-???? /]# vgchange -an vg0
[test@TNAS-???? /]# pvresize /dev/md0
[test@TNAS-???? /]# vgchange -ay vg0
[test@TNAS-???? /]# lvextend -l +100%FREE /dev/vg0/lv0
注意:
无论是 ext4 还是 btrfs 文件系统,若要卸载的卷并非该文件系统中的第一个卷,在执行卸载命令时,都需将默认命令 umount /Volume1 中的 /Volume1 修改为对应的卷名,例如要卸载第二个卷,则命令为 umount /Volume2。
另外,在 btrfs 文件系统格式下,后续执行 umount /var/subvols/8vEbTxkKvwa 这类命令时,若涉及非首个卷对应的子卷,也需将命令修改为 umount /var/subvols/8vEbTxkKvw?,其中 “?” 处为对应的子卷名称。这些名称均可通过 df -T 命令查看确认。如下图:

若提示“Target is busy”,请参考此以下操作指引解除其他进程对卷的占用,并取消 SSD 缓存,然后再次执行以上指令。
viewtopic.php?t=4080
TOS 4.1.x & TOS 4.2.x:
代码: 全选
cd /
fuser -mk /mnt/md0代码: 全选
cd /
fuser -mk /Volume14. 调整文件系统大小
首先需要知道调整的卷的文件系统类型(btrfs/ext4),执行以下指令进行确认:
代码: 全选
[root@TNAS-???? ~]blkid /dev/vg0/lv0btrfs
代码: 全选
[root@TNAS-???? ~]# /etc/tos/scripts/mntdata
[root@TNAS-???? ~]# btrfs filesystem resize max /mnt/md0ext4
代码: 全选
[root@TNAS-???? ~]# e2fsck -f /dev/vg0/lv0 -y
[root@TNAS-???? ~]# resize2fs /dev/vg0/lv0待调整文件系统大小命令执行完成后,执行以下指令:
代码: 全选
[root@TNAS-???? ~]# /etc/tos/scripts/mntdata