打算給系統裝一個oracle,發現磁盤空間不足。在安裝系統的時候我選擇的是自動分區,系統就會自動以LVM的方式分區。爲了保證系統後期的可用性,建議全部新系統安裝都採用LVM,以後生產上的設備我也打算這樣作。html
參於LVM基本介紹與經常使用命令請參考:http://blog.haohtml.com/archives/11957oracle
擴容以前的磁盤情況ide
[root@localhost ~]# df -hspa
文件系統 容量 已用 可用已用%%掛載點3d
/dev/mapper/VolGroup-lv_root 5.3G 2.5G 2.6G 50% /orm
tmpfs 538M 0 538M 0% /dev/shmhtm
/dev/sda1 485M 30M 430M 7% /bootblog
[root@localhost ~]# fdisk -lget
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的空間給/
二、加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
查看/目錄大小
(五)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
掛載正常,能夠收工了。
轉載:http://www.cnblogs.com/einyboy/archive/2012/05/31/2528661.html