一、查看系統(tǒng)磁盤
當(dāng)使用df -h 命令,可以看到系統(tǒng)的磁盤使用情況,如下所示。
[root@localhost home]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
51G 24G 25G 49% /
tmpfs 935M 0 935M 0% /dev/shm
/dev/xvda1 477M 93M 360M 21% /boot
/dev/mapper/VolGroup-lv_home
199G 60M 189G 1% /home
二、Linux 磁盤擴(kuò)容
當(dāng)LVM分區(qū)空間不足的時(shí)候,可以進(jìn)行擴(kuò)容。主要的擴(kuò)容方法有兩種:
通過空余的磁盤進(jìn)行擴(kuò)容,這個(gè)方法比較簡(jiǎn)單,不會(huì)對(duì)原有數(shù)據(jù)有影響。
將其他LVM分區(qū)空間取出一部分給需要擴(kuò)容的LVM分區(qū)。
下面就分別具體介紹這兩種方法。
三、利用空余磁盤擴(kuò)容
- 首先使用命令fdisk -l 查看磁盤情況,此系統(tǒng)有兩塊硬盤,/dev/xvda 274.9G,/dev/xvdb 10.7G
[root@localhost home]# fdisk -l
Disk /dev/xvda: 274.9 GB, 274877906944 bytes
255 heads, 63 sectors/track, 33418 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000c5cd2
Device Boot Start End Blocks Id System
/dev/xvda1 * 1 64 512000 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/xvda2 64 33419 267922432 8e Linux LVM
Disk /dev/xvdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
- 創(chuàng)建pv ,通過pvcreate命令將磁盤/dev/xvdb創(chuàng)建為一個(gè)系統(tǒng)PV
[root@localhost home]# pvcreate /dev/xvdb
Physical volume "/dev/xvdb" successfully created
- 將 PV /dev/xvdb添加到卷組VolGroup 中。
[root@localhost home]# vgextend VolGroup /dev/xvdb
Volume group "VolGroup" successfully extended
若提示卷組不存在,需要手動(dòng)創(chuàng)建
[root@localhost ~]# vgcreate VolGroup /dev/xvdb
查看卷組的詳情
[root@localhost home]# vgs
VG #PV #LV #SN Attr VSize VFree
VolGroup 2 3 0 wz--n- 265.50g 0
- 為/ 添加10G的空間。使用命令lvextend -L +10G /dev/mapper/VolGroup-lv_root
[root@localhost home]# lvextend -L +10G /dev/mapper/VolGroup-lv_root
Size of logical volume VolGroup/lv_root changed from 50.98 GiB (13050 extents) to 55.98 GiB (14330 extents).
Logical volume lv_root successfully resized
- 邏輯卷擴(kuò)展后并不會(huì)馬上生效,需要使用“resize2fs”命令重新加載邏輯卷的大小。使用命令 resize2fs /dev/VolGroup/lv_root。再使用命令df -h查看發(fā)現(xiàn)/已經(jīng)多了10G。
[root@localhost home]# resize2fs /dev/VolGroup/lv_root
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/VolGroup/lv_root is mounted on /; on-line resizing required
old desc_blocks = 4, new_desc_blocks = 4
Performing an on-line resize of /dev/VolGroup/lv_root to 14673920 (4k) blocks.
The filesystem on /dev/VolGroup/lv_root is now 14673920 blocks long.
[root@localhost home]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
60G 24G 34G 41% /
tmpfs 935M 0 935M 0% /dev/shm
/dev/xvda1 477M 93M 360M 21% /boot
/dev/mapper/VolGroup-lv_home
199G 60M 189G 1% /home
四、利用其他LVM分區(qū)空余空間進(jìn)行擴(kuò)容
- 使用df -h查看每個(gè)分區(qū)的使用情況。如下,發(fā)現(xiàn)/dev/mapper/VolGroup-lv_home容量很充裕,本次擴(kuò)容通過減少/dev/mapper/VolGroup-lv_home的空間給/dev/mapper/VolGroup-lv_root。
[root@localhost home]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
60G 24G 34G 41% /
tmpfs 935M 0 935M 0% /dev/shm
/dev/xvda1 477M 93M 360M 21% /boot
/dev/mapper/VolGroup-lv_home
199G 60M 189G 1% /home
- 卸載/home
[root@localhost home]# umount /home
umount: /home: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
umount /home 如果提示無法卸載,因?yàn)橛羞M(jìn)程占用/home,使用如下命令來終止占用進(jìn)程:
[root@localhost home]# fuser -m /home
/home: 1463c
如果依然無法卸載,使用以下命令:
[root@localhost home]# umount -l /home
- 調(diào)整/dev/mapper/VolGroup-lv_home分區(qū)大小
需要先進(jìn)行磁盤檢測(cè) ,輸入命令e2fsck -f /dev/mapper/VolGroup-lv_home。
注意:遇到Abort< y >? 這邊輸入的是n,才能繼續(xù)進(jìn)行。
[root@localhost ~]# e2fsck -f /dev/mapper/VolGroup-lv_home
e2fsck 1.41.12 (17-May-2010)
The filesystem size (according to the superblock) is 52848640 blocks
The physical size of the device is 52592640 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort<y>? no
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/mapper/VolGroup-lv_home: 26/13213696 files (0.0% non-contiguous), 877250/52848640 blocks
然后輸入命令resize2fs -p /dev/mapper/VolGroup-lv_home 100G,進(jìn)行磁盤重訂大小。
[root@localhost ~]# resize2fs -p /dev/mapper/VolGroup-lv_home 100G
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/mapper/VolGroup-lv_home to 26214400 (4k) blocks.
Begin pass 2 (max = 32768)
Relocating blocks XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 3 (max = 1613)
Scanning inode table XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/mapper/VolGroup-lv_home is now 26214400 blocks long.
- 重新掛載/home
重新掛載后,輸入df -h,發(fā)現(xiàn)/dev/mapper/VolGroup-lv_home已經(jīng)改變。
[root@localhost ~]# mount /home
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
60G 24G 34G 41% /
tmpfs 935M 0 935M 0% /dev/shm
/dev/xvda1 477M 93M 360M 21% /boot
/dev/mapper/VolGroup-lv_home
99G 60M 94G 1% /home
- 設(shè)置空閑空間
[root@localhost ~]# lvreduce -L 100G /dev/mapper/VolGroup-lv_home
WARNING: Reducing active and open logical volume to 100.00 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv_home? [y/n]: y
Size of logical volume VolGroup/lv_home changed from 200.62 GiB (51360 extents) to 100.00 GiB (25600 extents).
Logical volume lv_home successfully resized
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name VolGroup
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 11
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 2
Act PV 2
VG Size 265.50 GiB
PE Size 4.00 MiB
Total PE 67969
Alloc PE / Size 42209 / 164.88 GiB
Free PE / Size 25760 / 100.62 GiB
VG UUID hQoxGl-H4T9-Lu9W-sITN-hO2B-aos7-T5TmKC
- 把閑置空間掛在到根目錄下
[root@localhost ~]# lvextend -L +100.62G /dev/mapper/VolGroup-lv_root
Rounding size to boundary between physical extents: 100.62 GiB
Size of logical volume VolGroup/lv_root changed from 60.97 GiB (15609 extents) to 161.59 GiB (41368 extents).
Logical volume lv_root successfully resized
使用命令resize2fs -p /dev/mapper/VolGroup-lv_root, 可以不用重啟,就顯示最新的磁盤空間。
[root@localhost ~]# resize2fs -p /dev/mapper/VolGroup-lv_root
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mapper/VolGroup-lv_root is mounted on /; on-line resizing required
old desc_blocks = 4, new_desc_blocks = 11
Performing an on-line resize of /dev/mapper/VolGroup-lv_root to 42360832 (4k) blocks.
The filesystem on /dev/mapper/VolGroup-lv_root is now 42360832 blocks long.
- 最后結(jié)果
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
159G 24G 128G 16% /
tmpfs 935M 0 935M 0% /dev/shm
/dev/xvda1 477M 93M 360M 21% /boot
/dev/mapper/VolGroup-lv_home
99G 60M 94G 1% /home