Linux逻辑卷动态扩容

devtools/2024/12/22 23:41:56/

Linux逻辑卷动态扩容

  • 一、查看当前文件系统磁盘空间情况
  • 二、将新磁盘初始化为物理卷
  • 三、将新的物理卷归到需要扩容的卷组当中
  • 四、将卷组中的空间分配到具体的逻辑卷上
  • 五、逻辑卷扩容完成后,需要动态调整才能使用新分配的空间。

一、查看当前文件系统磁盘空间情况

使用 df -HT 命令,它会列出所有已挂载的文件系统及其类型,以及每个文件系统的总大小、已用空间、可用空间和已用百分比,所有大小都以易读的格式显示。

# df -HT
文件系统              类型      容量  已用  可用 已用% 挂载点
devtmpfs              devtmpfs   17G     0   17G    0% /dev
tmpfs                 tmpfs      17G  197k   17G    1% /dev/shm
tmpfs                 tmpfs      17G  793M   16G    5% /run
tmpfs                 tmpfs      17G     0   17G    0% /sys/fs/cgroup
/dev/mapper/klas-root xfs       259G   67G  192G   26% /
tmpfs                 tmpfs      17G     0   17G    0% /tmp
/dev/vda2             xfs       1.1G  171M  893M   17% /boot
/dev/vda1             vfat      628M  6.8M  622M    2% /boot/efi
tmpfs                 tmpfs     3.3G     0  3.3G    0% /run/user/993
tmpfs                 tmpfs     3.3G     0  3.3G    0% /run/user/0

lsblk命令列出所有可用的块设备,包括磁盘和分区,以及它们的挂载点。未挂载的设备将不会显示挂载点。

# lsblk -f
NAME            FSTYPE      FSVER    LABEL        UUID                                   FSAVAIL FSUSE% MOUNTPOINT
vda                                                                                                     
├─vda1          vfat        FAT32                 77F8-178C                               592.3M     1% /boot/efi
├─vda2          xfs                               8c2ee0e0-095c-4abe-8b10-cfe078d5815a    851.4M    16% /boot
└─vda3          LVM2_member LVM2 001              R3VNOt-qFZb-gDMU-FK3t-umox-Uegg-bxwltC                ├─klas-root   xfs                               d0e6306f-f46e-4653-a456-8eedb220b88f       40K   100% /├─klas-swap   swap        1                     0166d0ff-8af3-4926-95e6-ca0b0b123baf                  [SWAP]└─klas-backup xfs                  KYLIN-BACKUP bde103ce-9997-4ba2-b561-6d92cac9ca18                  
vdb             LVM2_member LVM2 001              8eWd7B-dOHb-pmI0-qpdO-aAz7-53VT-wFPyDw                

可以看到 vdb 磁盘未存在挂载点,属于新增磁盘

二、将新磁盘初始化为物理卷

以本文章所描述的 vdb 磁盘为例,

查看 vdb 磁盘具体名
# fdisk -l
Disk /dev/vdb:200 GiB,214748364800 字节,419430400 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节初始化为 物理卷
# pvcreate /dev/vdb
Physical volume "/dev/vdb" successfully created.
查看是否初始化成功
# pvdisplay
"/dev/vdb" is a new physical volume of "200.00 GiB"--- NEW Physical volume ---PV Name               /dev/vdbVG Name               PV Size               200.00 GiBAllocatable           NOPE Size               0   Total PE              0Free PE               0Allocated PE          0PV UUID               8eWd7B-dOHb-pmI0-qpdO-aAz7-53VT-wFPyDw

三、将新的物理卷归到需要扩容的卷组当中

# 查看当前系统中卷组信息
# vgdisplay--- Volume group ---VG Name               klasSystem ID             Format                lvm2Metadata Areas        1Metadata Sequence No  4VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                3Open LV               2Max PV                0Cur PV                1Act PV                1VG Size               98.41 GiBPE Size               4.00 MiBTotal PE              25193Alloc PE / Size       25193 / 98.41 GiBFree  PE / Size       0 / 0   VG UUID               460LuL-MpeN-L6bO-8PaO-aBqF-KlNa-ksplWp
# 将 /dev/vdb 分配到 klas 卷组当中
# vgextend klas /dev/vdbVolume group "klas" successfully extended
# 查看是否分配成功
vgdisplay--- Volume group ---VG Name               klasSystem ID             Format                lvm2Metadata Areas        2Metadata Sequence No  5VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                3Open LV               2Max PV                0Cur PV                2Act PV                2VG Size               <298.41 GiBPE Size               4.00 MiBTotal PE              76392Alloc PE / Size       25193 / 98.41 GiBFree  PE / Size       51199 / <200.00 GiBVG UUID               460LuL-MpeN-L6bO-8PaO-aBqF-KlNa-ksplWp

四、将卷组中的空间分配到具体的逻辑卷上

查看当前所有的逻辑卷,从中找出你需要扩容的逻辑卷是哪个
# lvdisplay
--- Logical volume ---LV Path                /dev/klas/rootLV Name                rootVG Name                klasLV UUID                4fWwXB-zpSd-UxoL-bUpv-4lv1-UdBQ-Jp2xGrLV Write Access        read/writeLV Creation host, time host-172-29-136-151, 2023-08-01 11:09:50 +0800LV Status              available# open                 1LV Size                <60.75 GiBCurrent LE             15551Segments               1Allocation             inheritRead ahead sectors     auto- currently set to     8192Block device           252:0
# 进行扩容
# lvextend -L +180G /dev/klas/rootSize of logical volume klas/root changed from <60.75 GiB (15551 extents) to <240.75 GiB (61631 extents).Logical volume klas/root successfully resized.

五、逻辑卷扩容完成后,需要动态调整才能使用新分配的空间。

ext4文件系统使用
# resize2fs /dev/klas/root

对于XFS文件系统(如何分辨,使用 lsblk -f 查看逻辑卷文件系统类型),使用:

# xfs_growfs /dev/klas/root 或 df -Th

http://www.ppmy.cn/devtools/144511.html

相关文章

在 Spark 上实现 Graph Embedding

在 Spark 上实现 Graph Embedding 主要涉及利用大规模图数据来训练模型&#xff0c;以学习节点的低维表示&#xff08;嵌入&#xff09;。这些嵌入能够捕捉和反映图中的节点间关系&#xff0c;如社交网络的朋友关系或者物品之间的相似性。在 Spark 上进行这一任务&#xff0c;可…

C++点云大文件读取

C点云大文件读取 1. 常规读取1.1 逐行读取1.2 逐字节读取 2. 并行读取 (Multithreading)3. 使用缓冲读取 (Buffered I/O)4. 内存映射文件 (Memory Mapping) 在C中读取大文件时&#xff0c;如果需要提高读取速度&#xff0c;可以考虑以下几种方法&#xff1a; 1. 常规读取 常规…

日拱一卒(19)——leetcode学习记录:两个子序列的最大点积

一、题目 给你两个数组 nums1 和 nums2 。 请你返回 nums1 和 nums2 中两个长度相同的 非空 子序列的最大点积。 数组的非空子序列是通过删除原数组中某些元素&#xff08;可能一个也不删除&#xff09;后剩余数字组成的序列&#xff0c;但不能改变数字间相对顺序。比方说&a…

在 Unity 6 中使用APV为您的世界创建全局照明的新方法(一)

Unity 6 中推出的新照明功能让您能够更快速、更高效的完成对烘焙场景的照明工作&#xff0c;在本文中我们将与大家详细分享在 Unity 6 中应用自适应探针卷创建快速全局光照的更多细节与具体应用方法。由于内容比较丰富&#xff0c;我们将把内容分为三篇文章&#xff0c;以便大家…

【DevOps工具篇】SCM之Gitlab

【DevOps工具篇】SCM之Gitlab 目录 【DevOps工具篇】SCM之Gitlab什么是Git?Git命令有哪些?什么是GitHub?什么是GitLab?GitLab的后期发展为什么使用GitLab?Docker Compose部署GitLab持久化Gitlab数据推荐超级课程: Docker快速入门到精通Kubernetes入门到大师通关课AWS云服…

深入解析Ubuntu 20.04 ROS中的setup.bash文件

深入解析Ubuntu 20.04 ROS中的setup.bash文件 在Ubuntu 20.04系统上使用ROS&#xff08;Robot Operating System&#xff09;进行机器人软件开发时&#xff0c;setup.bash文件扮演着至关重要的角色。本文将详细解释ROS中的setup.bash文件是什么、其功能和用途、使用方法及其特…

Harmonyos多线程之Worker基本使用

Harmonyos多线程之Worker基本使用 Worker的注意事项创建Worker的注意事项手动创建Worker线程自动创建Worker现成 跨har包加载Worker多级Worker的声明周期管理 Worker和宿主线程的通信 Worker主要作用是为应用程序提供一个多线程的运行环境&#xff0c;可满足应用程序在执行过程…

HTML基本标签详解

HTML基本标签详解 HTML&#xff08;超文本标记语言&#xff09;是构建网页的基础&#xff0c;以下是一些常用的 HTML 基本标签及其详细说明&#xff1a; <html> 定义&#xff1a;整个 HTML 文档的根元素。示例&#xff1a;<html lang"zh"><head> …