总体思路:

逻辑卷要扩容,先扩容对应卷组,

扩容卷组的方式:

  1. 添加新的物理卷(磁盘已有分区,扩容后新建分区;或者新加了一块硬盘创建了新的物理卷),vgextend myvg /dev/vdb 扩容,/dev/vdb为示例新加了一块硬盘直接做的物理卷。
  2. 物理卷自身扩容(原有未分区已做物理卷的虚拟硬盘扩容,或者做物理卷的分区扩容)。直接pvresize刷新物理卷大小即可。

示例场景1:

/dev/vdc 由25G扩容到35G
[root@vm10-20-88-88 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 253:0 0 20G 0 disk
└─vda1 253:1 0 20G 0 part /
vdb 253:16 0 50G 0 disk
vdc 253:32 0 35G 0 disk
└─vdc1 253:33 0 25G 0 part
└─myvg-mylv--1 252:0 0 59G 0 lvm /disk1
vdd 253:48 0 25G 0 disk
└─vdd1 253:49 0 25G 0 part
└─myvg-mylv--1 252:0 0 59G 0 lvm /disk1
vde 253:64 0 25G 0 disk
└─vde1 253:65 0 25G 0 part
└─myvg-mylv--1 252:0 0 59G 0 lvm /disk1
[root@vm10-20-88-88 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/vdb myvg lvm2 a-- <50.00g <50.00g
/dev/vdc1 myvg lvm2 a-- <25.00g 0
/dev/vdd1 myvg lvm2 a-- <25.00g 0
/dev/vde1 myvg lvm2 a-- <25.00g <15.99g
[root@vm10-20-88-88 ~]#

使用parted扩容分区方式

resizepart
[root@vm10-20-88-88 ~]# parted /dev/vdc
GNU Parted 3.1
Using /dev/vdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Error: The backup GPT table is not at the end of the disk, as it should be. This might mean that another operating system believes the disk is smaller. Fix, by moving the backup to the end
(and removing the old backup)?

备份GPT表没有像应该的那样位于磁盘的末尾。这可能意味着另一个操作系统认为磁盘更小。解决办法是把备份移到最后

(并删除旧的备份)?

Fix/Ignore/Cancel? f
Warning: Not all of the space available to /dev/vdc appears to be used, you can fix the GPT to use all of the space (an extra 20971520 blocks) or continue with the current setting?
Fix/Ignore? f
不是所有可用的空间/dev/vdc似乎被使用,您可以修复GPT使用所有空间(一个额外的20971520块)或继续当前设置?

Model: Virtio Block Device (virtblk)
Disk /dev/vdc: 37.6GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: Number Start End Size File system Name Flags
1 1049kB 26.8GB 26.8GB (parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/vdc: 37.6GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: Number Start End Size File system Name Flags
1 1049kB 26.8GB 26.8GB (parted)resizepart 1 37.6GB # 此步骤扩容了1分区
(parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/vdc: 37.6GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: Number Start End Size File system Name Flags
1 1049kB 37.6GB 37.6GB (parted)

然后pvresize扩容物理卷,卷组自动扩容

[root@vm10-20-88-88 ~]# pvresize /dev/vdc1
Physical volume "/dev/vdc1" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
[root@vm10-20-88-88 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
myvg 4 1 0 wz--n- 134.98g 75.98g
[root@vm10-20-88-88 ~]#

或者新建一个分区新建物理卷,向卷组新加物理卷

vgextend myvg <新物理卷>

详细示例省略

示例场景2:

/dev/vdb磁盘未做分区,直接做了物理卷

物理卷扩容前25G

[root@vm10-20-88-88 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/vdb myvg lvm2 a-- <25.00g <25.00g
/dev/vdc1 myvg lvm2 a-- <25.00g 0
/dev/vdd1 myvg lvm2 a-- <25.00g 0
/dev/vde1 myvg lvm2 a-- <25.00g <15.99g

虚拟机磁盘扩容....到50G

pvresize扩容物理卷
[root@vm10-20-88-88 ~]# pvresize /dev/vdb
Physical volume "/dev/vdb" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
[root@vm10-20-88-88 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/vdb myvg lvm2 a-- <50.00g <50.00g
/dev/vdc1 myvg lvm2 a-- <25.00g 0
/dev/vdd1 myvg lvm2 a-- <25.00g 0
/dev/vde1 myvg lvm2 a-- <25.00g <15.99g
vgs查看卷组大小已扩容
[root@vm10-20-88-88 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
myvg 4 1 0 wz--n- 124.98g 65.98g
[root@vm10-20-88-88 ~]#

lvm 扩容的更多相关文章

  1. 虚拟机LVM扩容

    1.先在Vmware上,把虚拟机硬盘做扩展 2.现在打开虚拟机发现系统的磁盘空间已经扩了,但是硬盘分区可用空间没变,还是原来的30G [root@localhost ~]# fdisk -l Disk ...

  2. [转载]Linux LVM硬盘管理及LVM扩容

    最近项目中一直在用Linux,其中涉及到了Linux的LVM,本来想自己写一篇关于LVM的文章,搜了一下,发现了一篇更好的,转载过来,也感谢作者gaojun 原文Linux LVM硬盘管理及LVM扩容 ...

  3. 003.LVM扩容

    一 LVM扩容步骤 创建分区 创建PV 扩容VG 扩容LV 载大小 二 创建分区 使用分区工具(如fdisk等)创建LVM分区,却将分区标识为LVM的分区类型8e. [root@kauai ~]# f ...

  4. 记一次阿里云LVM扩容与 LVM 相关知识学习

    一.lvm 扩容 问题: 我们阿里云服务器有一个磁盘容量为 1T ,但是最近由于业务的扩增,磁盘容量已经不够了,需要增大磁盘的容量.磁盘挂载在 /home,使用的是 LVM.我们现在需要对磁盘进行扩容 ...

  5. Centos7 LVM扩容实例

    Centos7 lvm 扩容与以往版本有所不同   1.插入硬盘,我是在虚拟机上做的测试  直接添加一块5G的硬盘   2.系统读取硬盘信息     # echo "- - -" ...

  6. Linux LVM硬盘管理及LVM扩容

    LVM磁盘管理 一.LVM简介... 1 二. LVM基本术语... 2 三. 安装LVM... 3 四. 创建和管理LVM... 4 2. 创建PV.. 6 3. 创建VG.. 7 4. 创建LV. ...

  7. centos 7添加硬盘及LVM扩容

    一堆概念 分区工具 fdisk:支持MBR,对GPT支持的不好 parted:支持GPT partprobe(centos 5/6).partx(centos 7)通知内核强制重读磁盘分区表 分区表 ...

  8. Linux LVM扩容和缩容

    将原硬盘上的LVM分区/dev/mapper/RHEL-Data由原来的60G扩展到80G Step1:将LVData扩容+20G,如下图: [root@esc data]# lvextend -L ...

  9. VirtualBox虚拟机增加CentOS根目录容量 LVM扩容

    对于目前的网络开发者来说,比较好的搭档就是Win7+VirtualBox+CentOS的组合,既可以发挥Linux强大的网络服务功能,也可以有效的隔离各项服务拖慢系统,影响系统的运行,对于新手来说可以 ...

  10. 逻辑卷管理LVM 扩容LV容量实例(一)

    实验环境: 一台Linux 服务器添加两块硬盘,一块硬盘容量30G,另一块硬盘容量50G,采用VMware Workstation虚拟机进行模拟实验. 30G硬盘先分成一个分区,分区大小为25G,再创 ...

随机推荐

  1. 在spring启动后执行代码

    如果spring的项目直接监听tomcat启动对于 操作来说有很大难度,bean没有初始化,接口不能直接调用等等,所以我们代码执行要在spring启动之后执行项目 package com.java71 ...

  2. Codeforces 1304F1/F2 Animal Observation(单调队列优化 dp)

    easy 题目链接 & hard 题目链接 给出一张 \(n \times m\) 的矩阵,每个格子上面有一个数,你要在每行选出一个点 \((i,t)\),并覆盖左上角为 \((i,t)\), ...

  3. 使用Docker编译OpenResty支持国密ssl加密

    编译环境 执行编译操作环境如下 #操作系统 CentOS Linux release 7.4.1708 (Core) #docker版本 Version: 19.03.5 编译过程 Dockerfil ...

  4. 生产调优3 HDFS-多目录配置

    目录 HDFS-多目录配置 NameNode多目录配置 1.修改hdfs-site.xml 2.格式化NameNode DataNode多目录配置(重要) 1.修改hdfs-site.xml 2.测试 ...

  5. 学习java 7.23

    学习内容: 前面讲解了如果构建GUI界面,其实就是把一些GUI的组件,按照一定的布局放入到容器中展示就可以了.在实际开发中,除了主界面,还有一类比较重要的内容就是菜单相关组件,可以通过菜单相关组件很方 ...

  6. 3步!完成WordPress博客迁移与重新部署

    本文来自于轻量应用服务器征文活动的用户投稿,已获得作者(昵称nstar)授权发布. 由于现有的服务器已经到期,并且活动已经取消,续费一个月145元比较贵,于是参加了阿里云的活动购买一台轻量应用服务器. ...

  7. Scala(一)【安装和IDEA中开发】

    目录 一.下载 二.windows安装 三.linux环境安装 四.Ida开发Scala 1.在线下载Scala插件 2.离线下载Scala插件 3.验证 五.HelloWorld入门程序 1.新建M ...

  8. mystar01 nodejs MVC 公共CSS,JS设置

    mystar01 nodejs MVC gulp 项目搭建 config/express.js中定义别名 //将下载的第三方库添加到静态资源路径当中,方便访问 app.use('/jquery', e ...

  9. 【分布式】ZooKeeper权限控制之ACL(Access Control List)访问控制列表

    zk做为分布式架构中的重要中间件,通常会在上面以节点的方式存储一些关键信息,默认情况下,所有应用都可以读写任何节点,在复杂的应用中,这不太安全,ZK通过ACL机制来解决访问权限问题,详见官网文档:ht ...

  10. [学习总结]4、Android的ViewGroup中事件的传递机制(一)

    本文主要针对dispatchTouchEvent,onInterceptTouchEvent,onTouchEvent三个方法,通过简单的例子来简单的介绍下. 根据字面意思的理解,dispatchTo ...