【Linux】磁盘扩容到根目录逻辑卷(LVM)

目录

一、物理卷和逻辑卷

1.物理卷和逻辑卷的区别

 2.在Linux系统中查看所有物理卷的信息

3.在Linux系统中查看所有逻辑卷的信息

二、文件系统

三、实操-对root(/)目录进行扩容 

1.使用lsblk命令查看新加入的磁盘信息

2.fdisk -l命令查看系统中磁盘分区详细信息

3.使用fdisk分区新磁盘,并将分区标记为Linux文件系统类型(83)

4.检查是否分区成功

5.创建物理卷

 6.将磁盘扩容到卷组

7.扩展逻辑分区

8.使其扩展生效(xfs_growfs)

9.验证是否生效

四、物理卷、逻辑卷常用命令

1.物理卷

(1)创建物理卷

(2)显示物理卷信息

(3)扩展物理卷

(4)移除物理卷:

2.逻辑卷

(1)创建逻辑卷:

(2)显示逻辑卷信息:

(3)扩展逻辑卷:

(5)缩小逻辑卷:

(6)移除逻辑卷:


一、物理卷和逻辑卷

1.物理卷和逻辑卷的区别

逻辑卷(Logical Volume)和物理卷(Physical Volume)是Linux系统中LVM(Logical Volume Manager,逻辑卷管理器)概念中的两个重要组成部分。

物理卷是由物理磁盘或分区组成的存储设备。在LVM中,物理卷被组合成一个或多个卷组(Volume Group),以提供更大的存储池。

逻辑卷则是由物理卷划分出来的一部分空间,类似于传统的分区概念。在LVM中,逻辑卷可以跨越多个物理卷扩展,从而允许您更灵活地管理和分配存储空间。

具体来说,LVM的工作流程如下:

  1. 将一个或多个物理卷划分为一个或多个卷组。
  2. 在卷组上创建一个或多个逻辑卷。
  3. 将文件系统格式化为逻辑卷上,然后将其挂载到操作系统上。

 2.在Linux系统中查看所有物理卷的信息

命令:pvdisplay

将显示系统上所有物理卷的信息,包括它们的名称、UUID、总大小等。如果物理卷已经被分配给卷组,则还会显示所属的卷组名称。如下图所示:

在LVM中,物理卷是由物理磁盘或分区组成的。上图中,/dev/vda2 是一个物理磁盘分区,被用作LVM物理卷。该物理卷属于VG(卷组) klas。 

以下是每个字段的含义:

  • PV Name:物理卷的名称。
  • VG Name:物理卷所属的卷组的名称。
  • PV Size:物理卷的总容量。
  • Allocatable:指示物理卷是否可以分配给逻辑卷。
  • PE Size:物理卷的物理扩展大小(通常为4MiB)。
  • Total PE:物理卷中的总扩展数。
  • Free PE:物理卷中当前未分配的扩展数。
  • Allocated PE:物理卷中已分配的扩展数。
  • PV UUID:物理卷的唯一标识符。

3.在Linux系统中查看所有逻辑卷的信息

命令:lvdisplay

将显示系统上所有逻辑卷的信息,包括它们的名称、UUID、大小等。如果逻辑卷已经被格式化为一个文件系统,则还会显示文件系统类型和挂载点。 

参数说明:

  • LV Path:逻辑卷的设备路径,这里是 /dev/klas/swap。
  • LV Name:逻辑卷的名称,这里是 swap。
  • VG Name:属于哪个卷组,这里是 klas 卷组。
  • LV UUID:逻辑卷的唯一标识符。
  • LV Write Access:读写权限,这里为可读写。
  • LV Creation host, time:逻辑卷的创建主机和时间。LV Status:逻辑卷的状态,这里为 available 表示可用。
  • open:当前打开了多少个文件描述符,这里为 2。
  • LV Size:逻辑卷的大小,这里小于 3.92 GiB。
  • Current LE:逻辑卷当前使用的物理区块数。
  • Segments:逻辑卷的段数(由于这里只有一个物理区块,所以只有一个段)。
  • Allocation:分配方式,这里继承自卷组设置。
  • Read ahead sectors:预读区块数,这里设置为自动调整。
  • Block device:逻辑卷对应的块设备文件,这里是 /dev/253:1。

二、文件系统

在Linux中,文件系统是挂载磁盘的重要概念。文件系统是指一种组织数据的方式,可以帮助我们在磁盘上存储和管理文件。常见的Linux文件系统有ext2、ext3、ext4、XFS等。

(1)ext2(第二扩展文件系统):是 Linux 最早引入的日志文件系统之一。它使用索引节点(inode)来管理文件和目录,并使用位图来管理磁盘块的分配。然而,ext2 没有日志功能,这使得在发生意外掉电或系统崩溃时恢复文件系统变得较慢。

(2)ext3(第三扩展文件系统):是 ext2 文件系统的升级版本。它引入了日志功能,使用日志记录(journaling)来跟踪文件系统操作。这样,在系统异常关机后可以更快地进行恢复,减少数据丢失的风险。与 ext2 相比,ext3 提供了更好的可靠性和性能。

(3)ext4(第四扩展文件系统):是 ext3 文件系统的进一步改进和扩展。它增强了文件系统的大小和性能,并支持更大的文件和分区。ext4 引入了多块分配、延迟分配和其他改进,以提高文件系统的性能和可靠性。它是目前最常用的 Linux 文件系统之一。

(4)XFS:是一个高性能的日志文件系统,最初由 SGI 开发。它设计用于处理大型文件和大容量存储,并针对高吞吐量的工作负载进行了优化。XFS 支持快速分配和回收磁盘空间,并具有出色的可扩展性和鲁棒性。它被广泛用于服务器环境和高性能计算领域。

在挂载磁盘之前,我们需要先在磁盘上创建文件系统。创建文件系统的命令为mkfs。

查看系统某个目录使用的文件系统类型,如下图:

举例:查看系统根目录的文件类型:df -T /

并且可以看到根目录挂载卷组(klas)和逻辑分区(root)

三、实操-对root(/)目录进行扩容 

1.使用lsblk命令查看新加入的磁盘信息

上述中我们可以看到vdb就是系统新增的磁盘,并且没有挂载任何目录。 

2.fdisk -l命令查看系统中磁盘分区详细信息

包括磁盘设备名称、分区表类型、起始扇区、结束扇区、总扇区数等。

3.使用fdisk分区新磁盘,并将分区标记为Linux文件系统类型(83)

这里采用对这个磁盘(/dev/vdb)进行分区2个,1一个是100G,一个是200G,并将100G的磁盘大小扩展到 根目录下。

命令:sudo fdisk /dev/vdb

按照命令依次输入:

n  (新建分区)p  (主分区)1  (分区号,即vdb1)[回车]  (默认起始扇区)

+100G  (分区大小)

n  (新建分区)p  (主分区)2  (分区号,即vdb2)[回车]  (默认起始扇区)

+200G  (分区大小)

w  (保存并退出)

具体操作如下:

Command (m for help): n

Partition type

   p   primary (0 primary, 0 extended, 4 free)

   e   extended (container for logical partitions)

Select (default p): p

Partition number (1-4, default 1): 1

First sector (2048-629145599, default 2048):

Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-629145599, default 629145599): +100G

Created a new partition 1 of type 'Linux' and of size 100 GiB.

Command (m for help): n

Partition type

   p   primary (1 primary, 0 extended, 3 free)

   e   extended (container for logical partitions)

Select (default p): p

Partition number (2-4, default 2): 2

First sector (209717248-629145599, default 209717248):

Last sector, +/-sectors or +/-size{K,M,G,T,P} (209717248-629145599, default 629145599):

Created a new partition 2 of type 'Linux' and of size 200 GiB.

Command (m for help): t

Partition number (1,2, default 2): 1

Hex code (type L to list all codes): L

             

Hex code (type L to list all codes): 83

Changed type of partition 'Linux' to 'Linux'.

说明:

n: 创建新分区。出现选择分区类型的提示时,默认选择主分区(primary)。

p: 选择分区类型为 "p",即主分区。

1: 输入分区号码为 "1",表示创建第一个分区,如果不选默认就是1。

First sector: 输入第一个扇区的起始位置,默认值为 2048。你可以保持默认值(按 Enter 键),这样分区将从第一个可用扇区开始。

Last sector: 输入最后一个扇区的位置,可以输入结束位置或者分区大小。默认值为设备的最大扇区数(2048-209715199)。你可以输入具体的扇区数或者可选的单位表示分区大小(如 "100G" 表示 100GB)。根据你的输入,分区大小将为 100 GiB。例如:+100G 就是分区大小100G

t: 更改分区类型。选择分区编号为 1 的分区。

L: 查看当前系统的文件类型。根据前面序号选择。如图:

83: 设置分区类型为 83,表示 Linux 文件系统类型。

w: 保存并写入分区表更改。

最后几行提示分区表已经被修改,并且正在同步磁盘。

4.检查是否分区成功

lsblk

5.创建物理卷

pvcreate /dev/vdb1

 6.将磁盘扩容到卷组

vgextend klas /dev/vdb1

说明:klas是系统有的一个卷组名称,并且它下面有个逻辑卷挂载到了根目录下,因此我们对根目录扩容,还是先将分好的磁盘大小先扩展到对应的卷组上。

7.扩展逻辑分区

说明:这一步就是将上一步加入的100G大小区域进行扩展到我们目前这个根目录的逻辑分区上,可自行选择将扩容到卷组大小的内存分配到逻辑卷中。

lvextend -l+100%FREE /dev/klas/root

/dev/klas/root:是目前系统已经存在的一个逻辑分区,可以用lvdisplay查看

其中100%是将所有的磁盘空间扩容到指定分区,也可以根据需要进行调整比例

也支持指定大小比如10G等等(指定固定值时参数-l需要修改为-L)

8.使其扩展生效(xfs_growfs)

xfs_growfs /dev/klas/root

说明:如果使用ext4文件系统,resize2fs替换xfs_growfs命令.

9.验证是否生效

(1)先检查磁盘使用情况df -h

(2)检查磁盘详细信息 lsblk

上图所示:磁盘root目录扩容成功,由原来的35.1G变成了135.1G,这是和步骤1之前的图片对比得来的结果。 

四、物理卷、逻辑卷常用命令

1.物理卷

(1)创建物理卷

pvcreate 磁盘分区1 磁盘分区2 ...

如:pvcreate /dev/sdb1   # 创建一个名为 /dev/sdb1 的物理卷

(2)显示物理卷信息

pvdisplay    # 显示所有物理卷的详细信息

(3)扩展物理卷

pvresize /dev/sdb1    # 调整 /dev/sdb1 物理卷的大小

(4)移除物理卷:

 pvremove /dev/sdb1    # 移除 /dev/sdb1 物理卷的 LVM 标记

2.逻辑卷

(1)创建逻辑卷:

lvcreate -L 10G -n my_volume my_vg   

# 在名为 my_vg 的卷组中创建一个名为 my_volume 大小为 10G 的逻辑卷.

(2)显示逻辑卷信息:

 lvdisplay             # 显示所有逻辑卷的详细信息

(3)扩展逻辑卷:

 lvextend -L +5G /dev/my_vg/my_volume   # 将名为 my_volume 的逻辑卷扩展 5G

(5)缩小逻辑卷:

 lvreduce -L 5G /dev/my_vg/my_volume    # 将名为 my_volume 的逻辑卷缩小至 5G

(6)移除逻辑卷:

lvremove /dev/my_vg/my_volume          # 移除名为 my_volume 的逻辑卷

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/820340.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

openjudge_2.5基本算法之搜索_1792:迷宫

题目 1792:迷宫 查看提交统计提问 总时间限制: 3000ms 内存限制: 65536kB 描述 一天Extense在森林里探险的时候不小心走入了一个迷宫,迷宫可以看成是由n * n的格点组成,每个格点只有2种状态,.和#,前者表示可以通行后者表示不能通…

git报错

这里写自定义目录标题 git报错Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 有一个原因就是在github上设置对应密钥时,有一个key获取应该设置为…

记录一下联想连接wifi成功但是显示无internet

问题描述 连接热点的话是没有问题的,但是一到校园网就总是掉链子。 目前可以解决的方法 基本上每次出问题都是这几个方法轮询,总有一次可以解决(但是没找到比较好的永久解决的法子 重启网络适配器先连接热点再关掉练校园网重启电脑清除dn…

算法刷题记录 Day47

算法刷题记录 Day47 Date: 2024.04.15 lc 115. 不同的子序列 class Solution { private:const int MOD 1e9 7; public:int numDistinct(string s, string t) {// t为模板串,s为原串;int m t.size();int n s.size();if(m > n) return 0;// dp[i][j] 表示…

【Redis 神秘大陆】005 常见性能优化方式

五、Redis 性能优化 5.1 系统层面的优化 https://github.com/sohutv/cachecloud/blob/main/redis-ecs/script/cachecloud-init.sh initConfig() {# 支持虚拟内存分配sysctl vm.overcommit_memory1# 最大排队连接数设置为 511,一般默认是 128echo 511 >/proc/sy…

男生穿什么裤子最百搭?适合男生穿的裤子品牌测评分享

每个伙伴们想必经常都会选择一些裤子,但现在市面上的裤子品牌也实在太多了,好不容易选到了几件好看的裤子,结果质量却很不好。主要就是因为现在有太多商家为了利润而使用一些舒适性、质量差的面料,那么今天就给大家分享一些质量上…

引导和服务(2)

服务 1.systemd服务的简要介绍 (1)对比5 6 可以解决依赖关系并行启动 (2)按需启动 (3)自动解决依赖关系 负责在系统启动或运行时,激活系统资源,服务器进程和其它进程 2.System…

excel多sheet导出工具类——java

excel多sheet导出工具类 1、多个sheet导出工具类: import org.apache.commons.lang3.StringUtils; import org.apache.poi.hssf.usermodel.*; import org.apache.poi.hssf.util.HSSFColor; import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.user…

操作系统(第五周 第一二堂总结)

目录 回顾 前景知识 概述 定义 进程和线程的关系 进程和线程的区别 线程优缺点 优点: 缺点: 易混概念 线程实现方式 线程的类型: ​编辑 多线程模型: 线程函数 头文件: 线程创建函数: 线…

【团体程序设计天梯赛 往年关键真题 详细分析完整AC代码】L2-003 月饼(贪心) L2-004 这是二叉搜索树吗? (数据结构)

L2-003 月饼 贪心 月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。 注意:销售时允许取出一部分库存。样例给出的…

vscode i18n Ally插件配置项

.vscode文件: {"i18n-ally.localesPaths": ["src/lang"], //显示语言, 这里也可以设置显示英文为en,// 如下须要手动配置"i18n-ally.keystyle": "nested", // 翻译路径格式 (翻译后变量格式 nested&#xff1a…

氟化钡与盐酸反应不

结论:反应 氟化钡 名称   中文名称:氟化钡   英文别名:Bariumfluoride 化学式   BaF2 相对分子质量   175.32 性状   无色透明立方结晶或白色粉末。溶于盐酸、硝酸、氢氟酸和氯化铵溶液,微溶于水。 相对密度4.83。 熔…

MongoDB 使用

1 引用依赖包 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>2 配置文件配置mongodb资料 # MongoDB连接信息 spring.data.mongodb.host 192.168.23.…

C#中的this关键字:详解与使用

在C#编程中&#xff0c;类和对象是构建应用程序的基础。面向对象编程的核心是封装、继承和多态。在类的内部&#xff0c;我们定义了成员变量和成员方法&#xff0c;这些成员变量和方法构成了对象的状态和行为。然而&#xff0c;在类的成员方法中&#xff0c;我们经常需要访问对…

(二)使用VS2022克隆下载C++自制植物大战僵尸游戏教程

植物大战僵尸游戏开发教程专栏地址http://t.csdnimg.cn/uzrnw 本文将介绍如何使用VS2022克隆下载《植物大战僵尸C自制版本》。 Gitee项目地址&#xff1a; Gitee仓库地址https://gitee.com/GITLZ/PlantsVsZombies Github项目地址&#xff1a; Github仓库地址https://github…

linux运行node项目

文章目录 1、安装node2、安装forever node的守护进程3、forever操作3.1 启动相关3.2 停止操纵3.3 重启操作 1、安装node 下载node包&#xff0c;wget node链接进行解压增加配置文件 export PATH$PATH:node解压路径刷新配置文件node -v 查看node版本 2、安装forever node的守护…

我这10年的“搞站”路

我叫老牛&#xff0c;是高中室友给起的&#xff0c;原因很简单&#xff0c;我在8人寝室年龄排第六&#xff0c;四川话“老6”和“老牛”读音相仿。 后来我就把我的qq昵称改成了“L.N.”&#xff0c;我接受了这个称呼&#xff0c;因为自我审视&#xff0c;性格的确有执拗的一面&…

【JS】querySelectorAll和getElementsByClassName

现有一段代码&#xff0c;li的类名均为item&#xff0c;有一按钮可动态添加类名为item的li。 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge…

【C++从练气到飞升】07---内存管理

&#x1f388;个人主页&#xff1a;库库的里昂 ✨收录专栏&#xff1a;C从练气到飞升 &#x1f389;鸟欲高飞先振翅&#xff0c;人求上进先读书。 目录 一、 C/C内存分布 二、 C语言中动态内存管理方式 三、 C中动态内存管理 1. new/delete操作内置类型 2. new和delete操作…

Mongodb入门--头歌实验MongoDB 实验——数据备份和恢复

在实际的应用场景中&#xff0c;经常需要对业务数据进行备份以做容灾准备&#xff0c; MongoDB 提供了备份和恢复的功能&#xff0c;分别是 MongoDB 下的 一、数据备份 任务描述 本关任务&#xff1a;按照编程要求备份数据库。 相关知识 为了完成本关任务&#xff0c;你需要掌…