Linux LVM的基本使用
LVM介绍
LVM(Logical Volume Manager),即逻辑卷管理,是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。通过LVM系统管理员可以轻松管理磁盘分区,如:将若干个磁盘分区连接为一个整块的卷组(volume group),形成一个存储池。管理员可以在卷组上随意创建逻辑卷组(logical volumes),并进一步在逻辑卷组上创建文件系统。管理员通过LVM可以方便的调整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名、管理和分配。当系统添加了新的磁盘,通过LVM管理员就不必将磁盘的文件移动到新的磁盘上以充分利用新的存储空间,而是直接扩展文件系统跨越磁盘即可。
一般来说,物理磁盘或分区之间是分隔的,数据无法跨盘或分区,而各磁盘或分区的大小固定,重新调整比较麻烦。LVM可以将这些底层的物理磁盘或分区整合起来,抽象成容量资源池,以划分成逻辑卷的方式供上层使用,其最主要的功能即是可以在无需关机无需重新格式化(准确地说,原来的部分无需格式化,只格式化新增的部分)的情况下弹性调整逻辑卷的大小。
LVM优点
文件系统可以跨多个磁盘,因此大小不会受物理磁盘的限制。
可以在系统运行状态下动态地扩展文件系统大小。
可以增加新磁盘到 LVM 的存储池中。
可以以镜像的方式冗余重要数据到多个物理磁盘上。
可以很方便地导出整个卷组,并导入到另外一台机器上。
LVM 的限制
在从卷组中移除一个磁盘时必须使用 reducevg,否则会出问题。
当卷组中的一个磁盘损坏时,整个卷组都会受影响。
不能减小文件系统大小(受文件系统类型限制)。
因为加入了额外的操作,存储性能会受影响(使用 Stripe 的情况另当别论)。
LVM的基本组成
1、物理卷 (PV,Physical Volume)
一个可供存储LVM的块设备. 如硬盘分区(MBR或GPT分区)、SAN 的硬盘、RAID 或 LUN,一个回环文件, 一个被内核映射的设备 (例如 dm-crypt),它包含一个特殊的LVM头,它是 LVM 构建的实际硬件或存储系统。
2、卷组 (VG,Volume Group)
卷组是对一个或多个物理卷的集合,并在设备文件系统中显示为 /dev/VG_NAME。
3、逻辑卷 (LV,Logical Volume)
逻辑卷是可供系统使用的最终元设备,它们在卷组中创建和管理,由物理块组成,实际上就是一个虚拟分区,并显示为 /dev/VG_NAME/LV_NAME,通常在其上可以创建文件系统。
4、物理块 (PE,Physical Extends)
一个卷组中最小的连续区域(默认为4 MiB),多个物理块将被分配给一个逻辑卷。你可以把它看成物理卷的一部分,这部分可以被分配给一个逻辑卷。
创建LVM的过程
- 如果使用的是磁盘分区,则需先把磁盘分区格式化为lvm格式的分区,如果直接使用磁盘,则不需要格式化这一步
- 然后把磁盘分区或者磁盘,创建成PV(通过pvcreate、pvdisplay、pvscan、pvs等命令)
- 再把PV创建成VG(通过vgcreate、vgdisplay、vgscan、vgs等命令)
- 再把VG创建成LV(通过lvcreate、lvdisplay、lvscan、lvs等命令)
图示
LVM使用
插入硬盘
首先在宿主机中添加了两块盘sdb(10G) sdc(15G),原来的sda是系统盘
- 使用
fdisk -l
查看
- 使用
lsblk
查看
使用df -h
查看
创建PV
常用命令
pvchange、pvck、pvcreate、pvdisplay、pvmove、pvremove、pvresize、pvs、pvscan
利用/dev/sdb创建pv
这里直接使用整个磁盘/dev/sdb,所以不用格式化为lvm格式
pvcreate /dev/sdb
再次使用lsblk
和df -h
和fdisk -l
命令查看,看不到明显变化
使用pvs
和pvdisplay
和 pvscan
查看
使用/dev/sdc
再创建一个PV
pvcreate /dev/sdc
使用pvs
和pvdisplay
和 pvscan
查看,可以看到未使用的PV
创建VG
常用命令
vgcfgbackup
和vgchange
和vgconvert
和vgdisplay
和vgextend
和vgimportclone
和vgmknodes
和vgremove
和vgs
和vgsplit
和vgcfgrestore
和vgck
和vgcreate
和vgexport
和vgimport
和vgmerge
和vgreduce
和vgrename
和vgscan
使用/dev/sdb创建vg
vgcreate VG01 /dev/sdb
使用vgs
和vgdisplay
和 vgscan
查看
添加/dev/sdc整个PV到VG01整个VG里
vgextend VG01 /dev/sdc
使用vgs
和vgdisplay
和 vgscan
查看
创建LV
从VG01整个VG中创建出一个LV,大小是5G,名称是LV01
lvcreate -L 5G -n LV01 VG01
使用lvs
和lvdisplay
和 lvscan
查看
使用vgs
和vgdisplay
和 vgscan
查看,看到已分配了5G,还可以分配20G
再次使用lsblk
和df -h
和fdisk -l
命令查看,可以看到创建的逻辑卷了
把VG01剩余的都分出去,创建出一个LV,大小是20G,名称是LV02
lvcreate -l 100%VG -n LV02 VG01
使用lvs
和lvdisplay
和 lvscan
查看
使用vgs
和vgdisplay
和 vgscan
查看,看到VG都分光了
再次使用lsblk
和df -h
和fdisk -l
命令查看
使用LV
直接格式化lv,然后挂载
mkfs.ext4 /dev/mapper/VG01-LV01
mkdir -p /home/mnt1
mount /dev/mapper/VG01-LV01 /home/mnt1/
链接
LVM (Logical Volume Manager)的优势_使用整个磁盘并配置lvm好用吗_arun_yh的博客-CSDN博客
Linux下的磁盘管理之LVM详解及lvm的常用磁盘操作命令_yg@hunter的博客-CSDN博客
Linux下的磁盘管理之LVM详解及lvm的常用磁盘操作命令_yg@hunter的博客-CSDN博客
标签:基本,VG,创建,Linux,dev,使用,LVM,磁盘 From: https://www.cnblogs.com/rainbow-tan/p/17540457.html