您的位置:首页 > 运维架构 > Linux

linux下 lvm 磁盘扩容

2012-10-12 11:28 507 查看
http://hi.baidu.com/pcbbt/item/a2d805ecb0cd420f560f1d49

打算给系统装一个oracle,发现磁盘空间不足。在安装系统的时候我选择的是自动分区,系统就会自动以LVM的方式分区。为了保证系统后期的可用性,建议所有新系统安装都采用LVM,之后生产上的设备我也打算这样做。

参于LVM基本介绍与常用命令请参考:http://blog.haohtml.com/archives/11957





LVM结构图

扩容之前的磁盘状况

[root@localhost ~]# df -h

文件系统 容量 已用 可用已用%%挂载点

/dev/mapper/VolGroup-lv_root 5.3G 2.5G 2.6G 50% /

tmpfs 538M 0 538M 0% /dev/shm

/dev/sda1 485M 30M 430M 7% /boot

[root@localhost ~]# fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes

...............

Device Boot Start End Blocks Id System

/dev/sda1 * 1 64 512000 83 Linux

Partition 1 does not end on cylinder boundary.

/dev/sda2 64 1045 7875584 8e Linux LVM



Disk /dev/mapper/VolGroup-lv_root: 5779 MB, 5779750912 bytes

........

Disk /dev/mapper/VolGroup-lv_swap: 2281 MB, 2281701376 bytes

.........



此次扩容的方案为:

1、加1个5G的空间给/

2、加1个10G的空间给/oracle



(一) 在VM中加一个15G的磁盘





重启后#fdisk –l可以看到新的磁盘已经认出来了。



Disk /dev/sdb: 16.1 GB, 16106127360 bytes

............................

Disk /dev/sdb doesn't contain a valid partition table



(二)创建物理卷(PV)

#pvcreate /dev/sdb

查看系统PV的情况:

[root@localhost ~]# pvdisplay

--- Physical volume ---

PV Name /dev/sda2 //原有硬盘上的PV

VG Name VolGroup

PV Size 7.51 GiB / not usable 3.00 MiB

Allocatable yes (but full)

PE Size 4.00 MiB

Total PE 1922

Free PE 0

Allocated PE 1922

PV UUID SGH1dY-4tp2-Nr1a-w93Z-V4LA-pQBh-VGzzTH

"/dev/sdb" is a new physical volume of "15.00 GiB"

--- NEW Physical volume ---

PV Name /dev/sdb

VG Name //新建的PV的VG name是空的,下一步就是把PV加入VG

PV Size 15.00 GiB

Allocatable NO

PE Size 0

Total PE 0

Free PE 0

Allocated PE 0

PV UUID 8TZUlz-YyUp-RBvf-lSzm-7MgG-DSZS-qNqX1Z

查看原VG的情况

[root@localhost ~]# vgdisplay

--- Volume group ---

VG Name VolGroup //注意记录此名字,扩容时将新的pv加入指定的名字

System ID

Format lvm2

Metadata Areas 1

Metadata Sequence No 3

VG Access read/write

VG Status resizable

MAX LV 0

Cur LV 2

Open LV 2

Max PV 0

Cur PV 1

Act PV 1

VG Size 7.51 GiB

PE Size 4.00 MiB

Total PE 1922

AllocPE / Size 1922 / 7.51 GiB

Free PE / Size 0 / 0

VG UUID FnUsmX-s284-GeRK-hJNJ-BbIG-Vpe7-OuFZE1



(三)#扩展卷组,将/dev/sdb物理卷添加到VolGroup卷组中

[root@localhost ~]# vgextend VolGroup /dev/sdb

Volume group "VolGroup" successfully extended

再查看VG情况,可以看到VG大小变化,空余空间。

[root@localhost ~]# vgdisplay

--- Volume group ---

VG Name VolGroup

System ID

Format lvm2

Metadata Areas 2

Metadata Sequence No 4

VG Access read/write

VG Status resizable

MAX LV 0

Cur LV 2

Open LV 2

Max PV 0

Cur PV 2

Act PV 2

VG Size 22.50 GiB

PE Size 4.00 MiB

Total PE 5761

AllocPE / Size 1922 / 7.51 GiB

Free PE / Size 3839 / 15.00 GiB

VG UUID FnUsmX-s284-GeRK-hJNJ-BbIG-Vpe7-OuFZE1

(四)将新的VG空间划入LV(扩容lv_root)

#直接扩展5G给/root分区,不用umount,也不需要重启

# lvextend -L +5G /dev/mapper/VolGroup-lv_root

Extending logical volume lv_root to 10.38 GiB

Logical volume lv_root successfully resized

也可以使用命令

# lvextend -l +30%FREE /dev/mapper/VolGroup-lv_root

此时,如果有df命令查看的话,会发现root空间并没有增加的.还需要执行以下两步操作才可以.

#检查/root逻辑卷

#e2fsck -f /dev/mapper/VolGroup-lv_root

#重新定义分区大小

#resize2fs /dev/mapper/VolGroup-lv_root







查看/目录大小





可以看到/目录已经从原来的5.3G扩容到了11G。



(五)LV卷空间分配(新增lv_oracle)

在VG中还有新增的10G没有用,可以将VG中的空余空间划分为LV,并将新的LV挂载在目录下。

# vgs

VG #PV #LV #SN Attr VSize VFree

VolGroup 2 2 0 wz--n- 22.50g10.00g

//可以通过#vgs命令查看vg信息统计,可以看到VFree还有10G。



将VG空余的空间化分为LV

#lvcreate -L 10G -n lv_oracle VolGroup





图四

//少了一点点空间…

//可以用-l 分,它是按pv块数来分的。一个pv默认是4M,可是从vgdisplay中去查vg中还剩多少pv以及总数是多少。





图五

//查到剩余2559个PE,于是执行

# lvcreate -l 2559 -n lv_oracle VolGroup

Logical volume "lv_oracle" created

提示创建成功后,用vgs和lvs命令分别查看。





图六

(五)挂载LV到目录下

接下来就是要把lv_oracle挂到/oracle,目录下

#cd /

#mkdir oracle

#chmod 777 /oracle

创建/oracle目录并修改权限

# vi /etc/fstab

可以看到目前挂载分区的情况





图七

//我们可以参照/的分区把oracle的加上去。加入这行:

/dev/mapper/VolGroup-lv_oracle /oracle ext4 defaults 0 0

然后把lv_oracle格式化成ext4

#mkfs.ext4 /dev/mapper/VolGroup-lv_oracle





图八

将lv_oracle mount到目录/oracle上

# mount /dev/mapper/VolGroup-lv_oracle /oracle之后查看一下分区情况





图九

可以重启系统检查一下是否正常。





图十

#df –h

挂载正常,可以收工了。

相关教程:

CentOS下lvm分区简介:http://blog.haohtml.com/archives/10298

创建Raid阵列和lvm逻辑卷组: http://docs.haohtml.com/download/linux/%b4%b4%bd%a8Raid%d5%f3%c1%d0%ba%cdlvm%c2%df%bc%ad%be%ed%d7%e9.pdf
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: