逻辑卷管理 - LVM

逻辑卷管理 - LVM

  1. 概述
    1.1 特点
    1.2 原理图

  2. 名词解释
    2.1 PV - 物理卷
    2.2 VG - 卷组
    2.3 LV - 逻辑卷
    2.4 PE
    2.5 关系图 - 原理图

  3. 管理命令

  4. 实战
    4.1 案例01 - 创建物理卷、卷组和逻辑卷,格式化,挂载至 /data 目录
    4.2 案例02 - /data 目录空间不足,对其使用逻辑卷扩容
    4.3 删除逻辑卷、卷组和物理卷
    4.4 减少逻辑卷大小容易导致数据丢失

  5. 概述
    LVM (Logical Volume Manager) 即逻辑卷管理。它是Linux环境下对磁盘分区进行管理的一种机制。
    它可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态对分区进行扩缩空间大小,安全快捷方便管理。
    LVM的工作原理通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用。在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行读取。
    而在LVM中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,不再是针对于分区进行操作,而是通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作。例如,增加一个物理硬盘,这个时候上层的服务是感觉不到的,因为呈现给上层服务的是以逻辑卷的方式。

1.1 特点
可以对磁盘进行动态管理逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据。如果我们新增加了硬盘,也不会改变现有上层的逻辑卷。作为一个动态磁盘管理机制,逻辑卷技术大大提高了磁盘管理的灵活性。
1.2 原理图


image.png

2.名词解释
2.1PV-物理卷
PhysicalVolume

物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是RAID,是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。

2.2VG-卷组
VolumeGroup
卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。
2.3LV-逻辑卷
LogicalVolume
逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组。
2.4PE
PhysicalExtendt
每一个物理卷被划分为多个称为PE的基本单元。PE的大小是在创建VG过程中配置的,默认为4MB。
2.5关系图-原理图


image.png

3.管理命令


image.png
  1. 实战
    4.1 案例01 - 创建物理卷、卷组和逻辑卷,格式化,挂载至 /data 目录
    准备两块磁盘,各 100MB
    将其中一块磁盘,划分两个主分区,并建立物理卷
    新建卷组,并将两个物理卷加入卷组
    创建逻辑卷,将已建的卷组空间全部分给逻辑卷
    格式化逻辑卷,并挂载到 /data 目录
    实现 开机自动挂载
# 第一步: 添加两块100MB的磁盘,需要重启才能生效
# 第二步: 给某一磁盘进行分区
fdisk /dev/sdb
[root@machine-for-class ~]# ll /dev/sdb*
brw-rw---- 1 root disk 8, 16 Mar 22 14:40 /dev/sdb
brw-rw---- 1 root disk 8, 17 Mar 22 14:40 /dev/sdb1
brw-rw---- 1 root disk 8, 18 Mar 22 14:40 /dev/sdb2
# 第三步: 对磁盘分区创建物理卷
[root@machine-for-class ~]# pvcreate /dev/sdb1 /dev/sdb2
Physical volume "/dev/sdb1" successfully created.
Physical volume "/dev/sdb2" successfully created.
# 第四步: 创建卷组 ,并将物理卷加入卷组
[root@machine-for-class ~]# vgcreate vg01 /dev/sdb1 /dev/sdb2
Volume group "vg01" successfully created
[root@machine-for-class ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <19.51g 0
vg01 2 0 0 wz--n- 96.00m 96.00m
[root@machine-for-class ~]# vgdisplay
--- Volume group ---
VG Name vg01
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 96.00 MiB
PE Size 4.00 MiB
Total PE 24
Alloc PE / Size 0 / 0
Free PE / Size 24 / 96.00 MiB
VG UUID sEwqUc-wJvm-aWbt-KQpE-wkA1-mg6q-4GXJns
# 第五步: 创建逻辑卷,将卷组所有空间给逻辑卷
[root@machine-for-class ~]# lvcreate -n lv01 -L +96M vg01
Logical volume "lv01" created.
[root@machine-for-class ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync
Convert
root centos -wi-ao---- <17.51g
swap centos -wi-ao---- 2.00g
lv01 vg01 -wi-a----- 96.00m
# 第六步: 格式化-创建文件系统,挂载至 /data 目录
[root@machine-for-class ~]# mkfs.xfs /dev/vg01/lv01
meta-data=/dev/vg01/lv01 isize=512 agcount=4, agsize=6144 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=24576, imaxpct=25

4.2 案例02 - /data 目录空间不足,对其使用逻辑卷扩容
将另一块磁盘创建为 物理卷
将 新的物理卷加入 卷组,即卷组扩容
给 逻辑卷 扩容
检测确认是否生效
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=855, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@machine-for-class ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 475M 0 475M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/mapper/centos-root 18G 2.7G 15G 15% /
/dev/sda1 497M 131M 367M 27% /boot
tmpfs 98M 0 98M 0% /run/user/0
[root@machine-for-class ~]# mount /dev/vg01/lv01 /data
[root@machine-for-class ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 475M 0 475M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/mapper/centos-root 18G 2.7G 15G 15% /
/dev/sda1 497M 131M 367M 27% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/mapper/vg01-lv01 93M 5.1M 88M 6% /data
# 第七步: 配置 /etc/fstab 文件,实现自动挂载

案例02 - /data 目录空间不足,对其使用逻辑卷扩容
将另一块磁盘创建为 物理卷
将 新的物理卷加入 卷组,即卷组扩容
给 逻辑卷 扩容
检测确认是否生效


# 第一步: 将 另一块磁盘创建为物理卷
[root@machine-for-class ~]# pvcreate /dev/sdc
Physical volume "/dev/sdc" successfully created.
[root@machine-for-class ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <19.51g 0
/dev/sdb1 vg01 lvm2 a-- 48.00m 0
/dev/sdb2 vg01 lvm2 a-- 48.00m 0
/dev/sdc lvm2 --- 102.00m 102.00m
# 第二步: 扩容卷组
[root@machine-for-class ~]# vgextend vg01 /dev/sdc
Volume group "vg01" successfully extended
[root@machine-for-class ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <19.51g 0
vg01 3 1 0 wz--n- 196.00m 100.00m
[root@machine-for-class ~]# vgdisplay
--- Volume group ---
VG Name vg01

System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 3
Act PV 3
VG Size 196.00 MiB
PE Size 4.00 MiB
Total PE 49
Alloc PE / Size 24 / 96.00 MiB
Free PE / Size 25 / 100.00 MiB
VG UUID sEwqUc-wJvm-aWbt-KQpE-wkA1-mg6q-4GXJns
# 第三步: 给 逻辑卷扩容
[root@machine-for-class ~]# lvextend -r -L +100M /dev/vg01/lv01
Size of logical volume vg01/lv01 changed from 96.00 MiB (24 extents) to 196.00
MiB (49 extents).
Logical volume vg01/lv01 successfully resized.
meta-data=/dev/mapper/vg01-lv01 isize=512 agcount=4, agsize=6144 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=24576, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=855, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 24576 to 50176
## lvextend -r -l +100%FREE lv_name
##
# 第四步: 检测确认
[root@machine-for-class ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 475M 0 475M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/mapper/centos-root 18G 2.7G 15G 15% /
/dev/sda1 497M 131M 367M 27% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/mapper/vg01-lv01 193M 5.3M 188M 3% /data

4.3 删除逻辑卷、卷组和物理卷

# 01: 取消挂载
[root@machine-for-class ~]# umount /data
[root@machine-for-class ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 475M 0 475M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/mapper/centos-root 18G 2.7G 15G 15% /
/dev/sda1 497M 131M 367M 27% /boot
tmpfs 98M 0 98M 0% /run/user/0
# 02: 移除逻辑卷
[root@machine-for-class ~]# lvremove /dev/vg01/lv01
Do you really want to remove active logical volume vg01/lv01? [y/n]: y
Logical volume "lv01" successfully removed
[root@machine-for-class ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync
Convert
root centos -wi-ao---- <17.51g
swap centos -wi-ao---- 2.00g
[root@machine-for-class ~]#
# 03: 移除卷组
[root@machine-for-class ~]# vgremove vg01
Volume group "vg01" successfully removed
[root@machine-for-class ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <19.51g 0
# 04: 移除物理卷
[root@machine-for-class ~]# pvremove /dev/sdc /dev/sdb1 /dev/sdb2
Labels on physical volume "/dev/sdc" successfully wiped.
Labels on physical volume "/dev/sdb1" successfully wiped.
Labels on physical volume "/dev/sdb2" successfully wiped.
[root@machine-for-class ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <19.51g 0

4.4 减少逻辑卷大小容易导致数据丢失

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 222,252评论 6 516
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,886评论 3 399
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 168,814评论 0 361
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,869评论 1 299
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,888评论 6 398
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,475评论 1 312
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 41,010评论 3 422
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,924评论 0 277
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,469评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,552评论 3 342
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,680评论 1 353
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,362评论 5 351
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 42,037评论 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,519评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,621评论 1 274
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 49,099评论 3 378
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,691评论 2 361

推荐阅读更多精彩内容