參考:
- 減小lvm根分區容量: http://kwokchivu.blog.51cto.com/1128937/724128
- CentOS 5 LVM邏輯卷管理: http://sunshyfangtian.blog.51cto.com/1405751/860018
目標
home、根各爲50GB空間,根空間不足,需縮小home至10GB、擴大根爲90GB。
lvm> lvscan ACTIVE '/dev/vg_db/lv_root' [50.00 GiB] inherit ACTIVE '/dev/vg_db/lv_home' [50.00 GiB] inherit ACTIVE '/dev/vg_db/lv_swap' [9.83 GiB] inherit
縮小home、增大根分區
進入rescue模式
增大root分區是否可以在線完成、不用進rescue狀態?找機會試試...從Linux安裝光盤啓動進入rescue模式; 選擇相關的語言,鍵盤模式,當系統提示啓用網絡設備時,選擇“NO”; 然後在提示允許rescue模式掛載本地Linux系統到/mnt/sysimage下時選擇“Skip”,文件系統必須不被掛載纔可以對/分區減小容量操作。 最後系統會提示選擇進入shell終端還是reboot機器,選擇進入shell終端。 ### 激活分區 輸入lvm命令,進入lvm界面,依次輸入pvscan、vgscan、lvscan三個命令掃描pv、vg、lv相關信息。 然後輸入lvchange -ay /dev/vg_db/lv_root(上文提到的/分區名稱)此命令是激活/分區所在的邏輯卷,輸入 quit返回到bash shell界面。
lvchange -ay /dev/vg_db/lv_home lvchange -ay /dev/vg_db/lv_root
縮小home分區
- 先檢查下分區: e2fsck -f /dev/vg_db/lv_home
- 縮小文件系統大小:resize2fs /dev/vg_db/lv_home 10G
-
縮小邏輯卷
- 輸入lvm命令進入lvm模式
- 縮小邏輯卷:lvreduce -L 10G /dev/vg_db/lv_home
- 系統會詢問是否縮小邏輯卷,輸入 y 確定。
-
查看修改結果: vgdisplay,lvdisplay
減小LVM中的文件系統必須離線操作(處於umount裝態),要減小文件系統和LV: # Unmount相應的文件系統 # 運行磁盤檢查確保卷的完整 # 減小文件系統 # 減小LV
擴大根分區
- 先檢查下分區: e2fsck -f /dev/vg_db/lv_root
-
擴大邏輯卷:
- 輸入lvm命令進入lvm模式
- 擴大邏輯卷:lvresize -L +40G /dev/vg_db/lv_root
-
更改文件系統大小
- resize2fs -p /dev/vg_db/lv_root
-
查看修改結果: lvscan
其他操作
修改swap卷大小
- 取消激活swap空間: swapoff
- 修改swap分區大小: lvresize -L 4G /dev/vg_db/lv_swap
- 重新格區化: mkswap -f /dev/vb_db/lv_swap
- 激活swap空間: swapon
新建邏輯卷lv_develop
- 創建邏輯卷 : lvcreate -L 2.8G -n lv_develop /dev/vb_db
- 創建文件系統 : mkfs.ext3 /dev/vg_db/lv_develop
增加物理盤
- fdisk分區,並將分區類型爲0×8e(Linux LVM)
- 創建物理卷PV: pvcreate /dev/hdb1
- 創建卷組VG: vgcreate vgtest /dev/hdb1
- 添加PV到VG: vgextend
- 創建邏輯卷LV: lvcreate -L 6000M -n mysql vgtest
- 創建文件系統: mkfs -t ext3 /dev/vgtest/mysql
- 建立新分區卷標: tune2fs –L /mysql /dev/vgtest/mysql
- 加載新分區: mount –t ext3 /dev/vgtest/mysql /mysql
-
卸載卷的順序:
- umount
- 卸載邏輯卷:lvremove LVDEVICE
- 卸載卷組:vgremove VGNAME
- 卸載物理卷:pvremove PVDEVICE
LVM分區在線擴容
2011-12-19 15:24:16
http://share.blog.51cto.com/278008/745479
今天對三臺服務器的LV分區進行了一次擴容。本文有點標題黨嫌疑,因爲只有一臺服務器是在線擴容,其它兩臺都是先卸載再擴容的。
在線擴容的這臺服務器,LV分區格式爲xfs,原大小1.2TB。增加了一塊硬盤,大小爲1.8TB。
fdisk
/dev/cciss/c0d1
# 創建分區,並指定分區類型爲LVM (8e)
pvcreate ``/dev/cciss/c0d1p1
# 創建pv
vgextend VolGroup00 ``/dev/cciss/c0d1p1
# 添加新創建的pv到原有vg
lvextend -L +1.8T ``/dev/mapper/VolGroup00-LogVol05
# 在線擴容指定lv分區
xfs_growfs ``/dev/mapper/VolGroup00-LogVol05
# 使擴容生效。注意xfs文件系統的生效命令
其它兩臺服務器也是新增了一個1.8TB的硬盤,要擴容的LV分區格式爲ext3。之所以沒有進行在線擴容,是因爲沒有找到ext2online命令;後來發現,resize2fs也是支持在線擴容的!
lvextend -l +100%FREE ``/dev/mapper/VolGroup00-LogVol05
umount
-l ``/dev/mapper/VolGroup00-LogVol05
e2fsck -f ``/dev/mapper/VolGroup00-LogVol05
# 過程比較長
resize2fs ``/dev/mapper/VolGroup00-LogVol05
# 也要幾分鐘時間
mount
/dev/mapper/VolGroup00-LogVol05
/hdfs
雖然resize2fs可以在線使用,但是對在線lv分區執行e2fsck有點風險!