首页 > 其他分享 >LVM

LVM

时间:2024-05-20 16:44:37浏览次数:24  
标签:PV linuxcast VG dev PE LVM

一些链接
B站视频
网易云课堂原视频
简书vm虚拟机扩容

一、LVM简介

1. 定义

LVM(Logical volume Manager)逻辑卷管理通过将底层物理硬盘抽象封装起来,以逻辑卷的形式表现给上层系统,逻辑卷的大小可以动态调整,而且不会丢失现有数据。新加入的硬盘也不会改变现有上层的逻辑卷。

2. 逻辑卷的基本概念

  • PV: physical volume,底层磁盘需要先格式化成PV,这一步实际上是将硬盘空间划分成了一个一个的PE(下图中灰块为PE)。
  • PE: physical extend,PE是逻辑卷空间管理的最基本单位。PE默认4M大小。
  • VG: volume group,VG可以理解为一个空间池,用于装PE,可以将一个或多个PV加入VG当中(下图中黄块为VG)。
  • LV: logical volume,操作系统最终使用的是LV,用于取代传统的硬盘分区(下图中橙块)。

提示:当创建完毕一个逻辑卷后,会多出一个设备:/dev/vgname/lvname

3. LVM创建过程

  1. 物理磁盘被格式化为PV,空间被分为一个个PE
  2. 不同的PV加入同一个VG,不同的PV的PE全部进入VG的PE池内
  3. LV基于PE创建,大小为PE的整数倍,组成LV的PE可能来自不同物理磁盘
  4. LV现在就直接可以格式化后挂载使用了
  5. LV的扩充缩减实际上就是增加或减少组成该LV的PE的数量。其过程不丢失原始数据

二、创建与删除LVM

1. 创建LVM

  1. 将物理磁盘设备初始化为物理卷: pvcreate /dev/sdb /dev/sdc
  2. 创建卷组,并将PV加入卷组中:vgcreate linuxcast /dev/sdb /dev/sdc
  3. 基于卷组创建逻辑卷: lvcreate -n mylv -L 2G linuxcast
  4. 为创建好的逻辑卷创建文件系统: mkfs.ext4 /dev/linuxcast/mylv
  5. 将格式化好的逻辑卷挂载使用: mount /dev/linuxcast/mylv /mnt

注意:需要使用root用户运行上述命令,另外还可以使用fdisk -l来查看分区情况

2. 查看LVM信息

可以使用下述命令查看LVM相关信息:

  • 查看物理卷信息: pvdisplay(详细) pvs
  • 查看卷组信息: vgdisplay(详细) vgs
  • 查看逻辑卷信息: lvdisplay(详细) lvs

3. 删除LVM

可以使用下述命令删除LVM,注意删除一定要按照下述顺序删除,如果挂载了的lv需要先卸载

  • 删除LV: lvremove /dev/linuxcast/mylv
  • 删除VG: vgremove linuxcast
  • 删除物理卷: pvremove /dev/sdb

三、LVM的拉伸与缩小

1. 拉伸LVM

逻辑卷的拉伸操作可以在线执行,不需要卸载该逻辑卷

  1. 保证VG中有足够的空闲空间 vgdisplay
  2. 扩充逻辑卷 lvextend -L +1G /dev/linuxcast/mylv或者直接指定PE数目: lvextend -l +200 /dev/linuxcast/mylv
  3. 查看扩充后LV大小 lvdisplay
  4. 更新文件系统 resize2fs /dev/linuxcast/mylv
  5. 查看更新后文件系统 df -h

2. 扩容VG

  1. 将要添加到VG的硬盘格式化为PV pvcreate /dev/sdd
  2. 将新添加的PV添加到指定卷组中 vgextend linuxcast /dev/sdd
  3. 查看扩充后VG大小 vgdisplay

3. 缩小一个逻辑卷

注意:逻辑卷的缩小必须离线执行,要先卸载逻辑卷,另外缩小逻辑卷是非常危险的操作,容易丢失数据,最好留一部分余量,即缩小LV的空间小于缩小文件系统的空间。

  1. 卸载已经挂载的逻辑卷 umount /dev/linuxcast/mylv
  2. 缩小文件系统(会提示需要运行fdisk检查文件系统) resize2fs /dev/linuxcast/mylv 10G(缩小到10G)
  3. 缩小LV lvreduce -L -10G /dev/linuxcast/mylv
  4. 查看缩小后的LV lvdisplay
  5. 挂载 mount /dev/linuxcast/mylv /mnt

4. 缩小VG

缩小VG之前务必保证VG剩余空间比要拿走的那块硬盘的空间大。

  1. 将一个PV从指定卷组中移除 vgreduce linuxcast /dev/sdd
  2. 查看缩小后的卷组大小 vgdisplay
  3. 查看PV pvs
  4. 移除PV pvremove /dev/sdd

四、vmware虚拟机的扩容

链接: VM虚拟机Ubuntu 20.04 LVM磁盘扩容 - 简书 (jianshu.com)

1. 增加虚拟机硬盘容量

直接在vmware中扩展虚拟磁盘大小,操作完之后使用df -h查看硬盘信息,可以发现硬盘容量并没有扩大,使用fdisk -l,会发现有一个GPT PMR size mismatch的报错,但是这个时候可以看到sda已经是扩容之后的容量了,sda3的大小没有改变,也就是说在sda后部有一个空闲空间。
解决GPT PMR size mismatch报错的方法是输入parted -l修复分区表,如果需要输入命令的话输入fix即可(操作完这一步后可能使用fdisk -l查看还是有报错,忽略之)。

2. 扩容硬盘

  1. 输入命令parted /dev/sda
  2. 输入unit s设置size单位,方便追加输入
  3. 输入命令p free查看详情
  4. 输入命令resizepart 3追加容量到sda3
  5. 输入命令83886046s空闲空间区Free Space结束位置
  6. 输入命令q退出
  7. 输入命令pvresize /dev/sda3更新物理卷,物理卷扩容之后,操作就与第三节中的操作一致了。

标签:PV,linuxcast,VG,dev,PE,LVM
From: https://www.cnblogs.com/9ajiang/p/18202293

相关文章

  • 记录一次虚拟机非LVM扩容的操作
    以下操作都是在测试机上进行操作的操作系统:Centos7.5  所属平台:EXSI由于本地根目录容量太小只有20G,在关闭虚拟机后将硬盘容量更改到100G,重新启动虚拟机。由于没有LVM通过传统的方式进行扩容目标将sda5扩大 通过fdisk可以看到,sda是有100G的,然后我们需要将其中多余的......
  • PVE删除 local-lvm合并至 local分区
    1、备份PVE中的所有虚拟机2、删除所有虚拟机3、删除local-lvm分区lvremovepve/data 4、把local-lvm空间合并给local分区lvextend-rl+100%FREEpve/rootresize2fs/dev/mapper/pve-root 5、删除local-lvm网页登录,数据中心---存储---移除local-lvm分......
  • Linux系列---【使用lvm对xfs类型逻辑卷进行缩容】
    使用lvm对xfs类型逻辑卷进行缩容1.确定需要缩容的逻辑卷的类型是否是xfsdf-Th2.备份逻辑卷对应的目录原数据#/tmp/home.dump:为备份后存放的位置,/home:为需要备份的目录xfsdump-f/tmp/home.dump/home#1.输入session名:home_session#2.输入media:home_media#3.查看......
  • linux lvm2卷 创建、备份与恢复
    自动快照snapper下载文档:https://documentation.suse.com/zh-cn/sles/12-SP5/html/SLES-all/cha-snapper.html查看存储信息有人吐槽btrfs不稳定,所以还是老办法吧:lvm2-ext4建议现在虚拟机内练习一下,再上实机。u盘用ventoy烧录(多系统支持),进入linux的iso镜像,打开控制台liveuse......
  • 最小化安装 MSVC ( 可用于 graalvm native-image )
    前言自从接触了native-image,就想把所有Java项目全用native-image编译一遍,谁不喜欢exe呢......
  • Linux基础——LVM无法删除问题排查
    一、LVM可能被占用#查看lvm被占用中[root@harbor~]#dmsetupinfo-c|grepdata01data01-lvdata012532L--w010LVM-RjmtKrgddy0ejyeqJhVtr3IRsKkukLJNn6z4gQOC22jXKNgBcv92CN2P1f9AlcDS[root@harbor~]#lsblkNAME......
  • LVM逻辑卷与磁盘分配
    LVM逻辑卷与磁盘分配目录LVM逻辑卷与磁盘分配一、LVM逻辑卷1、LVM概述2、LVM机制的概念3、LVM的管理命令4、LVM操作所需的命令4.1实例4.1.1初级设置:建立分区4.1.2创建物理卷4.1.3建立vg01组4.1.4建立逻辑卷4.1.5格式化4.1.6临时挂载4.1.7永久挂载4.1.8扩容分区二、磁......
  • linux centos 加硬盘/热扩容LVM
    推荐LVM后期扩容方便常用命令df-THlsblkfdisk-lpvcreatevgcreate  vgextendlvcreate  lvextendmkfs.xxxxxxresize2fs 路径  (ext4格式)xfs_growfs 路径  (xfs格式)LVM方式这是新添加pvcreate/dev/vdc1(也可以直接裸盘,,也可以vdc1这样,fdisk把类型改成8e)vgcreate......
  • GraalVM-云原生时代的JVM(Java)
    一、GraalVM是什么?GraalVM是Oracle开源的一款通用虚拟机产品,官方称之为UniversalGraalVM,是新一代的通用多语言高性能虚拟机。它可以运行多种编程语言,如Java、JavaScript、Python等,并提供了即时编译(JIT)和AOT编译(AOT)的支持。GraalVM还支持在不同语言之间互相调用,以及嵌入到其他......
  • Linux 新增LVM分区及LVM分区扩容
    Linux新增LVM分区及LVM分区扩容_linuxlvm增加-CSDN博客https://blog.csdn.net/FallenLeaves_/article/details/1299722561.查看当前磁盘分区fdisk-l2.查看分区和挂载情况lsblk3.创建一个新的分区并指定位置lvm文件类型fdisk /dev/sdb4.创建PV,VG,LVpvcreate/dev/s......