来自:http://space.baidu.com/hl_jacky/blog/item/8c75e0617189666b0d33fa53.html
2、LVM设备的扩容
LVM设备的一个最大好处就是只要硬件条件允许就可以对空间进行扩展,方法如下:
要扩展设备首先要知道还有多少地方可以用,这个创建VG设备的时候把两个分区的大小加起来就行了,减掉已经使用的就是可以用的了,这里我们把扩容也分成两种情形讨论
(一)使用原有剩余空间扩容,我的两块硬盘都是34.6G,使用了60G也就是34.6+34.6-60大约还有至少5G空间可用,因为硬盘容量和操作系统识别的容量有一定的差异所以这里我少算了一些空间
[root@VPNSERV ~]# vgdisplay data ####我们也可以通过查看命令vgdisplay来查看当前的VG使用情况
--- Volume group ---
VG Name data
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 68.36 GB ####这里我们可以看到我们VG data总共68G
PE Size 4.00 MB ####默认每个扩展块4M,扩展块的的大小是在创建VG的时候可以使用-s参数来调整,最大的块甚至可以用T做参数
Total PE 17500 ####一共17500个扩展块
Alloc PE / Size 15500 / 60.55 GB ####我们已经使用了60G
Free PE / Size 2000 / 7.81 GB
VG UUID hOixVC-ljbJ-Z5QG-de9b-KFEy-PDZb-o2EDME
[root@VPNSERV ~]# mount ####查看现在的挂载状态
/dev/sda2 on / type ext3 (rw)
none on /proc type proc (rw)
none on /sys type sysfs (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
usbfs on /proc/bus/usb type usbfs (rw)
/dev/sda1 on /boot type ext3 (rw)
/dev/sda5 on /data type ext3 (rw)
none on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/mapper/data-lvdata on /usr/local/www type ext3 (rw)
[root@VPNSERV ~]# df -h ####使用df命令查看磁盘空间的使用情况
tem Size Used Avail Use% Mounted on
/dev/sda2 15G 7.8G 6.0G 57% /
/dev/sda1 99M 12M 83M 12% /boot
/dev/sda5 16G 2.7G 12G 19% /data
none 506M 0 506M 0% /dev/shm
/dev/mapper/data-lvdata
58G 12G 44G 21% /usr/local/www ####这里我们看到原有的60G识别成为58G,已经使用了12G
[root@VPNSERV ~]# ls /usr/local/www/ ####查看该设备中的数据
STABLE-200706-i386-bootonly.iso [RHCE????,????RHEL.4.DVD].CD5.rar
6.2-STABLE-200706-i386-disc1.iso [RHCE????,????RHEL.4.DVD].CD6.rar
6.2-STABLE-200706-i386-docs.iso [RHCE????,????RHEL.4.DVD].CD7.rar
[RHCE????,????RHEL.4.DVD].CD1.rar [RHCE????,????RHEL.4.DVD].RHEL4-U5-i386-AS-dvd.iso
[RHCE????,????RHEL.4.DVD].CD2.rar [????????.Linux.5].TLF-SOFT-RedHat.Enterprise.Linux.5.Update.1-XiSO.iso
[RHCE????,????RHEL.4.DVD].CD3.rar [????????.Linux.5].TLF-SOFT-RedHat.Enterprise.Linux.5.Update.1.x64-XiSO.iso
[RHCE????,????RHEL.4.DVD].CD4.rar lost+found
LVM的最大优点在于可以在不破坏原有数据的情况下对空间进行扩充,过程如下所示
[root@VPNSERV ~]# umount /usr/local/www/ ####先把要进行操作的卷从操作系统中卸载
[root@VPNSERV ~]# ls /usr/local/www/ ####查看一下是不是看不到那些文件了
[root@VPNSERV ~]# lvextend -L +1000M /dev/data/lvdata ####使用lvextend命令为/dev/data/lvdata设备扩展1G空间
Extending logical volume lvdata to 59.57 GB
Logical volume lvdata successfully resized
[root@VPNSERV ~]# e2fsck -f /dev/data/lvdata ####检查LVM设备对应inode和block之间的关系小心使的万年船啊
e2fsck 1.35 (28-Feb-2004)
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/data/lvdata: 24/7684096 files (4.2% non-contiguous), 3185237/15360000 blocks
[root@VPNSERV ~]# resize2fs /dev/data/lvdata ####使用resize2fs命令格式化新加入的部分
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/data/lvdata to 15616000 (4k) blocks.
The filesystem on /dev/data/lvdata is now 15616000 blocks long.
[root@VPNSERV ~]# mount /dev/data/lvdata /usr/local/www/ ####重新挂载
[root@VPNSERV ~]# ls /usr/local/www/ ####查看一下原来的东西是不是还在????
6.2-STABLE-200706-i386-bootonly.iso [RHCE????,????RHEL.4.DVD].CD5.rar
6.2-STABLE-200706-i386-disc1.iso [RHCE????,????RHEL.4.DVD].CD6.rar
6.2-STABLE-200706-i386-docs.iso [RHCE????,????RHEL.4.DVD].CD7.rar
[RHCE????,????RHEL.4.DVD].CD1.rar [RHCE????,????RHEL.4.DVD].RHEL4-U5-i386-AS-dvd.iso
[RHCE????,????RHEL.4.DVD].CD2.rar [????????.Linux.5].TLF-SOFT-RedHat.Enterprise.Linux.5.Update.1-XiSO.iso
[RHCE????,????RHEL.4.DVD].CD3.rar [????????.Linux.5].TLF-SOFT-RedHat.Enterprise.Linux.5.Update.1.x64-XiSO.iso
[RHCE????,????RHEL.4.DVD].CD4.rar lost+found ####果然毫发无伤
[root@VPNSERV ~]# df -h ####查看空间状态已经从58G变成59G了吧??大功告成!
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 15G 7.8G 6.0G 57% /
/dev/sda1 99M 12M 83M 12% /boot
/dev/sda5 16G 2.7G 12G 19% /data
none 506M 0 506M 0% /dev/shm
/dev/mapper/data-lvdata
59G 12G 45G 21% /usr/local/www
(二)如果有新的硬盘加入则要麻烦一小点,如果你的系统是一个正在运行的应用系统那么想要把系统DOWN下来是不允许的,如何扩充空间呢,这一节后边两个命令就是针对这种情况的,在线适时扩容。
使用pvcreate /dev/hdd1把/dev/hdd1加入到PV内
使用vgextend data /dev/hdd1把该分区加入到data中
使用lvextend -L +1000M /dev/data/lvdata把lvdata再加1G空间
使用ext2online /usr/local/www把新空间激活就可以
详细过程请看下边的例子!
[root@VPNSERV ~]# lvextend -L +1000M /dev/data/lvdata
Extending logical volume lvdata to 60.55 GB
Logical volume lvdata successfully resized
[root@VPNSERV ~]# ext2online /usr/local/www/
ext2online v1.1.18 - 2001/03/18 for EXT2FS 0.5b
[root@VPNSERV ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 15G 7.8G 6.0G 57% /
/dev/sda1 99M 12M 83M 12% /boot
/dev/sda5 16G 2.7G 12G 19% /data
none 506M 0 506M 0% /dev/shm
/dev/mapper/data-lvdata
60G 12G 46G 20% /usr/local/www
会建设也要会破坏。如何拆LVM呢?
步骤很简单,建设的时候我们是从下往上建PV------->>VG----------->>LVM
拆的时候从上往下拆
当然前提仍然是要先卸载
lvremove /dev/data/lvdata ####拆除LVM设备
vgchange -an /dev/data ####把VG的状态转为离线
vgremove data ####删除VG组
pvremove /dev/sdb1 /dev/sdc1 /dev/sdd1 ####删除PV