LVM扩容操作

2023-11-12

一、测试环境

我是在virtualbox上安装的测试环境:centos。其具体硬盘配置如下

df -Th

在这里插入图片描述
磁盘情况: fdisk -l
在这里插入图片描述
今天主要是分别操作下给lvm根分区扩容

二、给lvm分区扩容(加硬盘)

可以看到,现有系统是一块硬盘sda,共64G,并分成两个分区,sda1直接挂载到/boot目录,sda2分区则交给了LVM来管理,并挂载到根目录/和/home目录

1.新增硬盘

我是用virtualbox来模拟的,关闭linux系统。点击“设置-存储-控制器SATA右边的+号图标“,创建新的虚拟盘
在这里插入图片描述
选择“文件位置,文件类型为VHD虚拟硬盘”点击 创建。
在这里插入图片描述
创建之后,可以看到有两个硬盘了
在这里插入图片描述

2.给新的硬盘分区

fdisk -l 

在这里插入图片描述

lsblk

在这里插入图片描述
可以看到多了一个硬盘sdb了,现在给sdb分区,注意要选择分区类型为8e。
执行命令: fdisk -l /dev/sdb
在这里插入图片描述

这里需要注意,在依次输入 n p 1之后,输入p查看了下分区格式,显示出的Id那一栏是83,这是默认的分区格式,但我们需要将这个分区后面交给lvm来管理,就需要修改分区格式,输入 t , 8e
修改完分区格式之后,我们再输入p看一下,Id从83变成8e了。输入w保存
在这里插入图片描述

具体83代表什么,8e代表什么,可以参考下图
在这里插入图片描述

这就分区完成了。我们再输入fdisk -l 和 lsblk看看:
在这里插入图片描述
在这里插入图片描述

3、Lvm操作

其实主要的操作流程就是: 创建物理卷 ->> 将物理卷加入到卷组 ->> 扩展逻辑卷 -->刷新文件系统。 (这里已经有卷组了,不需要再创建卷组)

查看卷组状态:vgdisplay

在这里插入图片描述

创建物理卷:pvcreate /dev/sdb1

扩展卷组: vgextend 卷组名 物理卷路径

在这里插入图片描述

扩展逻辑卷: lvextend

先看下逻辑卷状态: lvdisplay
在这里插入图片描述
在这里插入图片描述
我们是想扩展根目录,也就是对应逻辑卷: lv_root

lvextend  /dev/VolGroup/lv_root /dev/sdb1

在这里插入图片描述
注意:lvextend的第一个参数是逻辑卷路径,不是名称。当然也可以把卷组中剩余的空间都分配给该逻辑卷

lvextend -l +100%FREE /dev/VolGroup/lv_root

拉伸文件系统:xfs_growfs 或者 resize2fs

xfs_growfs /dev/VolGroup/lv_root 

如果报错,换

resize2fs /dev/VolGroup/lv_root

4、验证结果:

现在再看下目录大小:
在这里插入图片描述
扩容完成!

三、给lvm分区扩容(不加硬盘,直接加容量)

在上面的操作中,我新增了一块8G的硬盘,并且把这个新硬盘成功的扩充到根目录中。那如果我现在把这个8G的硬盘,扩展为20G的容量。(实际生产环境中,有可能客户使用的就是虚拟系统,可以不加实体硬盘而直接增加虚拟硬盘容量)
那怎么把这剩余的20G也放到根目录下呢

给硬盘加容量

打开virtualbox ,管理 --> 虚拟介质管理–>找到需要扩充的虚拟硬盘文件,调整大小
在这里插入图片描述
在这里插入图片描述
这个硬盘的容量已经扩展到20GL ,但是现在还是不被系统所识别的,系统还只认识之前的8G。

fdisk -l 

在这里插入图片描述
在这里插入图片描述
sdb虽然总共有20G,但是使用的之后sdb1分区8G。
首先先要对分区sdb1进行扩容

调整分区大小 fdisk

从上面截图可以看到,sdb1 的起始磁柱号是1(这只是测试,一般情况下不一定),结束磁柱好为1044,但实际上整个硬盘有2610个磁柱,所以需要调整分区。其主要操作步骤是:
1.查看起始磁柱号 a
2.删除分区(注意这时候千万不能保存)
3.重新创建分区,并且开始磁柱号设置为第1步的起始磁柱号 a
4.保存

fdisk /dev/sdb

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

让系统核心重新捕捉分区表

partprobe

再来看 /dev/sdb磁盘,分区大小已经调整到最大了
在这里插入图片描述

扩展物理卷 /dev/sdb1

我们用 pvdisplay查看物理卷状态,发现还是原来的8G大小

在这里插入图片描述
所以需要先把物理卷的容量扩大,才好调整逻辑卷

pvresize /dev/sdb1

在这里插入图片描述

扩展逻辑卷 lvextend

vgdisplay

在这里插入图片描述
可以看到卷组已经多了12G的可分配空间。

lvdisplay

在这里插入图片描述

lvextend -l +100%FREE 卷路径

在这里插入图片描述

拉伸文件系统:xfs_growfs 或者 resize2fs

resize2fs /dev/VolGroup/lv_root

在这里插入图片描述
可以看到根目录大小已经扩大了12G

参考文档

https://www.cnblogs.com/cyrus0w/p/13194028.html
https://linux.cn/article-3218-1.html?pr
https://blog.csdn.net/l675655077/article/details/80229901
https://www.jianshu.com/p/273daea17b2a

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LVM扩容操作 的相关文章

  • 无法在 Linux 的 NetBeans 中编译 C++ 和 OpenGL (GLFW) 的简单源代码

    我开始学习 OpenGL glfw 我从教程中复制源代码并尝试编译它 但出现了错误 我想我已经正确安装了所有头文件 glm glfw 等 这是我的来源 我没有在头文件中使用这些字符 include iostream include stdi
  • linux新手关于嵌入式linux设备驱动的问题

    最近在研究linux驱动 正如我读过的那些文章所说 设备驱动程序模块很可能会根据内核的需要自动加载 因此我想知道内核如何确定为特定设备 声卡 I2C spi 设备 等 我也无法彻底想象内核如何在启动时检测每个硬件设备 与嵌入式linux相关
  • 如果文件没有行尾字符,则 wc -l 不计算文件的最后一个

    我需要计算 unix 文件的所有行数 该文件有 3 行 但是wc l仅给出 2 个计数 我知道它不计算最后一行 因为它没有行尾字符 任何人都可以告诉我如何计算这一行吗 grep c返回匹配行的数量 只需使用一个空字符串 作为您的匹配表达式
  • 如何在 Vim 中突出显示 Bash 脚本?

    我的 Vim 编辑器自动突出显示 PHP 文件 vim file php HTML 文件 vim file html 等等 但是当我输入 vim file在里面写一个Bash脚本 它不会突出显示它 我如何告诉 Vim 将其突出显示为 Bas
  • PIL 的 Image.show() 带来*两个*不同的查看器

    在 python shell 中处理图像时 我使用 image show 其中 image 是 Image 的实例 很久以前什么也没发生 但在定义了一个名为 xv 的 Mirage 符号链接后 我很高兴 最近几天 show 将显示 Imag
  • 如何获取与 shell 中的文件名模式匹配的所有文件的总文件大小?

    我正在尝试仅使用 shell 来计算与文件名模式匹配的所有文件 在目录树中 的总大小 以字节为单位 这是我到目前为止所拥有的 find name undo exec stat c s awk 总计 1 END 打印总计 有没有更简单的方法来
  • 在 scapy 中通过物理环回发送数据包

    我最近发现了 Scapy 它看起来很棒 我正在尝试查看 NIC 上物理环回模块 存根上的简单流量 但是 Scapy sniff 没有给出任何结果 我正在做的发送数据包是 payload data 10 snf sniff filter ic
  • bash 将输出重定向到文件,但结果不完整

    重定向命令输出的问题已经被问过很多次了 但是我有一个奇怪的行为 我使用的是 bash shell debian 版本 4 3 30 1 release 并尝试将输出重定向到文件 但并非所有内容都记录在文件中 我尝试运行的 bin 文件是 l
  • 如何从 Bash 命令行在后台 Vim 打开另一个文件?

    我正在从使用 Gvim 过渡到使用控制台 Vim 我在 Vim 中打开一个文件 然后暂停 Vim 在命令行上运行一些命令 然后想返回到 Vim Ctrl Z 在正常模式下 暂停 Vim 并返回到控制台 fg可用于将焦点返回到 Vim job
  • Crontab 每 5 分钟一次 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我如何告诉 crontab 每 5 分钟运行一次 但从每小时的第二分钟开始 换句话说 我想在以下时间执行我的脚本minute 5 2 例如 我的脚本应
  • 使用 libusb 输出不正确

    我用libusb编写了一个程序 我怀疑输出是否正确 因为所有条目都显示相同的供应商和产品 ID 以下是代码 include
  • 正则表达式删除块注释也删除 * 选择器

    我正在尝试使用 bash 从 css 文件中删除所有块注释 我有以下 sed 命令的正则表达式 sed r s w s w d 这可以很好地去除块注释 例如 This is a comment this is another comment
  • 为 Linux 编译 Objective-C 应用程序(API 覆盖范围)

    我可能在这里问一些奇怪的问题 但我不确定从哪里开始 问题是我正在考虑使用 Obj C 和 Foundation 类在 Mac 上编写一个命令行工具 但存在一个非常大的风险 那就是我希望能够为不同的 Linux 发行版编译它 以便将来作为服务
  • Linux 使用 boost asio 拒绝套接字绑定权限

    我在绑定套接字时遇到问题 并且以用户身份运行程序时权限被拒绝 这行代码会产生错误 acceptor new boost asio ip tcp acceptor io boost asio ip tcp endpoint boost asi
  • 如何在 Linux 上通过 FTP 递归下载文件夹 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案
  • 如何才能将 TCP 连接返回到同一端口?

    机器是 RHEL 5 3 内核 2 6 18 有时我在 netstat 中注意到我的应用程序有连接 建立了 TCP 连接本地地址 and 国外地址是一样的 其他人也报告了同样的问题 症状与链接中描述的相同 客户端连接到本地运行的服务器的端口
  • awk 在循环中使用时不打印任何内容[重复]

    这个问题在这里已经有答案了 我有一堆使用 file 1 a 1 txt 格式的文件 如下所示 A 1 B 2 C 3 D 4 并使用以下命令添加包含每个文件名称的新列 awk print FILENAME NF t 0 file 1 a 1
  • ssh 连接超时

    我无法在 git 中 ssh 到 github bitbucket 或 gitlab 我通常会收到以下错误消息 如何避免它 输出 ssh T email protected cdn cgi l email protection i ssh
  • 找不到包“gdk-pixbuf-2.0”

    我正在尝试在 Amazon Linux 发行版实例上构建 librsvg 我已经通过 yum 安装了大部分依赖项 其中一些在实例上启用的默认 yum 存储库中不可用 因此必须从头开始构建它们 我已经走了很远 但还停留在最后一点 跑步时sud
  • SSH,运行进程然后忽略输出

    我有一个命令可以使用 SSH 并在 SSH 后运行脚本 该脚本运行一个二进制文件 脚本完成后 我可以输入任意键 本地终端将恢复到正常状态 但是 由于该进程仍在我通过 SSH 连接的计算机中运行 因此任何时候它都会登录到stdout我在本地终

随机推荐

  • 软件测试人员该学习 Python 的七个理由

    对于一个软件测试工程师来说 选哪一门语言来入手编程一直是件非常纠结的事情 当然立志做一辈子功能测试的人除外 值得庆幸的是 专门介绍软件 工具及网站服务的技术Blog上CarlCheo绘制了一张图表 告诉你该怎么开始伟大的码农航道 大多数好的
  • (六)练习:饮料自动售货机

    1 找出所有的原因 输入 并编号 1 投币5角 2 投币1元 3 按下 橙汁 按钮 4 按下 啤酒 按钮 2 找出所有的结果 输出 并编号 注意 不能写购买成功 饮料送出 因为若买橙汁 则应该送出橙汁 送出啤酒是不对的 若只写找零 则在画因
  • mybatis:mybatis再总结

    1 什么是mybatis 优点 缺点 适用场合 与Hibernate的对比 https www cnblogs com zhai1997 p 12527689 html 2 和 的区别是什么 是预编译处理 是字符串替换 将传入的数据都当成一
  • Pytorch基础学习(第四章-Pytorch损失优化)

    课程一览表 目录 一 权值初始化 1 梯度消失与爆炸 2 Xavier方法与kaiming方法
  • unity 设置layer 使碰撞器不碰撞

    做游戏时 有时候需要让同一个地图的两个敌人不互相碰撞 但是两个人都有碰撞器 能站在地上 这个功能是如何实现的呢 答案就是设置layer 当点击Hierarchy窗口中的某个对象时 在Inspector窗口就可以看见Layer选项 如图 你可
  • Lua 15分钟快速上手(下)

    本系列相关文章 Flutter 热更新及动态UI生成 Lua 15分钟快速上手 上 Lua 15分钟快速上手 下 Lua与C语言的互相调用 LuaDardo中Dart与Lua的相互调用 进阶语法篇 迭代器 迭代器 iterator 是一种可
  • SpringMVC路径匹配中使用通配符

    SpringMVC路径匹配中使用通配符 RequestMapping中指定的路径也可以使用通配符 表示任意字符 如下的处理器方法可以映射请求 antstyle a 可以映射请求 antstyle b 但是它不能映射请求请求 antstyle
  • 创建或打开c++浏览数据库文件时发生错误,IntelliSense和浏览信息将不能用于C++项目。

    在用vs新建项目 出现这一类的错误 常出现在vs2010中 在使用VC2010的时候出现问题如下 创建或打开C 浏览数据库文件XXXXXXX stdf时发生错误 IntelliSense和浏览信息将不能用于C 项目 请确保已安装Micros
  • 多款知名App宣布停止更新,安卓用户大悲

    程序员的成长之路 互联网 程序员 技术 资料共享 关注 阅读本文大概需要 5 分钟 来自 电脑报 ID CQCPCW 开屏广告早已入侵我们的生活 如同狗皮膏药般存在 人人都在骂 却屡禁不止 甚至还被玩出各种新花样 比如关闭按钮小如蝼蚁 伪装
  • CocosCreator JS追踪堆栈信息

    在开发过程中 可能有这样的需求 即使在没有报错的情况 也需要查看该函数的堆栈调用信息 对于这样的需求 我们可以使用JS原生的console trace来实现 具体代码 export let TraceArr console trace fu
  • 服务器多网卡多路由策略

    场景背景与需求 某公司新买一台服务器 服务器资源 cpu 内存 硬盘 比较多 并且有多个网卡 运维工程师为了节省资源 在服务器上搭建多个服务 希望通过多个网卡实现流量分流 但由于运维工程师对网络理解不够深入 将服务器的多个网卡都配置了同一个
  • 被suse搞到崩溃了

    在Vmware上装了个suse 10 2 它还没崩溃 我快要崩溃了 这玩意号称最新最强的Linux 但是启动速度真的是慢的没法说 关机也是慢的没法说 点个按钮 半天才出来对话框 有时我都怀疑他是不是死掉了 多点几下 结果过一会出来一堆对话框
  • 2015年底总结

    时间过的好快 一年又过了 回顾这一年 经历了很多 成长了很多 今天对2015做一个简单的总结 同时展望一下未来 在14年总结中 今年的重点是考注册电气工程师 学习Android开发 在技术这块儿往精学 而不是多而不精 这一年 确实在注电考试
  • QQuickWidget里放置QML

    1 效果 2 QML 在资源里新建Mybattery qml import QtQuick 2 0 import QtQuick 2 12 Item id root property color color1 18FD18 绿色 健康 pr
  • @Retention注解作用

    Retention作用是定义被它所注解的注解保留多久 一共有三种策略 定义在RetentionPolicy枚举中 从注释上看 source 注解只保留在源文件 当Java文件编译成class文件的时候 注解被遗弃 被编译器忽略 class
  • c/c++调用system获取返回值

    目录 参考 命令 定义函数 调用 参考 在 c c 程序中 可以使用 system 函数运行命令行 但是只能得到该命令行的 int 型返回值 并不能获得显示结果 例如system ls 只能得到0或非0 如果要获得ls的执行结果 则要通过管
  • Jlink在ADS下的配置说明及常见问题解决办法

    阅读1087次 2013 4 2 21 04 37 Jlink在ADS下的配置说明及常见问题解决办法Zhaoxj 参考文档 1 TQ2440开发板使用手册V3 2 20121203 pdf 2 JLINK ADS 2440 pdf 注 1
  • HBase:Region的拆分

    为什么要拆分Region 首先 Region是一段Rowkey数据的集合 当查询一条数据时 会先从元数据中判断该条数据的Rowkye属于哪个Region 然后到指定的Region中查找 当一个Region过大时 在这个Region中查找Ro
  • java并发的基本概念和级别

    之前买了一本实战Java高并发程序设计 这里记一下笔记 至于书怎么样 读完之后再看值不值得推荐 先提供下试读pdf的 下载地址 关于java并发的一些概念 并发的概念 并发 Concurrency 和并行 Parallelism 并发偏重于
  • LVM扩容操作

    文章目录 一 测试环境 二 给lvm分区扩容 加硬盘 1 新增硬盘 2 给新的硬盘分区 3 Lvm操作 查看卷组状态 vgdisplay 创建物理卷 pvcreate dev sdb1 扩展卷组 vgextend 卷组名 物理卷路径 扩展逻