【转】Linux中vgextend的含义,linux的LVM 具体配置过程「建议收藏」

【转】Linux中vgextend的含义,linux的LVM 具体配置过程「建议收藏」原文:https://blog.csdn.net/weixin_33325305/article/details/117041424LVM:几个基本概念PVPhysicalVolume(物理卷)就是实体磁盘利用fdisk等软件,将他们的ID改为LVM(8e)并修改磁盘的相关信息,让他们

大家好,欢迎来到IT知识分享网。

原文:https://blog.csdn.net/weixin_33325305/article/details/117041424

—————

LVM:

几个基本概念

PV   Physical Volume   (物理卷)就是实体磁盘   利用fdisk等软件,将他们的ID改为LVM(8e)并修改磁盘的相关信息,让他们成为LVM可用的磁盘

实体磁盘的ID 可以通过fdisk -l来查看,通常83是linux的partition,82是swap的代号 我们需要的是PV ID:8e

PV实施过程:fdisk修改ID,以pvcreate建立成PV

建立 PV 与 PV 的查询:

要建立 PV 其实很简单,只要直接使用 pvcreate 即可!我们来谈一谈与 PV 有关的指令吧!

• pvcreate :将实体 partition 建立成为 PV ;

• pvscan :搜寻目前系统里面任何具有 PV 的磁盘;

• pvdisplay :显示出目前系统上面的 PV 状态;

• pvremove :将 PV 属性移除,让该 partition 不具有 PV 属性。

• partprobe :这个指令可以让核心立刻读入最新的 partition table 而不必 reboot。

fdisk /dev/hda

command (m for help):p   这里p是查看磁盘分区的相关情况

command (m for help):t   更换磁盘分区的ID号

partition number(1-4):1   选择相应的磁盘分区1

Hex code(type L to list codes):8e   输入ID号:8e

command (m for help):t   更换磁盘分区的ID号

partition number(1-4):2   选择相应的磁盘分区2

Hex code(type L to list codes):8e   输入ID号:8e

command (m for help):p   查看修改ID后磁盘分区的相关情况

Command (m for help): w   保存配置

partprobe   这个指令可以让核心立刻读取最新的partition table

[root@linux ~]# pvscan

No matching physical volumes found

[root@linux ~]# pvcreate /dev/hdb1

Physical volume “/dev/hdb1” successfully created

[root@linux ~]# pvcreate /dev/hdb2

Physical volume “/dev/hdb2” successfully created

[root@linux ~]# pvscan

PV /dev/hdb1 lvm2 [9.31 GB]

PV /dev/hdb2 lvm2 [9.31 GB]

Total: 2 [18.63 GB] / in use: 0 [0 ] / in no VG: 2 [18.63 GB]

VG   Volume Group  (卷组)  通过将一个或多个PV组合成一个大磁盘,最大容量值与底下的PE有关,如果完全使用LVM的预设参数,那么一个最大的LVM磁盘可达到256G

VG实施过程:利用vgcreate加入多个PV成为VG

建立 VG 及 VG 相关的指令也不少,我们来看看:

• vgcreate :就是主要建立 VG 的指令啦!他的参数比较多,等一下介绍。

• vgscan :搜寻系统上面是否有 VG 存在?

• vgdisplay :显示目前系统上面的 VG 状态;

• vgextend :在 VG 内增加额外的 PV ;

• vgreduce :在 VG 内移除 PV;

• vgchange :设定 VG 是否启动 (active);

• vgremove :删除一个 VG 啊!

先建立 VG 吧!

[root@linux ~]# vgcreate vbirdvg /dev/hdb1 /dev/hdb2     创建一个VG,用两个PV

Volume group “vbirdvg” successfully created

# 整个 vgcreate 的语法很简单,就是利用 vgcreate VGname PVname1 PVname2..

# 不过,如果想要修改前面提到的 PE 参数时,就得要加入 -s PE 数值了!

[root@linux ~]# vgscan     查看具体VG参数

Reading all physical volumes. This may take a while…

Found volume group “vbirdvg” using metadata type lvm2

[root@linux ~]# vgdisplay

— Volume group —

VG Name vbirdvg

System ID

Format lvm2

Metadata Areas 2

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 2

Act PV 2

VG Size 18.62 GB

PE Size 4.00 MB

Total PE 4768

Alloc PE / Size 0 / 0

Free PE / Size 4768 / 18.62 GB

VG UUID AZRSJx-FWYF-UIlH-NCh5-NqKS-f4gx-ZR049N

[root@linux ~]# vgreduce vbirdvg /dev/hdb2      从VG中去掉一个PV

Removed “/dev/hdb2” from volume group “vbirdvg”

[root@linux ~]# vgextend vbirdvg /dev/hdb2      从VG中增加一个PV

Volume group “vbirdvg” successfully extended

PE   在建立VG的时候,我们同时需要指定PE这个数值,预设是4MB;PE为4MB,VG则为256G(一个VG最大可以容许65534的PE,所以修改PE值,当然就会影响到最大的VG容量)

LV   这个就是最后被挂载到档案系统的partition,这个LV是由VG分割来的

LV实施过程:利用lvcreate分割VG成为一个或多个LV

• lvcreate :建立 LV 啦!

• lvscan :查询系统上面的 LV ;

• lvdisplay :显示系统上面的 LV 状态啊!

• lvextend :在 LV 里面增加容量!

• lvreduce :在 LV 里面减少容量;

• lvremove :删除一个 LV !

• lvresize :对 LV 进行容量大小的调整!

[root@linux ~]# lvcreate -L [sizeMG] -n [LVname] VGname

参数:

-L :后面接容量,容量的单位可以是 M, G 等等;

-n :后面接的就是 LV 的名称啦!

更多的说明应该可以自行查阅吧! man lvcreate

[root@linux ~]# lvcreate -L 18.62G -n vbirdlv vbirdvg

Rounding up size to full physical extent 18.62 GB

Logical volume “vbirdlv” created

[root@linux ~]# ll /dev/vbirdvg/vbirdlv

lrwxrwxrwx 1 root root 27 Nov 14 21:10 /dev/vbirdvg/vbirdlv ->

/dev/mapper/vbirdvg-vbirdlv

# 看见了没有啊!?这就是我们最重要的一个玩意儿了!

# 未来所有要挂载的数据,通通是透过这个装置的!

[root@linux ~]# lvscan

ACTIVE ‘/dev/vbirdvg/vbirdlv’ [18.62 GB] inherit

[root@linux ~]# lvdisplay

— Logical volume —

LV Name /dev/vbirdvg/vbirdlv

VG Name vbirdvg

LV UUID B6kSrg-9LMG-gqVy-jjz8-x0gM-ya9S-XLFcZN

LV Write Access read/write

LV Status available

# open 0

LV Size 18.62 GB

Current LE 4767

Segments 2

Allocation inherit

Read ahead sectors 0

Block device 253:0

透过PV ,VG,LV的规划,再利用mkfs(mke2fs -j)等等就可以将您的多个partition整合成为一个大磁盘,再利用这个大磁盘来分割与格式化。

这个大磁盘可以增加,减少容量的变化,也就是说,VG大磁盘可以抽换PV,并且原有的数据,理论上不会受影响。

最后实施过程:分割LV逻辑partition,然后格式化,直接挂载到LINUX的档案系统中。

partition 的格式化与挂载!

[root@linux ~]# mke2fs -j /dev/vbirdvg/vbirdlv

[root@linux ~]# mkdir /mnt/lvm

[root@linux ~]# mount -t ext3 /dev/vbirdvg/vbirdlv /mnt/lvm

[root@linux ~]# df  查看分区情况

[root@linux ~]# fdisk -l /dev/hdb  查看/dev/hdb的具体分区和使用情况

让原有的 LVM 磁盘加大的方法: resize2fs

1. 将欲处理的 LV 卸载;

umount /mnt/lvm

2. 建立 PV;

[root@linux ~]# fdisk /dev/hdb

Command (m for help): t

Partition number (1-4): 3

Hex code (type L to list codes): 8e

Changed system type of partition 3 to 8e (Linux LVM)

Command (m for help): w

The partition table has been altered!

[root@linux ~]# partprobe

[root@linux ~]# pvcreate /dev/hdb3

3. 将建立的 PV 以 vgextend 增加到 VG 当中;

[root@linux ~]# vgextend vbirdvg /dev/hdb3

4. 利用 lvextend 增加刚刚 VG 所增加的容量;

lvextend -L +10G /dev/vbirdvg/vbirdlv

5. 利用 resize2fs 将 LV 的容量确实增加!

[root@linux ~]# mount -t ext3 /dev/vbirdvg/vbirdlv /mnt/lvm

[root@linux ~]# resize2fs [-f] [device] [size]

[root@linux ~]# umount /mnt/lvm

[root@linux ~]# resize2fs -f /dev/vbirdvg/vbirdlv

[root@linux ~]# mount -t ext3 /dev/vbirdvg/vbirdlv /mnt/lvm

另外,如果你想要将 LVM 移除的话,那么就应该要:

1. 先卸载系统上面的 LVM 扇区;

2. 使用 lvremove 移除 LV ;

3. 使用 vgchange -a n VGname 让 VGname 这个 VG 不具有 Active 的标志;

4. 使用 vgremove 移除 VG:

5. 使用 pvremove 移除 PV;

6. 最后,使用 fdisk 修改 ID 回来啊!

本文出自 “wxfxn2000” 博客,谢绝转载!

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/28068.html

(0)
上一篇 2023-10-06 21:15
下一篇 2023-10-08 10:00

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信