linux vgcreate vgchange vgconvert vgreduce vgextend vgmerge vgsplit vgrename和vgremove 命令
如果我们是Linux用户或者Linux系统管理员,或者在生产环境中工作,则必须了解软件磁盘管理以及在存储管理中提供灵活性的所有方法。
在存储管理中,我们必须对LVM有深入的了解。
但是在使用lvm之前,我们必须对卷组有全面的了解。
这是有关Linux卷组的详细教程。
本文中提到的所有内容都将直接或者间接与Linux卷组相关。
我们将学习如何使用命令行来管理与卷组有关的存储设备。
vgcreate vgremove vgchange vgconvert vgreduce vgextend vgmerge vgsplit和vgrename是我们将在本教程内部详细讨论的那些linux命令。
首先,我们需要创建用于创建卷组的物理卷。
[root@localhost ~]# pvcreate /dev/hda{6,7,8} Physical volume "/dev/hda6" successfully created Physical volume "/dev/hda7" successfully created Physical volume "/dev/hda8" successfully created
要检查是否已创建物理卷,请使用pvscan命令。
[root@localhost ~]# pvscan PV /dev/hda6 lvm2 [482.83 MB] PV /dev/hda7 lvm2 [862.84 MB] PV /dev/hda8 lvm2 [1.13 GB] Total: 3 [2.44 GB]/in use: 0 [0 ]/in no VG: 3 [2.44 GB]
然后,我们创建名为vg00的卷组。
[root@localhost ~]# vgcreate vg00 /dev/hda{6,7,8} Volume group "vg00" successfully created [root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree vg00 3 0 0 wz--n- 2.43G 2.43G [root@localhost ~]# pvscan PV /dev/hda6 VG vg00 lvm2 [480.00 MB/480.00 MB free] PV /dev/hda7 VG vg00 lvm2 [860.00 MB/860.00 MB free] PV /dev/hda8 VG vg00 lvm2 [1.12 GB/1.12 GB free] Total: 3 [2.43 GB]/in use: 3 [2.43 GB]/in no VG: 0 [0 ] [root@localhost ~]# vgdisplay --- Volume group -- VG Name vg00 System ID Format lvm2 Metadata Areas 3 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 3 Act PV 3 VG Size 2.43 GB PE Size 4.00 MB Total PE 623 Alloc PE/Size 0/0 Free PE/Size 623/2.43 GB VG UUID 7rDn7R-vnAv-aFQv-XlrP-CDha-h2tz-sNptkj
了解如何使用“ vgchange命令”限制卷组的最大逻辑卷数
[root@localhost ~]# vgchange -l 110 /dev/vg00 Volume group "vg00" successfully changed
现在,使用vgdisplay命令,我们可以检查该组中允许的最大逻辑卷数。
只需在下面的输出中看到“ MAX LV 110”即可。
[root@localhost ~]# vgdisplay --- Volume group -- VG Name vg00 System ID Format lvm2 Metadata Areas 3 Metadata Sequence No 2 VG Access read/write VG Status resizable MAX LV 110 Cur LV 0 Open LV 0 Max PV 0 Cur PV 3 Act PV 3 VG Size 2.43 GB PE Size 4.00 MB Total PE 623 Alloc PE/Size 0/0 Free PE/Size 623/2.43 GB VG UUID 7rDn7R-vnAv-aFQv-XlrP-CDha-h2tz-sNptkj
如何使用“ vgreduce”命令从卷组中删除物理卷。
[root@localhost ~]# pvscan PV /dev/hda6 VG vg00 lvm2 [480.00 MB/480.00 MB free] PV /dev/hda7 VG vg00 lvm2 [860.00 MB/860.00 MB free] PV /dev/hda8 VG vg00 lvm2 [1.12 GB/1.12 GB free] Total: 3 [2.43 GB]/in use: 3 [2.43 GB]/in no VG: 0 [0 ]
现在,我将在此处从卷组vg00中删除“/dev/hda6”物理卷。
[root@localhost ~]# vgreduce vg00 /dev/hda6 Removed "/dev/hda6" from volume group "vg00"
现在,我们可以使用pvscan命令检查是否已删除物理卷/dev/hda6.
[root@localhost ~]# pvscan PV /dev/hda7 VG vg00 lvm2 [860.00 MB/860.00 MB free] PV /dev/hda8 VG vg00 lvm2 [1.12 GB/1.12 GB free] PV /dev/hda6 lvm2 [482.83 MB] Total: 3 [2.44 GB]/in use: 2 [1.96 GB]/in no VG: 1 [482.83 MB]
现在,我们可以非常清楚地看到,物理卷/dev/hda6现在不是卷组vg00的一部分。
如何使用“ vgextend”命令将物理卷添加到卷组。
现在,我想向现有的卷组vg00中添加一个新的物理卷/dev/hda9.
在添加任何新的物理卷之前,让我们先看一下卷组详细信息。
[root@localhost ~]# pvscan PV /dev/hda7 VG vg00 lvm2 [860.00 MB/860.00 MB free] PV /dev/hda8 VG vg00 lvm2 [1.12 GB/1.12 GB free] PV /dev/hda6 lvm2 [482.83 MB] PV /dev/hda9 lvm2 [964.81 MB] Total: 4 [3.38 GB]/in use: 2 [1.96 GB]/in no VG: 2 [1.41 GB] [root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree vg00 2 0 0 wz--n- 1.96G 1.96G
现在,我将新的物理卷/dev/hda9添加到卷组vg00。
[root@localhost ~]# vgextend vg00 /dev/hda9 Volume group "vg00" successfully extended
在向其添加新的物理卷之后,现在检查卷组详细信息。
[root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree vg00 3 0 0 wz--n- 2.91G 2.91G
如何使用“ vgsplit”命令拆分卷组的物理卷。
在拆分卷组vg00之前,让我们看一下卷组。
[root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree vg00 3 0 0 wz--n- 2.91G 2.91G [root@localhost ~]# pvscan PV /dev/hda7 VG vg00 lvm2 [860.00 MB/860.00 MB free] PV /dev/hda8 VG vg00 lvm2 [1.12 GB/1.12 GB free] PV /dev/hda9 VG vg00 lvm2 [964.00 MB/964.00 MB free] PV /dev/hda6 lvm2 [482.83 MB] Total: 4 [3.38 GB]/in use: 3 [2.91 GB]/in no VG: 1 [482.83 MB]
现在我们可以清楚地看到,这里只有一个卷组,名为vg00,大小为2.91GB。
现在,我将使用vgsplit命令拆分此卷组vg00。
[root@localhost ~]# vgsplit vg00 vg11 /dev/hda7 New volume group "vg11" successfully split from "vg00"
现在,在拆分卷组之后查看卷组详细信息,以确认成功拆分。
[root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree vg00 2 0 0 wz--n- 2.07G 2.07G vg11 1 0 0 wz--n- 860.00M 860.00M
现在我们可以清楚地看到现在有两个卷组vg00和vg11.
[root@localhost ~]# pvscan PV /dev/hda8 VG vg00 lvm2 [1.12 GB/1.12 GB free] PV /dev/hda9 VG vg00 lvm2 [964.00 MB/964.00 MB free] PV /dev/hda7 VG vg11 lvm2 [860.00 MB/860.00 MB free] PV /dev/hda6 lvm2 [482.83 MB] Total: 4 [3.38 GB]/in use: 3 [2.91 GB]/in no VG: 1 [482.83 MB]
我们可以清楚地看到两个卷组vg00和vg11,其中vg00由/dev/hda8组成,而/dev/hda9和vg11由/dev/hda7组成。
注意:无法在卷组之间拆分逻辑卷。
vgsplit仅移动完整的物理卷。
现在出现了一个问题,当我们要移动一部分物理体积时该怎么办?
答案非常简单,如果要移动一部分物理卷,只需使用pvmove命令。
如何使用vgmerge“命令”合并两个卷组。
在上面的pvscan输出中,我们可以清楚地看到现在有两个卷组“ vg00”和“ vg11”。
现在我要做的是合并或者可以说将这两个卷组合并在一起。
所以让我们看看如何合并或者合并使用“ vgmerge”命令合并这两个卷组。
[root@localhost ~]# vgmerge -v vg00 vg11 Checking for volume group "vg00" Checking for volume group "vg11" Archiving volume group "vg11" metadata (seqno 2). Archiving volume group "vg00" metadata (seqno 5). Writing out updated volume group Creating volume group backup "/etc/lvm/backup/vg00" (seqno 6). Volume group "vg11" successfully merged into "vg00"
现在,我们可以使用vgs命令或者vgdisplay命令或者pvscan命令检查卷组状态或者卷组信息以进行确认。
[root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree vg00 3 0 0 wz--n- 2.91G 2.91G [root@localhost ~]# pvscan PV /dev/hda8 VG vg00 lvm2 [1.12 GB/1.12 GB free] PV /dev/hda9 VG vg00 lvm2 [964.00 MB/964.00 MB free] PV /dev/hda7 VG vg00 lvm2 [860.00 MB/860.00 MB free] PV /dev/hda6 lvm2 [482.83 MB] Total: 4 [3.38 GB]/in use: 3 [2.91 GB]/in no VG: 1 [482.83 MB]
如何使用“ vgrename”命令重命名卷组。
现在其中将介绍如何使用vgrename命令重命名卷组。
例如,我要将卷组vg00重命名为shivangi。
[root@localhost ~]# vgrename /dev/vg00 /dev/shivangi Volume group "vg00" successfully renamed to "shivangi"
为了进行确认,请使用vgs或者pvscan命令检查卷组信息。
[root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree shivangi 3 0 0 wz--n- 2.91G 2.91G [root@localhost ~]# pvscan PV /dev/hda8 VG shivangi lvm2 [1.12 GB/1.12 GB free] PV /dev/hda9 VG shivangi lvm2 [964.00 MB/964.00 MB free] PV /dev/hda7 VG shivangi lvm2 [860.00 MB/860.00 MB free] PV /dev/hda6 lvm2 [482.83 MB] Total: 4 [3.38 GB]/in use: 3 [2.91 GB]/in no VG: 1 [482.83 MB]
如何使用“ vgconvert”将lvm1转换为lvm2
[root@localhost ~]# vgconvert -M2 shivangi Volume group "shivangi" already uses format lvm2
因为我已经在使用lvm版本2,所以我们可以看到上面的输出。
现在如何将lvm2转换为lvm1.
如何降级LVM版本。
[root@localhost ~]# vgconvert -M1 shivangi Volume group shivangi successfully converted
为了进行确认,我们可以使用pvscan命令进行检查。
[root@localhost ~]# pvscan PV /dev/hda7 VG shivangi lvm1 [860.00 MB/860.00 MB free] PV /dev/hda8 VG shivangi lvm1 [1.12 GB/1.12 GB free] PV /dev/hda9 VG shivangi lvm1 [964.00 MB/964.00 MB free] PV /dev/hda6 lvm2 [482.83 MB] Total: 4 [3.38 GB]/in use: 3 [2.91 GB]/in no VG: 1 [482.83 MB]
因此,现在我们可以清楚地看到lvm版本为1,显示为lvm1.
我们也可以使用vgconvert命令将lvm版本1转换回lvm版本2.
[root@localhost ~]# vgconvert -M2 shivangi Volume group shivangi successfully converted
为了确认,请使用pvscan再次检查。
[root@localhost ~]# pvscan PV /dev/hda7 VG shivangi lvm2 [860.00 MB/860.00 MB free] PV /dev/hda8 VG shivangi lvm2 [1.12 GB/1.12 GB free] PV /dev/hda9 VG shivangi lvm2 [964.00 MB/964.00 MB free] PV /dev/hda6 lvm2 [482.83 MB] Total: 4 [3.38 GB]/in use: 3 [2.91 GB]/in no VG: 1 [482.83 MB]
因此,我们可以看到它已转换回lvm version2.