LVM是一个很复杂的分区结构

准备磁盘分区
# fdisk /dev/sdb
n 创建三个新分区,分别1G
t 改变分区类型为8e
Changed type of partition 'Linux' to 'Linux LVM'
[root@localhost ~]# fdisk /dev/sdb
分出三个分区出来

创建物理卷( pvcreate),
如果提示命令不存在运行yum install lvm2 -y
如果不知道这个命令在哪个包的情况下可以运行yum provides "/*/命令名称"
[root@localhost ~]# pvcreate /dev/sdb1 //创建物理卷
Physical volume "/dev/sdb1" successfully created.
第二块分区和第三块分区一样创建物理卷
如果出现如下图报错

这个是因为物理卷组没有创建成功,运行下# partprobe 然后在创建组就可以啦!!
列出当前物理卷
pvdisplay或者pvs,两个都可以查看创建了什么物理卷,如下图所示

pvs显示的比较简单

删除物理卷
pvremove /dev/sdb3 其中/dev/sdb3 为磁盘分区

创建卷组
[root@localhost ~]# vgcreate ahao /dev/sdb1 /dev/sdb2

其中ahao为卷组名称,/dev/sdb1 /dev/sdb2为分区
查看卷组的信息
# vgdisplay ,也可以用vgs

删除一个卷组可以用:vgremove 卷组名称
创建逻辑卷组
[root@localhost ~]# lvcreate -L 200M -n lv1 ahao

列出当前逻辑卷
[root@localhost ~]# lvdisplay

删除一个逻辑卷
[root@localhost ~]# lvremove /dev/ahao/lv1
格式化
[root@localhost ~]# mkfs.ext4 /dev/ahao/lv1
挂载
[root@localhost ~]# mount /dev/ahao/lv1 /mnt

扩容逻辑卷
# lvresize -L 1.3G /dev/ahao/lv1 其中扩容的大小要比原来的大。
Rounding size to boundary between physical extents: 1.30 GiB.
Size of logical volume ahao/lv1 changed from 200.00 MiB (50 extents) to 1.30 GiB (333 extents).
Logical volume ahao/lv1 successfully resized.

检测下磁盘是否有错误
检测磁盘的时候记得卸载磁盘挂载哦不然会出现
[root@localhost ~]# e2fsck -f /dev/ahao/lv1

[root@localhost ~]# e2fsck -f /dev/ahao/lv1 下面这个是成功的
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/ahao/lv1: 11/51200 files (0.0% non-contiguous), 12115/204800 blocks

更新逻辑卷信息
[root@localhost ~]# resize2fs /dev/ahao/lv1


缩减逻辑卷
[root@localhost ~]# umount /mnt 卸载磁盘分区
检查磁盘错误(ext)
[root@localhost ~]# e2fsck -f /dev/ahao/lv1

更新逻辑卷信息(ext)
[root@localhost ~]# resize2fs /dev/ahao/lv1 100M

重新设置卷大小
[root@localhost ~]# lvresize -L 100M /dev/ahao/lv1
WARNING: Reducing active logical volume to 100.00 MiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce ahao/lv1? [y/n]: y
Size of logical volume ahao/lv1 changed from 1.30 GiB (333 extents) to 100.00 MiB (25 extents).
Logical volume ahao/lv1 successfully resized.

[root@localhost ~]# mount /dev/ahao/lv1 /mnt
[root@localhost ~]# df -h

xfs分区挂载方式。(xfs不支持缩卷)
[root@localhost ~]# mkfs.xfs -f /dev/ahao/lv1 //格式化分区

[root@localhost ~]# lvresize -L 1.5G /dev/ahao/lv1 扩容
Size of logical volume ahao/lv1 changed from 100.00 MiB (25 extents) to 1.50 GiB (384 extents).
Logical volume ahao/lv1 successfully resized.

xfs要挂载着才能扩容哦
不然会提示如下报错xfs_growfs: /dev/ahao/lv1 is not a mounted XFS filesystem
[root@Reahao ~]# xfs_growfs /dev/ahao/lv1


磁盘故障小案例

出现这个报错的时候可能是因为/etc/fstab有写错了,这个时候我们输入服务器密码进入系统

查看下配置文件,如下图加载了两条记录,一般/这条记录是不会错的问题。那么问题可能就出在第一条

这个时候我们看下逻辑卷组有没有/dev/mapper/ahao-lv2这个组
运行了下lvdisplay 结果发现没有/dev/mapper/ahao-lv2只有/dev/mapper/ahao-lv1这个组

/dev/mapper/ahao-lv1==/dev/ahao/lv1,他指向的都是同一个/dm-0

这个时候我们更正/etc/fstab配置文件然后重启后测试下系统是否正常了


