打算給系統(tǒng)裝一個(gè)oracle,發(fā)現(xiàn)磁盤空間不足陨闹。在安裝系統(tǒng)的時(shí)候我選擇的是自動(dòng)分區(qū)樟凄,系統(tǒng)就會(huì)自動(dòng)以LVM的方式分區(qū)聘芜。為了保證系統(tǒng)后期的可用性,建議所有新系統(tǒng)安裝都采用LVM缝龄,之后生產(chǎn)上的設(shè)備我也打算這樣做汰现。
LVM結(jié)構(gòu)圖
擴(kuò)容之前的磁盤狀況
[root@localhost ~]#?df -h
文件系統(tǒng)?????????????容量?已用?可用已用%%掛載點(diǎn)
/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
.........
此次擴(kuò)容的方案為:
1、加1個(gè)5G的空間給/
2、加1個(gè)10G的空間給/oracle
(一)???在VM中加一個(gè)15G的磁盤
重啟后#fdisk –l可以看到新的磁盤已經(jīng)認(rèn)出來了。
Disk /dev/sdb: 16.1 GB, 16106127360 bytes
............................
Disk /dev/sdb doesn't contain a valid partition table
(二)創(chuàng)建物理卷(PV)
#pvcreate /dev/sdb
查看系統(tǒng)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?//注意記錄此名字,擴(kuò)容時(shí)將新的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
(三)#擴(kuò)展卷組,將/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(擴(kuò)容lv_root)
#直接擴(kuò)展5G給/root分區(qū)驮捍,不用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
此時(shí),如果有df命令查看的話,會(huì)發(fā)現(xiàn)root空間并沒有增加的.還需要執(zhí)行以下兩步操作才可以.
#檢查/root邏輯卷
#e2fsck -f /dev/mapper/VolGroup-lv_root
#重新定義分區(qū)大小
#resize2fs /dev/mapper/VolGroup-lv_root
?
查看/目錄大小
可以看到/目錄已經(jīng)從原來的5.3G擴(kuò)容到了11G脚曾。
(五)LV卷空間分配(新增lv_oracle)
在VG中還有新增的10G沒有用东且,可以將VG中的空余空間劃分為L(zhǎng)V,并將新的LV掛載在目錄下本讥。
# vgs
VG???????#PV #LV #SN Attr???VSize??VFree
VolGroup???2???2???0 wz--n- 22.50g10.00g
//可以通過#vgs命令查看vg信息統(tǒng)計(jì)珊泳,可以看到VFree還有10G鲁冯。
將VG空余的空間化分為L(zhǎng)V
#lvcreate -L 10G -n lv_oracle VolGroup
圖四
//少了一點(diǎn)點(diǎn)空間…
//可以用-l?分,它是按pv塊數(shù)來分的色查。一個(gè)pv默認(rèn)是4M薯演,可是從vgdisplay中去查vg中還剩多少pv以及總數(shù)是多少。
圖五
//查到剩余2559個(gè)PE秧了,于是執(zhí)行
# lvcreate -l 2559 -n lv_oracle VolGroup
Logical volume "lv_oracle" created
提示創(chuàng)建成功后跨扮,用vgs和lvs命令分別查看。
圖六
?
(五)掛載LV到目錄下
接下來就是要把lv_oracle掛到/oracle示惊,目錄下
#cd /
#mkdir oracle
#chmod 777 /oracle
創(chuàng)建/oracle目錄并修改權(quán)限
# vi /etc/fstab
可以看到目前掛載分區(qū)的情況
圖七
//我們可以參照/的分區(qū)把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之后查看一下分區(qū)情況
圖九
可以重啟系統(tǒng)檢查一下是否正常。
圖十
#df –h
掛載正常米罚,可以收工了。