详解Linux LVM逻辑卷配置过程(创建,增加,减少,删除,卸载)

详解Linux LVM逻辑卷配置过程

什么是LVM?

LVM是Linux Logical Volume Manager(逻辑卷管理器)的缩写。它是一种为Linux操作系统提供磁盘管理的方法,它允许用户将多个硬盘分区或整个硬盘组合成一个逻辑卷,从而为用户提供更加灵活的磁盘空间管理方式。

LVM的组成部分

LVM主要由三个部分组成:

  1. 物理卷(PV):即硬盘上的分区或整个硬盘。

  2. 卷组(VG):将多个物理卷组合起来构成一个卷组。

  3. 逻辑卷(LV):在卷组内创建的逻辑卷,用户可以对逻辑卷进行格式化和挂载等操作。

LVM逻辑卷的配置过程

1. 创建物理卷

操作步骤:

  1. 找到要创建物理卷的目标设备,并将设备分区(例如/dev/sdb1)。

  2. 将分区转换为物理卷,使用以下命令:

pvcreate /dev/sdb1

示例说明:

[root@localhost ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 
First sector (2048-10485759, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-10485759, default 10485759): 
Using default value 10485759
Partition 1 of type Linux and of size 5 GiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
[root@localhost ~]# partprobe /dev/sdb
[root@localhost ~]# pvcreate /dev/sdb1 
  Physical volume "/dev/sdb1" successfully created.

2. 创建卷组

操作步骤:

  1. 找到已创建的物理卷。

  2. 创建卷组,使用以下命令:

vgcreate [卷组名] /dev/sdb1

示例说明:

[root@localhost ~]# vgcreate vg_test /dev/sdb1
  Volume group "vg_test" successfully created

3. 创建逻辑卷

操作步骤:

  1. 找到已创建的卷组。

  2. 创建逻辑卷,并指定逻辑卷的大小,使用以下命令:

lvcreate -L [大小] -n [逻辑卷名] [卷组名]

示例说明:

[root@localhost ~]# lvcreate -L 2G -n lv_test vg_test
  Logical volume "lv_test" created.

4. 格式化并挂载逻辑卷

操作步骤:

  1. 找到已创建的逻辑卷。

  2. 使用以下命令格式化逻辑卷(ext4格式为例):

mkfs.ext4 /dev/vg_test/lv_test
  1. 创建挂载点:
mkdir /mnt/lv_test
  1. 挂载逻辑卷:
mount /dev/vg_test/lv_test /mnt/lv_test

示例说明:

[root@localhost ~]# mkfs.ext4 /dev/vg_test/lv_test 
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131072 inodes, 524288 blocks
26214 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done   

[root@localhost ~]# mkdir /mnt/lv_test
[root@localhost ~]# mount /dev/vg_test/lv_test /mnt/lv_test

5. 增加逻辑卷空间

操作步骤:

  1. 关闭以前的挂载点。

  2. 拓展逻辑卷的大小,并修改文件系统大小,使用以下命令:

lvextend -L [新大小] [逻辑卷名]
resize2fs [文件系统名]

示例说明:

[root@localhost ~]# umount /mnt/lv_test
[root@localhost ~]# lvextend -L 3G /dev/vg_test/lv_test
  Size of logical volume vg_test/lv_test changed from 2.00 GiB (512 extents) to 3.00 GiB (768 extents).
  Logical volume vg_test/lv_test successfully resized.
[root@localhost ~]# resize2fs /dev/vg_test/lv_test 
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vg_test/lv_test is mounted on /mnt/lv_test; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/vg_test/lv_test is now 786432 (4k) blocks long.

6. 减少逻辑卷空间

操作步骤:

  1. 关闭已挂载的文件系统。

  2. 缩小文件系统大小。

  3. 缩小逻辑卷大小,使用下面的命令:

lvreduce -L [新大小] [逻辑卷名]
  1. 修改文件系统大小:
resize2fs [文件系统名]

示例说明:

[root@localhost ~]# umount /mnt/lv_test
[root@localhost ~]# resize2fs /dev/vg_test/lv_test 1G
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/vg_test/lv_test to 262144 (4k) blocks.
The filesystem on /dev/vg_test/lv_test is now 262144 blocks long.

[root@localhost ~]# lvreduce -L 2G /dev/vg_test/lv_test
  WARNING: Reducing active logical volume to 2.00 GiB 
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv_test? [y/n]: y
  Size of logical volume vg_test/lv_test changed from 3.00 GiB (768 extents) to 2.00 GiB (512 extents).
  Logical volume vg_test/lv_test successfully resized.

[root@localhost ~]# resize2fs /dev/vg_test/lv_test
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/vg_test/lv_test to 524280 (4k) blocks.
The filesystem on /dev/vg_test/lv_test is now 524280 blocks long.

7. 删除逻辑卷

操作步骤:

  1. 关闭已挂载的文件系统。

  2. 删除逻辑卷,使用以下命令:

lvremove [逻辑卷名]

示例说明:

[root@localhost ~]# umount /mnt/lv_test
[root@localhost ~]# lvremove /dev/vg_test/lv_test
Do you really want to remove active logical volume lv_test? [y/n]: y
  Logical volume "lv_test" successfully removed

8. 删除卷组

操作步骤:

  1. 关闭已挂载的文件系统。

  2. 删除卷组,使用以下命令:

vgremove [卷组名]

示例说明:

[root@localhost ~]# umount /mnt/lv_test
[root@localhost ~]# vgremove vg_test
  Volume group "vg_test" successfully removed

以上就是Linux LVM逻辑卷配置过程的详细说明。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解Linux LVM逻辑卷配置过程(创建,增加,减少,删除,卸载) - Python技术站

(0)
上一篇 2023年6月27日
下一篇 2023年6月27日

相关文章

  • heidisql安装和使用教程

    以下是HeidiSQL安装和使用教程的完整攻略,包括两个示例说明。 1. 安装HeidiSQL 要安装HeidiSQL,可以按照以下步骤进行: 打开浏览器,访问HeidiSQL官网,下载最新版本的HeidiSQL。 将下载的HeidiSQL文件解压缩到指定的目录中。 双击解压缩后的HeidiSQL.exe文件,启动HeidiSQL。 2. 使用HeidiSQ…

    other 2023年5月9日
    00
  • python-使用conda安装opencv

    以下是关于“Python使用conda安装OpenCV”的完整攻略,包括基本概念、步骤和两个示例。 基本概念 OpenCV是一个开源的计算机视觉库,可用于处理图像和视频。conda是一个流行的Python包管理器,可用于安装和管理Python及其依赖项。 步骤 以下是使用conda安装OpenCV的步骤: 安装conda:在安装OpenCV之前,需要安装co…

    other 2023年5月7日
    00
  • #define中 #与##用法

    Define中 #与##用法 在C/C++编程语言中,#define是一种用来定义预处理宏的关键字。#define语句中的#符号和##符号在预处理宏定义中扮演着重要的角色。 #符号 在#define语句中,#符号用来将宏参数转化成一个字符串。假设我们有一个预处理宏MESSAGE,它接收一个参数,并将这个参数的值转化为一个字符串。下面是一个使用#符号的例子: …

    其他 2023年3月28日
    00
  • yum安装命令的使用方法

    Yum安装命令的使用方法 Yum是一种在Linux系统上用于管理软件包的工具。以下是使用Yum安装命令的详细步骤: 更新软件包列表 在执行安装命令之前,建议先更新软件包列表,以确保安装的软件包是最新的。使用以下命令更新软件包列表: shell sudo yum update 搜索软件包 如果你知道要安装的软件包的名称,可以使用以下命令搜索软件包: shell…

    other 2023年10月13日
    00
  • 用C++实现推箱子小游戏

    用C++实现推箱子小游戏完整攻略 推箱子是一款经典的益智游戏,是许多程序员入门学习游戏开发的练手项目之一。下面我们将讲解如何用C++实现推箱子小游戏的完整攻略。 步骤一:环境搭建 首先,我们需要安装C++的开发环境。推荐使用Visual Studio作为开发工具,可以从官网下载安装。 安装后,打开Visual Studio,创建一个新的空项目。在项目中创建一…

    other 2023年6月26日
    00
  • win7系统电脑提示找不到rundll32.exe应用程序的四种原因和解决方法图文教程

    Win7系统电脑提示找不到rundll32.exe应用程序的四种原因和解决方法 在使用Win7系统电脑时,有时会遇到提示“找不到rundll32.exe应用程序”的情况,这个问题可能会影响电脑的正常使用。本文将详细介绍“找不到rundll32.exe应用程序”的四种原因和解决方法,让您轻松解决这个问题。 原因一:rundll32.exe文件被删除或被破坏 r…

    other 2023年6月25日
    00
  • ASP.NET数据绑定之DataList控件实战篇

    下面是详细的“ASP.NET数据绑定之DataList控件实战篇”的攻略。 前言 DataList控件作为ASP.NET中常用的数据展示控件之一,常用于以列表形式展示数据。数据绑定是使用DataList控件的基础,掌握数据绑定对于使用DataList控件非常重要。本篇攻略主要介绍如何使用ASP.NET实现DataList控件的数据绑定。 准备工作 需要使用V…

    other 2023年6月26日
    00
  • 详解Android Studio正式签名进行调试的实现步骤

    下面是详解Android Studio正式签名进行调试的实现步骤的攻略。 什么是Android Studio正式签名? Android Studio正式签名是将应用程序的发布版本使用数字签名认证,以保证应用的可靠性、完整性和安全性。在发布应用程序时,将使用这个数字签名文件进行签署应用程序,以保证手机应用的安全,防止被篡改。并且在正式发布应用程序时,Googl…

    other 2023年6月26日
    00
合作推广
合作推广
分享本页
返回顶部