您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

逻辑卷管理lvm的实例详解

2025/11/8 1:33:05发布50次查看
逻辑卷管理lvm
一 创建逻辑卷
1准备分区或硬盘
这里使用/dev/sdb、/dev/sdc两块硬盘和/dev/sda9、/dev/sda10两个分区,大小都为1g,磁盘有限,我也不想这么抠的。
添加分区/dev/sda9、/dev/sda10
[root@centos7 ~]# fdisk /dev/sda welcome to fdisk (util-linux 2.23.2). changes will remain in memory only, until you decide to write them. be careful before using the write command. command (m for help): n all primary partitions are in use adding logical partition 9 first sector (31885312-41943039, default 31885312): using default value 31885312 last sector, +sectors or +size{k,m,g} (31885312-41943039, default 41943039): +1g partition 9 of type linux and of size 1 gib is set
注意,要修改分区类型为linux lvm
command (m for help): t partition number (1-9, default 9): 8e partition number (1-9, default 9): 9 hex code (type l to list all codes): 8e changed type of partition 'linux' to 'linux lvm' command (m for help):
同样的方法创建/dev/sda10。
[root@centos7 ~]# lsblk name maj:min rm size ro type mountpoint sda 8:0 0 20g 0 disk ├─sda9 8:9 0 1g 0 part └─sda10 8:10 0 1g 0 part sdb 8:16 0 1g 0 disk sdc 8:32 0 1g 0 disk
2 创建pv(物理卷)
命令格式为:pvcreate device,可以一次创建一个设备,也可以一次创建多个设备。
查看物理卷命令:pvdisplay(查看详细信息)、pvs(查看简易信息)
[root@centos7 ~]# pvcreate /dev/sda9 physical volume "/dev/sda9" successfully created. [root@centos7 ~]# pvcreate /dev/sda10 /dev/sdb /dev/sdc physical volume "/dev/sda10" successfully created. physical volume "/dev/sdb" successfully created. physical volume "/dev/sdc" successfully created.
查看物理卷,看到已经成功创建。
[root@centos7 ~]# pvs pv vg fmt attr psize pfree /dev/sda10 lvm2 --- 1.00g 1.00g /dev/sda9 lvm2 --- 1.00g 1.00g /dev/sdb lvm2 --- 1.00g 1.00g /dev/sdc lvm2 --- 1.00g 1.00g
3 创建卷组(vg)
命令格式为:vgcreate -s pe vgname(vg名) device(设备名)
-s :指定物理扩展块大小 既就是pe的大小
查看命令:vgs、vgdisplay
[root@centos7 ~]# vgcreate -s 16m vg0 /dev/sda9 /dev/sda10 /dev/sdb /dev/sdc volume group "vg0" successfully created
查看一下
[root@centos7 ~]# vgs vg #pv #lv #sn attr vsize vfree vg0 4 0 0 wz--n- 3.94g 3.94g
再来看下详细信息
[root@centos7 ~]# vgdisplay --- volume group --- vg name vg0 system id format lvm2 metadata areas 4 metadata sequence no 1 vg access read/write vg status resizable max lv 0 cur lv 0 open lv 0 max pv 0 cur pv 4 act pv 4 vg size 3.94 gib pe size 16.00 mib total pe 252 alloc pe / size 0 / 0 free pe / size 252 / 3.94 gib vg uuid qmoimg-5wqr-gkcs-dpq9-hlrt-zvii-jbc9zx
一切都复合预期,大小约为4g,正好是两个分区和两个硬盘之和。
4创建逻辑卷(lv)
命令格式为:lvcreate -n lvname(指定lv名) -l size(指定lv的大小) vg0(要使用的vg)
-l 指定pe 大小
查看命令(类似pv、vg):lvs、lvdisplay
[root@centos7 ~]# lvcreate -n lv0 -l 3g vg0 logical volume "lv0" created.
创建成功,查看一下
[root@centos7 ~]# lvs lv vg attr lsize pool origin data% meta% move log cpy%sync convert lv0 vg0 -wi-a----- 3.00g
再看下详细信息
[root@centos7 ~]# lvdisplay --- logical volume --- lv path /dev/vg0/lv0 lv name lv0 vg name vg0 lv uuid 622i7m-uy6s-3nzi-8xsb-sxrr-czzz-c9pwkd lv write access read/write lv creation host, time centos7.3.loacl, 2017-04-25 16:25:13 +0800 lv status available # open 0 lv size 3.00 gib current le 192 segments 4 allocation inherit read ahead sectors auto - currently set to 8192 block device 253:0
可以确定已经成功创建。
现在就可以把/dev/vg0/lv0当做一块硬盘使用了。
现在看一下磁盘信息,已经发生了变化。
[root@centos7 ~]# lsblk name maj:min rm size ro type mountpoint fd0 2:0 1 4k 0 disk sda 8:0 0 20g 0 disk ├─sda9 8:9 0 1g 0 part │ └─vg0-lv0 253:0 0 3g 0 lvm └─sda10 8:10 0 1g 0 part └─vg0-lv0 253:0 0 3g 0 lvm sdb 8:16 0 1g 0 disk └─vg0-lv0 253:0 0 3g 0 lvm sdc 8:32 0 1g 0 disk └─vg0-lv0 253:0 0 3g 0 lvm
可以看到,所加入的分区和硬盘已经属于vg0-lv0了。
5 创建文件系统,格式化
mkfs.ext4 /dev/vg0/lv0 [root@centos7 ~]# mkfs.ext4 /dev/vg0/lv0
6 挂载使用
[root@centos7 ~]# mkdir /mnt/lv0 [root@centos7 ~]# mount /dev/vg0/lv0 /mnt/lv0
二 扩展lv
扩展命令格式:
lvextend -l 100g /dev/vg0/lv0 lvextend -l +100g /dev/vg0/lv0 lvextend -l +100%free /dev/vg0/lv0
注意 –l 为扩展到多少 ,-l 为扩展(增加)多少,+100%free为扩展剩余vg的100%,可根据个人情况进行选择。
由于vg0还预留将近1g 空间,现在扩展一下lv0
1 先来查看原有lv
[root@centos7 ~]# vgs vg #pv #lv #sn attr vsize vfree vg0 4 1 0 wz--n- 3.94g 960.00m
2 扩展lv
[root@centos7 ~]# lvextend -r -l +100%free /dev/vg0/lv0
-r为resizefs 一步搞定多方便
或者麻烦一点,一步一步来
[root@centos7 ~]# lvextend -l +100%free /dev/vg0/lv0 size of logical volume vg0/lv0 changed from 3.00 gib (192 extents) to 3.94 gib (252 extents). logical volume vg0/lv0 successfully resized.
3 下来重定义文件系统大小
ext系列文件系统重定义:resize2fs /dev/vg0/lv0
xfs系列文件系统重定义:xfs_growfs /dev/vg0/lv0
[root@centos7 ~]# resize2fs /dev/vg0/lv0 resize2fs 1.42.9 (28-dec-2013) filesystem at /dev/vg0/lv0 is mounted on /mnt/lv0; on-line resizing required old_desc_blocks = 1, new_desc_blocks = 1 the filesystem on /dev/vg0/lv0 is now 1032192 blocks long.
4 检查文件系统完成性(也可不做)
[root@centos7 ~]# fsck.ext4 /dev/vg0/lv0 e2fsck 1.42.9 (28-dec-2013) /dev/vg0/lv0: clean, 20/262144 files, 35918/1032192 blocks
5 确认逻辑卷大小
[root@centos7 ~]# df -h /dev/vg0/lv0 filesystem size used avail use% mounted on /dev/mapper/vg0-lv0 3.9g 12m 3.6g 1% /mnt/lv0
很明显已经扩展成功。
6 挂载使用
[root@centos7 ~]# mount -o remount /dev/vg0/lv0
三 缩减lv
1 备份数据
虽然一般不会丢失数据,但是为了保险起见。还是先备份为好。
看下/mnt/lv0目录下现有的数据
[root@centos7 ~]# ls /mnt/lv0/ lost+found myfile2 myfile4 myfile6 myfile8 myfile1 myfile3 myfile5 myfile7 myfile9 [root@centos7 ~]# mkdir /backup [root@centos7 ~]# cp -a /mnt/lv0/* /backup/
2 卸载/dev/vg0/lv0
[root@centos7 ~]# umount /mnt/lv0/
3 检查文件系统
e2fsck -f /dev/vg0/lv0 在重新定义文件系统大小之前必须检查磁盘完成性
[root@centos7 ~]# e2fsck -f /dev/vg0/lv0 e2fsck 1.42.9 (28-dec-2013) 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/vg0/lv0: 20/262144 files (0.0% non-contiguous), 35918/1032192 blocks
4下来重定义文件系统大小
resize2fs /dev/vg0/lv0 2g #2g位缩减后的lv 大小。
[root@centos7 ~]# resize2fs /dev/vg0/lv0 2g resize2fs 1.42.9 (28-dec-2013) resizing the filesystem on /dev/vg0/lv0 to 524288 (4k) blocks. the filesystem on /dev/vg0/lv0 is now 524288 blocks long.
5 缩减lv
lvreduce -l 2g /dev/vg0/lv0 #缩减到2g
[root@centos7 ~]# lvreduce -l 2g /dev/vg0/lv0 warning: reducing active logical volume to 2.00 gib. this may destroy your data (filesystem etc.) do you really want to reduce vg0/lv0? [y/n]: y size of logical volume vg0/lv0 changed from 3.94 gib (252 extents) to 2.00 gib (128 extents). logical volume vg0/lv0 successfully resized.
6 挂载使用
mount /dev/vg0/lv0 /mnt/lv0 [root@centos7 ~]# mount /dev/vg0/lv0 /mnt/lv0/
查看磁盘挂载情况
[root@centos7 ~]# df -h /dev/vg0/lv0 filesystem size used avail use% mounted on /dev/mapper/vg0-lv0 2.0g 9.0m 1.8g 1% /mnt/lv0
7 确认数据是否丢失
现在再来开心目录/mnt/lv0 的内容
[root@centos7 ~]# ls /mnt/lv0/ lost+found myfile2 myfile4 myfile6 myfile8 myfile1 myfile3 myfile5 myfile7 myfile9
很完美,数据并没有丢失!
以上就是逻辑卷管理lvm的实例详解的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product