前言

LVM(Logic Volume Manager,逻辑卷管理),是Linux管理磁盘的一种方式。在Windows及其他操作系统当中,也有类似的管理方式。

一、基本概念

1.何为逻辑卷管理LVM
逻辑,顾名思义,在逻辑上是讲得通的,在物理上却有可能是有出入的。
LVM,就是将物理上的一组或者多块磁盘组合,甚至是一块磁盘的一部分。将这些磁盘形成一块大的“磁盘池”。再将磁盘池逻辑上分成若干个区域,将其作为文件系统进行挂载。大家可以参照下图进行理解:

2.逻辑卷管理LVM的几个概念
物理卷PV(Physical Volume):就是一块物理磁盘,或者是未格式化的分区。
卷组VG(Volume Group):将物理卷组合成的“磁盘池”。
逻辑卷LG(Logical volume):将卷组拆分成的新的磁盘区域挂载后的名称。
所以说,在实际操作时,需要进行如下步骤:
①挂载物理磁盘
②物理磁盘disk---->物理卷PV:给物理磁盘或者分区打上PV的标记。
③物理卷PV---->卷组VG
④卷组VG---->逻辑卷LG
⑤将逻辑卷LG进行挂载和使用

3.逻辑卷管理LVM的优点
LVM的逻辑卷的大小可以进行动态调整。同时在上述过程中不会出现丢失数据的情况。
所以说,LVM是可扩展的磁盘管理工具。

二、逻辑卷管理的实际操作

1.根据linux文件系统与磁盘(二),进行添加磁盘的操作。
我这里加了一块5GB的磁盘。

[root@hikari ~]# fdisk -l
Disk /dev/nvme0n2: 5 GiB, 5368709120 bytes, 10485760 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xea8c718f

2.使用fdisk,对磁盘进行分区
①增加一个新的1GB的主分区。

[root@hikari ~]# fdisk /dev/nvme0n2 ----->根据自己的磁盘进行选择
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-10485759, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-10485759, default 10485759): +1G

②这里提示分区1有标记了,问我们是否要删除,选择Y删除标记。

Created a new partition 1 of type ‘Linux’ and of size 1 GiB.
Partition #1 contains a ext2 signature.
Do you want to remove the signature? [Y]es/[N]o: Y
The signature will be removed by a write command.

③同样的,增加一个新的2GB分区。

Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p):
Using default response p.
Partition number (2-4, default 2): 2
First sector (2099200-10485759, default 2099200):
Last sector, +sectors or +size{K,M,G,T,P} (2099200-10485759, default 10485759): +2G
Created a new partition 2 of type ‘Linux’ and of size 2 GiB.

④确认一下是否添加成功:

Command (m for help): p
Disk /dev/nvme0n2: 5 GiB, 5368709120 bytes, 10485760 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xea8c718f
Device Boot Start End Sectors Size Id Type
/dev/nvme0n2p1 2048 2099199 2097152 1G 83 Linux
/dev/nvme0n2p2 2099200 6293503 4194304 2G 83 Linux
Filesystem/RAID signature on partition 1 will be wiped.

⑤最后wq保存退出。磁盘添加成功。

3.给分区打上标记
①使用pvdisplay命令确认是否存在PV。如果未显示信息就是未创建PV。

[root@hikari ~]# pvdisplay
[root@hikari ~]#

②使用pvcreate+磁盘目录创建PV

[root@hikari ~]# pvcreate /dev/nvme0n2p1
Physical volume “/dev/nvme0n2p1” successfully created.

此时,再使用pvdisplay就可以看到新增加的磁盘了。

[root@hikari ~]# pvdisplay
“/dev/nvme0n2p1” is a new physical volume of “1.00 GiB”
— NEW Physical volume —
PV Name /dev/nvme0n2p1
VG Name ----所属的VG。空,说明未分配VG。
PV Size 1.00 GiB
Allocatable NO ----是否可分配
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID (略)

同样的,增加第二块2GB分区。

[root@hikari ~]# pvcreate /dev/nvme0n2p2
Physical volume “/dev/nvme0n2p2” successfully created.
[root@hikari ~]# pvdisplay
“/dev/nvme0n2p1” is a new physical volume of “1.00 GiB”
— NEW Physical volume —
PV Name /dev/nvme0n2p1
VG Name
PV Size 1.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID (略)
“/dev/nvme0n2p2” is a new physical volume of “2.00 GiB”
— NEW Physical volume —
PV Name /dev/nvme0n2p2
VG Name
PV Size 2.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID (略)

②使用vgcreate+VG名称+所要分配的PV来创建VG

[root@hikari ~]# vgcreate VG1 /dev/nvme0n2p1 /dev/nvme0n2p2
Volume group “VG1” successfully created

同样,使用vgdisplay查看信息

[root@hikari ~]# vgdisplay
— Volume group —
VG Name VG1
System ID
Format lvm2
Metadata Areas 2
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 2
Act PV 2
VG Size 2.99 GiB ----->1GB+2GB
PE Size 4.00 MiB
Total PE 766
Alloc PE / Size 0 / 0
Free PE / Size 766 / 2.99 GiB
VG UUID (略)

此时,再使用pvdisplay即可看到所属的VG的VG Name了

[root@hikari ~]# pvdisplay
— Physical volume —
PV Name /dev/nvme0n2p1
VG Name VG1
PV Size 1.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 255
Free PE 255
Allocated PE 0
PV UUID (略)

— Physical volume —
PV Name /dev/nvme0n2p2
VG Name VG1
PV Size 2.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 511
Free PE 511
Allocated PE 0
PV UUID (略)

在上述信息中,有一个PE的大小。这个是最小的使用单位。数据就是存放着这一个个PE所组成的文件系统中。

③使用lvcreate来创建LV。
lvcreate有很多功能,通过lvcreate --help可以更好地查看。
通常来说,使用以下格式来创建:
lvcreate -L 分配的大小 -n LV的名字 从哪个VG来

[root@hikari ~]# lvcreate -L 500M -n LV1 VG1
Logical volume “LV1” created.

同样的,使用lvdisplay来进行查看LV:

[root@hikari ~]# lvdisplay
— Logical volume —
LV Path /dev/VG1/LV1
LV Name LV1
VG Name VG1
LV UUID (略)
LV Write Access read/write
LV Creation host, time hikari, 2021-01-26 15:47:25 +0800
LV Status available
#open 0
LV Size 500.00 MiB
Current LE 125
Segments 1
Allocation inherit
Read ahead sectors auto
-currently set to 8192
Block device 253:0

④对该LV进行格式化。
一般来说,最终的lv目录在:
/dev/VG名字/LV名字

[root@hikari ~]# mkfs.xfs /dev/VG1/LV1
meta-data=/dev/VG1/LV1 isize=512 agcount=4, agsize=32000 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1
data = bsize=4096 blocks=128000, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=1368, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0

⑤使用mount进行挂载。

[root@hikari /]# mkdir /lvno1 -----创建目录
[root@hikari /]# mount /dev/VG1/LV1 /lvno1/ ------挂载

最后,用df -HT查看:

[root@hikari /]# df -HT
/dev/mapper/VG1-LV1 xfs 519M 31M 489M 6% /lvno1

这样,LVM的操作就完成了。

最后,在操作时使用lv/pv/vg+tab可以查看其他相关命令,例如lvresize(重新分配大小)等,可以结合实际情况使用。

下一讲将会讲解parted分区。

linux文件系统与磁盘(三)LVM逻辑卷管理相关推荐

  1. linux操作系统比较完善的LVM逻辑卷管理——筑梦之路

    基本概念介绍: PV(物理卷): 物理卷在逻辑卷管理中处于最底层,它可以是物理硬盘上的分区,也可以是一整块硬盘 VG(卷组): 卷组建立在物理卷之上,一个卷组中至少要包含一个物理卷,在卷组建立之后可以 ...

  2. 文件系统,磁盘配额,数据存储,lvm 逻辑卷管理器

    文件系统 文件系统包括:ext2 ext3 (比ext2多一个日志)ext4                 iso9660(光盘文件系统)                 vfat  (相当于win ...

  3. linux系统中的分区与挂载,以及使用LVM逻辑卷管理器管理物理卷,卷组,逻辑卷知识点总结

    物理设备的命名规则 在Linux系统中一切都是文件,硬件设备也不例外.既然是文件,就必须有文件名称.系统内核中的udev设备管理器会自动把硬件名称规范起来,目的是让用户通过设备文件的名字可以猜出设备大 ...

  4. Linux常用命令(八)LVM逻辑卷管理

    Linux常用命令(八)LVM逻辑卷管理 一.LVM概述     LVM是Linux系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上,文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下 ...

  5. Android逻辑卷管理LVM,LINUX——LVM逻辑卷管理

    LVM: logical volumes manager LVM逻辑卷部署 物理卷->卷组->逻辑卷 第一步:关机添加磁盘:两个磁盘可以构成一个磁盘组. 第二步:查看磁盘 # ls /de ...

  6. Linux如何查看LV的容量情况,LVM 逻辑卷管理器-增大LV容量

    LVM 逻辑卷管理器-增大LV的容量 步骤: (1)新增一个8e systemID的分区: (2)用pvcreate命令构建PV: (3)用vgextend命令将PV加入vg_1: (4)用lvres ...

  7. Linux中LVM(逻辑卷管理)的使用

    Linux 中我们使用fdisk命令划分好的分区就不能随意的改变,如果不够用的话不可能说把硬盘上的所有数据拷贝后再重新分区,这样可能会导致数据损坏.而在linux中LVM(逻辑卷管理)就可以实现动态的 ...

  8. linux设置逻辑卷进不了图形界面,LVM逻辑卷管理器图形界面操作

    LVM逻辑卷管理器图形界面操作 LVM有关概念 LVM(Logical Volume Manager)即逻辑卷管理器,它最先是在Linux 2.4内核中被集成到内核中去的,它的出现改变了传统的磁盘空间 ...

  9. Linux LVM逻辑卷管理及扩容(二)

    四.LVM扩展逻辑卷 我们当如何对lvm扩容呢,在vg组有空余的空间时,可以lvextend增加空间:在vg组无空间时,可以通过先增加pv,再lvextend实现扩容 点击(此处)折叠或打开 [roo ...

  10. RHEL磁盘阵列与LVM逻辑卷管理器

    磁盘阵列和逻辑管理器 本篇博客和各位聊聊关于linux系统中的相关磁盘阵列和逻辑管理器,都是涉及到硬件方面的操作.那我们为什么需要使用LVM以及配置RAID呢? 一般在公司中服务器需要保证数据的安全性 ...

最新文章

  1. c语言课程设计贴吧,【图片】发几个C语言课程设计源代码(恭喜自己当上技术小吧主)【东华理工大学吧】_百度贴吧...
  2. Springboot静态资源位置
  3. 阿里云上git clone公司内网仓库遇到的错误消息 - cannot resolve host
  4. CoreAnimation编程指南(五)图层内容
  5. 上周热点回顾(5.26-6.1)
  6. 为什么要学习Python?怎么学?
  7. 死锁必要条件、解决死锁策略
  8. spymemcached 的 useNagle 问题与 TCP/IP延迟发送数据
  9. python跟我学_灞桥区跟我学python
  10. 目前国内汉语自动分词系统的研究现状
  11. diadem2017注册机 ni_NI DIAdem2017下载
  12. php 浏览器 保存网页图片,PHP实现浏览器文件下载图片或者php文件
  13. 论文图表录 出现几个 错误标签未定义的简单解决方法
  14. java列举生活中类和对象_趣味解读Python面向对象编程 (类和对象)
  15. CityEngine -俯视图
  16. 【优秀毕设V2.0】基于树莓派的OpenCV-Python摄像头人脸追踪及手势识别、网络地址推流及远程控制系统(多功能系统、含演示视频)
  17. 携程网今日瘫痪 官方称遭到不明攻击
  18. Java语言编写小游戏
  19. Theil-Sen Median斜率估计和Mann-Kendall趋势分析:以多年NPP数据为例
  20. 源码编译系列之mpv播放器编译教程

热门文章

  1. Java:从1循环到150,在每行打印一个值,另外在每个3的倍数行上打印出foo“,在每个5的倍数行上打印“biz“,在每个7的倍数行上打印“baz“
  2. Artifact ssmbuildFinal:war exploded: Artifact is being deployed SSM整合
  3. 基于 Ubuntu 玩转 Hudi Docker Demo (2)—— 测试数据写入 Kafka
  4. matlab模拟线圈电磁场,利用MATLAB的PDE工具箱对电场和磁场进行模拟
  5. 计算机桌面录屏,电脑桌面录屏软件有哪些可以推荐?
  6. python实现千牛客服自动回复语_千牛自动回复语大全
  7. ‘data‘ hides member of supertype ‘BaseExpAdapter‘ and needs ‘override‘ modifier
  8. 读唐巧博客2011年总结感想
  9. win10计算机管理不可用,win10管理员被禁用怎么办,win10怎么管理员运行
  10. 华为公司软件编程规范