代码改变世界

Linux LVM学习总结——Insufficient Free Extents for a Logical Volume

2018-10-05 16:08  潇湘隐者  阅读(7041)  评论(0编辑  收藏  举报

如下所示,在创建LV的时候,偶尔会遇到Volume group "xxxx" has insufficient free space (xxxx extents): xxxx required这类错误。表示Volume group的可用空间不够了。如下测试所示:

 

root@mylnx12:~# lvcreate -L +623G -n LogVol01 VolGroup01
  Volume group "VolGroup01" has insufficient free space (159487 extents): 159488 required.
root@mylnx12:~# vgdisplay
  --- Volume group ---
  VG Name               VolGroup01
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  2
  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               1023.00 GiB
  PE Size               4.00 MiB
  Total PE              261887
  Alloc PE / Size       102400 / 400.00 GiB
  Free  PE / Size       159487 / 623.00 GiB
  VG UUID               KhVEIT-UAnm-Mowf-Cz7e-AQ8h-7Q1P-V5cIIr

 

clip_image001

 

 

使用vgdisplay显示有关逻辑卷的信息,如上所示,明明看到卷组可用的空间为623G,为什么提示空间不够呢?其实正在的原因:可用的PE数量是159487,而每个PE大小是4.00MiB,所以其实这个卷组实际的可用空间其实不是623G,而是622.996G

 

159487.0*4/1024 ~= 622.996093

 

所以创建卷的命令改成lvcreate -L +622.996G -n LogVol01 VolGroup01就可以成功创建,当然,我们也可以使用参数l,使用可用的PE数量来创建逻辑卷。如下所示:

 

root@mylnx12:~# vgs -o +vg_free_count,vg_extent_count
  VG         #PV #LV #SN Attr   VSize    VFree   Free   #Ext  
  VolGroup01   1   1   0 wz--n- 1023.00g 623.00g 159487 261887
 
root@mylnx12:~# lvcreate -l159487  -n LogVol01 VolGroup01
  Logical volume "LogVol01" created.
root@mylnx12:~#