首页 > 基础资料 博客日记

Linux-LVM创建和扩容

2024-08-19 21:00:14基础资料围观148

Java资料网推荐Linux-LVM创建和扩容这篇文章给大家,欢迎收藏Java资料网享受知识的乐趣

1. 直接上手

逻辑卷管理(Logical Volume Manager, LVM)是 Linux 中用于磁盘和分区管理的一种技术,它提供了一种更加灵活的方式来管理存储空间。

1.2 LVM 概念

LVM 是一种抽象层,位于物理存储设备之上,文件系统之下。通过 LVM,我们可以创建逻辑卷(Logical Volumes, LVs),这些逻辑卷可以从一个或多个物理卷(Physical Volumes, PVs)中分配空间。LVM 还支持卷组(Volume Groups, VGs),这是一种包含一个或多个物理卷的容器。

1.2.1 关键术语

  1. PV(物理卷):物理卷是LVM中的一个基本单元,通常是一个或多个磁盘分区,也可以是整个磁盘。
  2. VG(卷组):卷组是由一个或多个物理卷组成的集合,可以看作是一个存储池。
  3. LV(逻辑卷):逻辑卷是建立在卷组上的,它是卷组中的一个或多个物理卷的子集,通常用于挂载文件系统,可以看作是一个可以动态调整大小的分区。
  4. PE(物理扩展):物理卷中的最小可寻址单元,通常大小为 4MB。
  5. LE(逻辑扩展):逻辑卷中的最小可寻址单元,与 PE 对应。

1.3 LVM使用步骤

1.3.1 创建物理卷(PV)

1.使用 pvcreate 命令来创建物理卷。

pvcreate /dev/sdb1

1.3.2 创建卷组(VG)

1.使用 vgcreate 命令来创建卷组。

vgcreate myVG0 /dev/sdb1

这里的myVG0是逻辑卷的名称。

1.3.3 创建逻辑卷(LV)

1.使用 lvcreate 命令来创建逻辑卷。

lvcreate -L 10G -n myVG0 myLV0

这里 -L 指定逻辑卷的大小,-n 指定逻辑卷的名称,这个命令的作用是在名为myVG0的卷组中创建一个名为myLV0的逻辑卷,其大小为10GB。

1.3.4 格式化逻辑卷

1.使用 mkfs 命令来格式化逻辑卷。

mkfs.ext4 /dev/myVG0/myLV0

1.3.5 挂载逻辑卷

1.使用 mount 命令来挂载逻辑卷到指定目录。

mkdir /mnt/myLVdisk
mount /dev/myVG0/myLV0 /mnt/myLVdisk

1.3.6 扩展和缩小逻辑卷

1.3.6.1 扩展逻辑卷

1.添加新的物理卷到卷组

pvcreate /dev/sdc
vgextend myVG /dev/sdc

2.扩展逻辑卷的大小。

lvextend -L +5G /dev/myVG0/myLV0

3.调整文件系统的大小以匹配新的逻辑卷大小。

resize2fs /dev/myVG0/myLV0
1.3.6.2 缩小逻辑卷

1.缩小文件系统的大小。

umount /mnt/myLV
resize2fs /dev/myVG0/myLV0 9G

2.缩小逻辑卷的大小。

lvreduce -L 9G /dev/myVG0/myLV0



2. 实战

2.1 从零开始创建LVM

假设你有两个512G的硬盘 /dev/sda/dev/sdb,现想要/dev/sdb转换为 LVM 结构,创建一个名为 dataVG 的卷组,然后在其中创建一个大小为511.9GB的逻辑卷 dataLV。并将其格式化为 ext4 文件系统,最后挂载到 /mnt/tmp 目录。

lsblk 是一个在Linux系统中用来列出所有可用的块设备(例如硬盘驱动器、固态驱动器、USB驱动器等)的命令行工具。该命令提供了一个易于阅读的表格格式,显示了每个设备的名称、挂载点、分区布局等信息。

lsblk

2.1.2 操作步骤

1.下载并安装lvm2软件包以及它所需的任何其他包。

apt install -y lvm2

2.创建物理卷。

pvcreate /dev/sdb

3.显示物理卷的相关信息。

pvdisplay
pvs

pvdisplay:显示有关物理卷的详细信息,包括其大小、分配的PE(物理扩展)数量、以及它属于哪个卷组等。如果你需要查看特定物理卷的详细信息,可以使用 pvdisplay /dev/sdXN

pvs:以表格形式显示所有物理卷的摘要信息,包括它们的名称、大小、PE大小和状态。

4.创建卷组。

vgcreate dataVG /dev/sdb

5.查看系统中所有卷组的详细信息。

vgdisplay

vgdisplay 是一个用于显示卷组(Volume Group)信息的命令行工具,它是LVM(逻辑卷管理器)的一部分。使用 vgdisplay 可以查看系统中所有卷组的详细信息,或者指定特定的卷组来获取详细信息。如果你想要查看特定卷组的信息,可以使用 -v--volumes 选项,后面跟上卷组的名称。

6.创建逻辑卷

lvcreate -L 511.9G -n dataLV dataVG

因为PE Size占了4MB,所以可用的VG Size不足512GB。

7.显示逻辑卷的相关信息

lvdisplay
lvs

lvdisplay 命令显示特定逻辑卷的详细信息。如果你想查看特定逻辑卷的详细信息,可以在命令后面加上逻辑卷路径

lvs 命令以表格形式显示所有逻辑卷的摘要信息。它会列出每个逻辑卷的名称、所属卷组、当前大小、使用的PE(物理扩展)数量、以及是否激活等信息。

8.查看/dev目录下的卷组和逻辑卷。

ls -l /dev/ | grep -i dataVG
ls -l /dev/dataVG

我们创建的VGLV,本质上是在/dev目录下创建了文件。

9.格式化逻辑卷。

mkfs.ext4 /dev/dataVG/dataLV

10.查看逻辑卷的分区信息和健康状态。

fdisk -l
fsck.ext4 /dec/dataVG/dataLV

使用 fsck 命令可以检查文件系统的完整性。请注意,在运行 fsck 之前,确保逻辑卷未被挂载。

fdisk 是一个用于磁盘分区的命令行工具,-l 选项表示列出所有分区表,而不需要交互式操作。

  1. 创建挂载点,并挂载逻辑卷。

    mkdir /mnt/tmp
    mount /dev/dataVG/dataLV /mnt/tmp
    

12.查看文件系统信息。

df -Th

使用 df -Th 命令可以查看所有已挂载的文件系统及其类型。






2.2 已有LVM结构,扩容到指定目录

假设你有两个的硬盘 /dev/sdb200G 和 /dev/sdc100G,且/dev/sdb已经是LVM 结构,现欲将/dev/sdc100G硬盘扩容到/mnt/tmp中。

2.2.1 操作步骤

1.查看已有文件系统信息。

df -Th

2.列出可用的块设备。

lsblk

3.创建物理卷。

pvcreate /dev/sdc

4.将物理卷添加到现有卷组:

vgextend dataVG /dev/sdc

vgextend 命令用于向现有的卷组(Volume Group)中添加一个或多个新的物理卷(Physical Volumes,PVs)。物理卷可以是磁盘、磁盘分区或整个磁盘设备。使用 vgextend 可以增加卷组的容量,从而允许在该卷组中创建更大的逻辑卷(Logical Volumes,LVs)。

5.确认卷组dataVG中可用的空间量。

vgs --noheadings --units g --separator : --nosuffix --all --options vg_name,free

以简化格式输出卷组(VG)的名称及其可用的自由空间(单位为 GB),这里是对该命令各选项的解释:

  • --noheadings: 不显示表头。

  • --units g: 显示以 GB 为单位的值。

  • --separator :: 使用冒号作为字段之间的分隔符。

  • --nosuffix: 不显示单位后缀(如 G、T 等)。

  • --all: 包括所有卷组的信息。

  • --options vg_name,free: 只显示卷组名称和自由空间这两个字段。

6.扩展一定的大小,如40GB:

lvextend -L +40G /dev/dataVG/dataLV

7.调整文件系统大小。

resize2fs /dev/dataVG/dataLV

resize2fs 是一个用于调整 ext2ext3ext4 文件系统大小的命令行工具。它允许你增加或减少文件系统的容量,以适应底层存储设备的大小变化。这个命令特别适用于以下情况:

  • 当你使用 lvextend 增加了逻辑卷的大小,并且希望文件系统能够使用新增的空间。
  • 当你需要缩小文件系统以释放空间给其他用途。

8.验证文件系统信息。

df -Th


文章来源:https://blog.csdn.net/weixin_57370131/article/details/141304146
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!

标签:

相关文章

本站推荐

标签云