扩展 Areca 1220 RAID 5 阵列后调整 LVM 卷大小时出现问题

扩展 Areca 1220 RAID 5 阵列后调整 LVM 卷大小时出现问题

在此先感谢你的帮助。

我最初的设置是 Areca 1220 RAID 卡,其中 (5) 个 2TB 驱动器组成 RAID 5,并带有一个热备用,因此只有其中 4 个驱动器构成阵列的一部分,总共 6TB。然后我创建了一个 LVM2 卷并将其挂载为 /storage(我的根目录是一个单独的驱动器)。我将 LVM2 卷格式化为 EXT4。

几天前,我连接了另一个 2TB(完全相同型号)的驱动器,卡找到了它,我能够初始化它(实际上由于某些愚蠢的原因必须将其设置为 7999GB)并且能够很好地扩展我的 RAID 卷。

我找到了这个人:http://causton.net/areca.shtml有一个几乎相同的设置,所以我尝试按照他的说明进行操作,但当我到达时,pvdisplay它仍然说只有原始可用空间量。这是 pvdisplay 的输出:

--- Physical volume ---
PV Name /dev/sdb1
VG Name grp0
PV Size 5.46 TiB / not usable 3.81 MiB
Allocatable yes (but full)`
PE Size 4.00 MiB
Total PE 1430510`
Free PE 0`
Allocated PE 1430510`
PV UUID n3Jzyl-nWUw-lKGC-KiJb-7yUu-3jkI-GOOytf`

因此,您可以看到有 0 个可用的 PE,但根据我的理解,应该有一些。

我还在包括这个论坛在内的各种论坛上找到了遇到类似问题的人,但他们的建议都没有任何帮助,而且我实际上已经到了无法再安装卷的地步,但能够恢复到我犯错之前的状态。

我尝试过重启、升级 RAID 固件、手动设置 PE 大小,甚至尝试过查看文件系统是否会自动增加,但都无济于事。还有一件有趣的事情,parted(和gparted)显示有 8TB 可用,但表示无法管理 LVM 分区,因此显然没有成功。

为了保险起见,这里是lvdisplay

--- Logical volume ---
LV Name /dev/grp0/vol0
VG Name grp0
LV UUID cQ2Eqv-qMDV-xa7D-cMLA-EU1i-3pKg-iJQ9gz
LV Write Access read/write
LV Status available
# open 1
LV Size 5.46 TiB
Current LE 1430510
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 251:0

vgdisplay

--- Volume group ---
VG Name grp0
System ID 
Format lvm2
Metadata Areas 1
Metadata Sequence No 18
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size 5.46 TiB
PE Size 4.00 MiB
Total PE 1430510
Alloc PE / Size 1430510 / 5.46 TiB
Free PE / Size 0 / 0 
VG UUID zqKhpV-j7fi-IeIU-A4aV-0fDo-YWHF-C5M0il

还,parted

Model: Areca ARC-1220-VOL#00 (scsi)
Disk /dev/sdb: 7999GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number Start End Size File system Name Flags
1 1049kB 6000GB 6000GB lvm

还有一件奇怪的事情,当我跑步时,pvscan我得到了这个,但我不明白为什么:

PV /dev/sdb1 VG grp0 lvm2 [5.46 TiB / 0 free]
Total: 1 [1.46 TiB] / in use: 1 [1.46 TiB] / in no VG: 0 [0 ]

如果我还能提供其他信息,请告诉我。

谢谢

答案1

您的硬件 RAID 卷将作为 /dev/sdb 公开给系统。如果您直接在 sdb 上创建了 LVM 物理卷,则在其上运行 pvresize 会获取您添加的空间。

您没有直接使用 sdb,而是创建了一个分区 sdb1,并使用它。该分区仍然有 6000GB。您必须删除该分区并使用全部 7999GB 重新创建它。我推荐的操作 GUID 分区表的工具是gpt fdisk (又名 gdisk)。以下是您需要采取的步骤。在执行此操作之前,请确认您已对所有数据进行了良好的备份。

  1. 使用 gdisk /dev/sdb 启动 gdisk
  2. 按 b 备份 GPT 数据
  3. 按 x 调出专家菜单
  4. 按 e 将备份数据结构重新定位到磁盘末尾
  5. 按 l 键更改扇区对齐。将其设置为 1。
  6. 按 m 返回主菜单
  7. 按 i 查看分区信息。注意第一个扇区。
  8. 按 d 删除分区。
  9. 按 n 创建新分区。接受默认设置。
  10. 按 i 查看新分区的信息。确保它具有与之前相同的第一个扇区。
  11. 按 w 写入新信息。

重新启动后,您应该能够在 /dev/sdb1 上运行 pvresize 并让其检测额外的空间。

这种令人头疼的情况就是为什么我学会了在没有必要的情况下不要对设备进行分区。

相关内容