1、 LVM简介服务器
在 Linux 中规定,每个硬盘设备最多能有 4个主分区(其中包含扩展分区)构成,任何一个扩展分区都要占用一个主分区号码,也就是在一个硬盘中,主分区和扩展分区一共最可能是 4 个。ide
对于每个硬盘(IDE 或 SCSI)设备,Linux 分配了一个 1 到 16 的序列号码,这就表明了这块硬盘上面的分区号码。3d
LVM 是一个应用于 Linux 内核的本地卷管理器 (Logical Volume Manager)。 使用 LVM 你能够抽象你的存储空间,而且能够有很容易更改的“虚拟分区”。LVM的基本模块以下:blog
Physical volume (PV): 物理卷,例如一个硬盘,或一个Software RAID设备; 硬盘的一个分区 (或者甚至硬盘自己或者回环文件),在它上面能够创建卷组。ip
Volume group (VG): 卷组,将一组物理卷收集为一个管理单元;rem
Logical volume(LV): 逻辑卷,等同于传统分区,可看做便准的块设备,以容纳文件系统;get
Physical extent (PE): 物理块,划分物理卷的数据块。it
使用 LVM 你能够比正常的硬盘分区更容易的管理硬盘分区(逻辑卷)。例如,你能够:class
使用卷组(VG),使众多硬盘空间看起来像一个大硬盘。cli
使用逻辑卷(LV),能够建立跨越众多硬盘空间的分区。
能够根据须要,对分区(LV)和硬盘空间(VG)进行建立、删除、调整大小等操做
2、 建立LVM
应用场景存:一台Linux服务器增长两块硬盘,实现lvm便于动态扩展空间。
一、分别创建两个lvm逻辑分区
fdisk /dev/sdb
输入n
输入p
输入1
Enter
Enter
输入t
输入8e 设置lvm分区号
输入w 保存
fdisk /dev/sdc
输入n
输入p
输入1
Enter
Enter
输入t
输入8e 设置lvm分区号
输入w 保存
二、创建Physical Volume(物理卷PV)
yum install lvm2
pvcreate /dev/sdc1
pvscan :搜索当前系统具备pv的磁盘。
pvdisplay:显示当前系统pv状态。
pvremove:将pv属性删除,该分区不具备pv属性。Pvremove /dev/sdb1
pvmove: 把pv的数据迁移到另外空闲的pv。
三、创建Volume Group(卷组VG)
vgcreate vg1 /dev/sdb1 /dev/sdc1
vg1:卷组名。
/dev/sdb1:物理卷名。
/dev/sdc1: 物理卷名。
vgscan:搜索是否vg存在。
vgdisplay:显示VG状态。
vgremove:删除卷组,vgremove vg1
vgextend:卷组内增长额外的物理卷pv,vgextend vg1 /dev/hdc1
vg1:当前卷组名。
/dev/hdc1:新的物理卷pv
vgreducd: 在卷组VG中删除物理卷pv,vgreducd vg1 dev/sdc1。删除前确保pv未被LV使用使用pvdisplay显示当前系统pv状态。
四、设置卷组VG启动
vgchange –a y
vgremove vg1 删除指定的vg。
五、创建逻辑卷LV
lvcreate -L 14G -n lv1 vg1
lv1:逻辑卷名。
vg1:卷组名。
lvscan:查看系统中lv。
lvdisplay:查看lv状态。
lvremove:删除逻辑卷lv,Lvremove vg1 lv1。
lvextend :在 LV 里面添加容量。
lvreduce :在 LV 里面减小容量。
lvresize :对 LV 进行容量大小的调整。
六、格式化
mkfs.ext3 /dev/vg1/lv1
七、挂载
mkdir /lvm
mount /dev/vg1/lv1 /lvm
vi /etc/fstab
/dev/vg1/lv1 /lvm ext3 defaults 0 0
八、扩展LV空间
对新磁盘进行分区
1) fdisk -l 查看目前分区状况
2)新增磁盘hdd未分区,对hdd磁盘分区操做
3)创建Physical Volume(PV)
pvcreate /dev/sdd1
4)将新pv添加到原卷组
vgextend vg1 /dev/sdd1
5)查看卷组剩余空间
vgs
6)扩展lv容量到17.80G
vgs
7) 增长LV容量100M。
vgs
8)在线扩展空间
扩充了LV后,从新挂载,查看大小当前的LV大小并无增大。
umount /dev/vg1/lv1
mount /dev/vg1/lv1 /lvm
df –h
在线进行空间扩展
resize2fs /dev/vg1/lv1
df –h 在线扩展成功
离线扩展:
umount /dev/vg1/lv1
resize_reiserfs /dev/vg1/lv1
mount -treiserfs /dev/vg1/lv1 /lvm