当前位置: 首页 > news >正文

Linux逻辑卷管理LVM

系列文章目录

` 提示:仅用于个人学习,进行查漏补缺使用。
1.Linux介绍、目录结构、文件基本属性、Shell
2.Linux常用命令
3.Linux文件管理
4.Linux 命令安装(rpm、install)
5.Linux账号管理
6.Linux文件/目录权限管理
7.Linux磁盘管理/文件系统


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 系列文章目录
  • 前言
    • 一、LVM
    • 二、LVM的管理命令
    • 三、LVM应用实例
      • 案例1:
      • 案例2:扩大卷组,扩展上题datase逻辑卷的大小为10G[上题为5G]
    • 四、小结
        • 在使用Linux中的LVM(逻辑卷管理器)时,有一些注意事项需要考虑,以确保系统的稳定性和数据的安全性。以下是一些关键的LVM使用注意事项:
      • 五、补充:


前言

本章大概内容有:
       LVM、LVM的管理命令、LVM应用实例、案例、小结等

提示:以下是本篇文章正文内容,下面案例可供参考

一、LVM

  • 概述:
    • Linux中的LVM(逻辑卷管理)是一种灵活的磁盘管理系统,它允许用户将一个或多个物理硬盘分区组合成一个逻辑卷,这些逻辑卷可以被格式化为文件系统并用于存储数据。
    • LVM提供了一个抽象层,使得磁盘管理变得更加灵活和高效,用户可以不关心底层硬盘的具体分区布局,而仍能获得所需要的存储空间。
    • 逻辑卷(Logical Volume, LV):逻辑卷是卷组中的一个虚拟分区,它提供了一个文件系统接口。
    • 逻辑卷可以根据需要创建和删除,可以扩展或收缩,而无需重新分区底层的物理硬盘。
    • 首先了解一些相关概念:
      1. 物理(Physical Volume, PV):物理卷是LVM管理的基本存储单元,通常对应一个或多个硬盘分区。物理卷上的空间被划分成固定大小的单元,称为物理 extent。如果想要使用LVM来管理这个分区,可以使用fdisk将其ID改为LVM可以识别的值,即8e。
      2. 卷组(Volume Group, VG):卷组是由一个或多个物理卷组成的逻辑存储池,它可以包含多个逻辑卷。在卷组中,物理 extents 被分配给逻辑卷,但卷组也可以跨多个物理卷扩展,提供了存储空间的集中管理,PV的集合。
      3. 逻辑卷(Logical Volume, LV):逻辑卷是卷组中的一个虚拟分区,它提供了一个文件系统接口。逻辑卷可以根据需要创建和删除,可以扩展或收缩,而无需重新分区底层的物理硬盘。VG中画出来的一块逻辑磁盘

image.png
逻辑卷的产生:
物理磁盘或者磁盘分区转换为物理卷,一个或多个物理卷聚集形成一个或多个卷组,而逻辑卷就是从某个卷组里面抽象出来的一块磁盘空间。

  • ** 为什么要使用逻辑卷:**
    • 业务上使用大容量的磁盘。举个例子,我们需要在/data下挂载30TB的存储,对于单个磁盘,是无法满足要求的,因为市面上没有那么大的单块磁盘。但是如果我们使用逻辑卷,将多个小容量的磁盘聚合为一个大的逻辑磁盘,就能满足需求。
    • 扩展和收缩磁盘。在业务初期规划磁盘时,我们并不能完全知道需要分配多少磁盘空间是合理的,如果使用物理卷,后期无法扩展和收缩,如果使用逻辑卷,可以根据后期的需求量,手动扩展或收缩。
  • ** LVM主要优点**
    • 灵活性:LVM允许动态调整存储空间,用户可以在不重启系统的情况下增加或减少逻辑卷的大小。
    • 冗余性:通过镜像或复制,LVM可以提高数据的可靠性和可用性。
    • 迁移性:逻辑卷可以从一个物理卷组移动到另一个物理卷组,使得存储资源的重新配置变得简单。
    • 快照功能:LVM支持快照功能,允许用户创建一个逻辑卷的只读副本,用于数据备份或测试。

二、LVM的管理命令

image.png

  • 物理卷(Physical Volume,PV)管理命令包括:
    • pvcreate:初始化一个新的物理卷。
    • pvdisplay:显示物理卷的详细信息。
    • pvresize:调整物理卷的大小。
    • pvremove:删除一个物理卷。
    • pvs:显示物理卷的简要信息。
  • 卷组(Volume Group)管理的命令:
    • vgcreate:创建一个新的卷组。
    • vgdisplay:显示卷组的详细信息。
    • vgextend:向卷组添加一个新的物理卷。
    • vgreduce:从卷组中移除一个物理卷。
    • vgremove:删除一个卷组。
    • vgrename:更改卷组的名称。
    • vgs:显示组的简要信息。
  • 逻辑卷管理的命令:
    • lvcreate:创建一个新的逻辑卷。
    • lvdisplay:显示逻辑卷的详细信息。
    • lvextend:扩展逻辑卷到新的大小。这可以增加卷的大小而不更改其卷标。
    • lvreduce:减小逻辑卷的大小。这可以在不丢失数据的情况下减少卷的大小。
    • lvremove:删除一个或多个逻辑卷。
    • lvrename:更改逻辑卷的名称。
    • lvmsize:显示逻辑卷的大小信息。
    • lvscan:扫描所有的LVM卷组,并列出它们的详细信息。

三、LVM应用实例

案例1:

创建一个逻辑卷,请按下列要求创建一个新的逻辑卷︰

  • 创建一个名为datastore的卷组,卷组的大小为20G
  • 逻辑卷的名字为database .所属卷组为datastore,该逻辑卷大小为5G
  • 将新建的逻辑卷格式化为xfs 文件系统,要求系统启动时,该逻辑卷能被开机自动挂载到/database

具体步骤如下:
1.“虚拟机设置”里添加一块50G磁盘(SCSI)
image.png
2.查看系统上是否安装了LVM工具,【rpm -qa | grep lvm】
image.png
如果尚未安装,可以使用系统的包管理器进行安装。例如,CentOS 7 上,您可以使用以下命令安装LVM工 具:

yum install lvm2

image.png
3.查看磁盘使用情况
【**_PS: _**lsblk:用于列出系统中所有的块设备,包括硬盘、SSD、USB等,有助于了解硬件的大小、类型和分区情况】
image.png
可以看出刚刚我们创建的50磁盘为sdb
4.从磁盘中创建两个分区,为接下来的LVM做准备,大小都为10G
image.png
image.png
4.使用lsblk查看是否已创建好
image.png

2.创建物理卷【fdisk /dev/sdb 使用fdisk命令(工具)对/dev/目录下的sdb设备分区】
image.png

3.创建卷组(Volume Group):
卷组是LVM管理的基本单位,它是将一个或多个物理卷(PV)组合起来的存储池。

vgcreate datastore /dev/sdb1 /dev/sdb2     或    vgcreate datastore /dev/sdb{1,2}

这条命令会创建一个名为datastore的卷组,并将/dev/sdb1/dev/sdb2这两个物理卷加入到卷组中。
image.png
4.创建逻辑卷(Logical Volume):
逻辑卷是卷组中的一个虚拟分区,可以格式化它并为应用程序分配空间。

lvcreate -L 5G -n lvdata datastore

这条命令会在datastore卷组中创建一个名为lvdata的逻辑卷,大小为5GB。
image.png
5.格式化逻辑卷:
创建逻辑卷后,需要格式化它以供使用。这里我们使用xfs文件系统作为例子:

mkfs.xfs /dev/datastore/lvdata

用mkfs.xfs命令将/dev/datastore/目录下的lvdata逻辑卷格式化并创建为XFS文件系统
6.挂载逻辑卷,要求逻辑卷能被开机自动挂载到/lvdata

  • 创建database目录
mkdir database

image.png

  • 修改配置文件实现开机自动挂载
vim /etc/fstab

image.png

案例2:扩大卷组,扩展上题datase逻辑卷的大小为10G[上题为5G]

**PS:**因为上题挂载过,需要重启一下(init 6)或者mount -a 自动挂载 /etc/fstab 文件中列出的所有文件系统。

  • 1.增加一个分区使用【fdisk /dev/sdb】

image.png

  • 2.扩大卷组
vgextend datastore /dev/sdb3       ##vgextend命令把/dev/目录下的sda3设备扩展到datastore卷组

image.png

  • 3.扩大逻辑卷5G
lvextend -L +5G /dev/datastore/lvdata		
##lvextend命令把/dev/datastore/目录下的逻辑卷lvdata添加2G

image.png

  • 4.扩张分区建立文件系统
xfs_growfs /dev/datastore/database    

image.png

四、小结

在使用Linux中的LVM(逻辑卷管理器)时,有一些注意事项需要考虑,以确保系统的稳定性和数据的安全性。以下是一些关键的LVM使用注意事项:
  1. 备份元数据:
  • 在对LVM进行任何更改之前,备份LVM的元数据是至关重要的。这可以通过运行 vgcfgbackup -f /path/to/backupfile volume-group-name 命令来完成。
  1. 不要在/boot分区上使用LVM:
  • /boot分区不应该使用LVM,因为这可能会导致启动问题。/boot分区应该是一个非LVM的分区,以便在系统启动时可以快速访问。
  1. 预留空间:
  • 确保为每个卷预留足够的空间,以避免在需要扩展时没有足够的空间。
  1. 避免在根卷上使用快照:
  • 虽然快照是一个非常有用的功能,但在根卷上使用快照可能会导致性能问题。尽量在非根卷上使用快照。
  1. 避免在正在使用中或重要数据所在的卷上调整大小:
  • 尽量避免在不影响系统运行或重要数据的情况下调整卷的大小。如果必须这样做,请确保采取适当的预防措施。
  1. 正确配置卷组和逻辑卷的属性:
  • 在创建卷组和逻辑卷时,确保正确配置它们的大小、RAID级别和其他属性,以满足你的需求。
  1. 监控和维护:
  • 定期检查LVM的状态,监控性能和空间使用情况,并确保所有快照和逻辑卷都处于良好的状态。
  1. 了解LVM的局限性:
  • 尽管LVM提供了许多灵活性,但它也有一些限制。了解这些限制可以帮助避免潜在的问题。
  1. 使用最新的LVM版本:
  • 尽量使用最新的LVM版本,以确保获得最佳性能和最新的功能。
  1. 备份数据:
  • 始终备份重要数据,以便在数据丢失或损坏时能够恢复。

遵循这些注意事项可以帮助确保LVM在Linux系统中的正确和有效使用,从而提高系统的可靠性和数据的完整性。

五、补充:

一些关于LVM的案例实验可以参考:https://blog.csdn.net/qq_34267076/article/details/119889279

相关文章:

Linux逻辑卷管理LVM

系列文章目录 提示:仅用于个人学习,进行查漏补缺使用。 1.Linux介绍、目录结构、文件基本属性、Shell 2.Linux常用命令 3.Linux文件管理 4.Linux 命令安装(rpm、install) 5.Linux账号管理 6.Linux文件/目录权限管理 7.Linux磁盘管理/文件系统 提示&a…...

团队诊断工具TDS

希典梁开广老师引进的团队诊断问卷TDS(Team Diagnostic Survey)是基于卓越团队6个条件模型开发的,是用于诊断团队有效性的测评工具,其建构过程严格遵循心理测量学原理。可以帮助企业觉察团队优劣势,找到提升与发展机会,明确和强化…...

DC-5靶机渗透测试

DC-5靶场 文章目录 DC-5靶场信息收集漏洞发现漏洞利用 --- 日志文件包含漏洞利用 --- 文件包含过滤器链的RCEshell反弹权限提升 信息收集 使用--scriptvuln扫描发现了一个thankyou.php界面 感觉会有问题,前往访问网站信息 漏洞发现 来到thankyou.php界面&#xff…...

16、电科院FTU检测标准学习笔记-基本性能2

作者简介: 本人从事电力系统多年,岗位包含研发,测试,工程等,具有丰富的经验 在配电自动化验收测试以及电科院测试中,本人全程参与,积累了不少现场的经验 ———————————————————…...

MySQL——使用Python操作MySQL

文章目录 安装PyMySQL使用PyMySQL操作MySQL 在Python中操作MySQL数据库时,我们使用较多的库是 PyMySQL,如果你选择使用 PyMySQL库,那么首先需要通过pip安装它。pip install pymysql命令就是用来安装PyMySQL的。 安装PyMySQL 1.打开你的命令行工具&…...

Flink的DataStream状态管理

目录 键控数据流(Keyed DataStream) 键控状态(Keyed State) 值状态(ValueState) 列表状态(ListState) 归约状态(ReducingState) 聚合状态(AggregatingState) 映射状态(MapState) 状态生存时间(TTL) 算子状态(Operator State) 广播状态(Broadcast S…...

Daiqile SQL注入绕过

上源码。 <?php header("Content-type: text/html; charsetutf-8"); require db.inc.php;function dhtmlspecialchars($string) {if (is_array($string)) {foreach ($string as $key > $val) {$string[$key] dhtmlspecialchars($val);}}else {$string str_…...

用Python轻松移除PDF中的注释

PDF文档因其跨平台的兼容性和格式稳定性而备受青睐。然而&#xff0c;随着文档在不同用户间的流转&#xff0c;累积的注释可能会变得杂乱无章&#xff0c;甚至包含敏感或过时的信息&#xff0c;这不仅影响了文档的清晰度和专业性&#xff0c;还可能引发隐私风险。因此&#xff…...

51单片机—串口

一、 串口基本认知 串行接口简称串口&#xff0c;也称串行通信接口或串行通讯接口&#xff08;通常指COM接口&#xff09;&#xff0c;是采用串行通信方 式的扩展接口。串行接口&#xff08;Serial Interface&#xff09;是指数据一位一位地顺序传送。其特点是通信线路简 单&a…...

vue 通过 this.$refs 创建方法i向子组件传参让子组件更新

在Vue中&#xff0c;this.$refs主要用于访问子组件的实例或者DOM元素。通过this.$refs&#xff0c;你可以调用子组件的方法或者访问其数据属性&#xff0c;从而实现子组件的更新。以下是一些使用this.$refs向子组件传参并触发更新的常见方法&#xff1a; 1. 直接调用子组件的方…...

Java设计模式以及代理模式

一、设计模式 1.JAVA六大设计原则 JAVA设计模式提供六个基本原则&#xff0c;分别是&#xff1a; 开闭原则(OCP) - The Open-Closed Principle单一职责原则(SRP) - Single Responsibility Principle里氏替换原则(LSP) - Liskov Substitution Principle依赖倒置原则(DIP) - D…...

Elasticsearch 索引库管理:查询、修改与删除

Elasticsearch 是一个高度可扩展的开源全文搜索和分析引擎&#xff0c;它允许用户通过 RESTful API 进行数据的索引、搜索、更新和管理。在 Elasticsearch 中&#xff0c;索引库&#xff08;Index&#xff09;是存储数据的基本单元。本文将介绍如何查询、修改和删除 Elasticsea…...

视频大怎么压缩小?分享3种视频压缩方法

视频大怎么压缩小&#xff1f;视频文件过大时&#xff0c;压缩视频不仅能帮助我们节省宝贵的存储空间&#xff0c;使其更容易在有限容量的设备中保存&#xff0c;还能显著提升传输效率&#xff0c;特别是在网络条件有限或需要快速分享视频内容的场合。通过专业的压缩工具&#…...

springboot项目搭建集成 redis/跨域/远程请求

目录 一&#xff0c;创建maven项目 1&#xff0c;左上角file > new > maven project 2&#xff0c;next 到 创建 Group id 和 Artifact id​编辑​编辑 二&#xff0c;配置springboot 1&#xff0c;配置pom文件&#xff0c; 2&#xff0c;创建启动类 3&#xff…...

lvs详解及实例配置

目录 1.什么是负载均衡 1.1为什么用负载均衡 1.2.负载均衡类型 1.2.1.四层负载均衡 1.2.2.七层负载均衡 1.3 四层和七层的区别 2.LVS介绍 2.1LVS 的优势与不足 2.2LVS 核心组件和专业术语 3.ipvsadm命令 4.LVS集群中的增删改 4.1.管理集群服务中的增删改 4.2.管理集…...

DAY41-动态规划-买卖股票

LeetCode121. 买卖股票的最佳时机 public int maxProfit(int[] prices) {//dp数组含义&#xff1a;0为持有该股票&#xff0c;1为不持有该股票int[][] dp new int[prices.length][2];dp[0][0]-prices[0];dp[0][1]0;for(int i1;i<prices.length;i) {dp[i][0]Math.max(dp[i-…...

【C#】StringComparer

什么是“文化” 在 .NET 中&#xff0c;“文化”&#xff08;Culture&#xff09;指的是与语言、地区、和区域设置相关的特定信息集合。这些信息包括了日期和时间的格式、数字的表示方式、货币符号、字符串比较规则等等。文化的概念在软件开发中特别重要&#xff0c;因为应用程…...

阿里云服务器远程登录问题解决指南

前言 在使用阿里云服务器时&#xff0c;可能会遇到无法通过密码进行远程登录的情况。这种情况通常是因为操作系统默认禁用了密码登录功能。本文将介绍如何解决这一问题&#xff0c;确保能够顺利地通过密码进行远程登录。 问题描述 当尝试通过Workbench进行密码登录时&#x…...

Datawhale X 魔搭 AI夏令营(2024第四期)AIGC方向 学习笔记

粗谈 这一期是使用可图lora微调进行文生图任务的比赛 文生图也算是跨模态了&#xff0c;输入Prompt文本&#xff0c;输出图片。Prompt很重要&#xff0c;分为prompts和negative prompts。可以指导结果图片的生成。 lora可以参考我上期夏令营的文章:Datawhale AI 夏令营&…...

VScode前端环境搭建

前言 VScode是企业中最常用的前端开发工具&#xff0c;本文描述如何利用VScode搭建前端开发环境 一、安装VScode 下载Vscode 点击前往下载页面 安装 安装时一直点击下一步即可 二、环境配置 1&#xff09;更改语言 点击拓展搜索Chinese后下载第一个&#xff0c;下载完后…...

微信小程序之bind和catch

这两个呢&#xff0c;都是绑定事件用的&#xff0c;具体使用有些小区别。 官方文档&#xff1a; 事件冒泡处理不同 bind&#xff1a;绑定的事件会向上冒泡&#xff0c;即触发当前组件的事件后&#xff0c;还会继续触发父组件的相同事件。例如&#xff0c;有一个子视图绑定了b…...

51c自动驾驶~合集58

我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留&#xff0c;CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制&#xff08;CCA-Attention&#xff09;&#xff0c;…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

关于 WASM:1. WASM 基础原理

一、WASM 简介 1.1 WebAssembly 是什么&#xff1f; WebAssembly&#xff08;WASM&#xff09; 是一种能在现代浏览器中高效运行的二进制指令格式&#xff0c;它不是传统的编程语言&#xff0c;而是一种 低级字节码格式&#xff0c;可由高级语言&#xff08;如 C、C、Rust&am…...

分布式增量爬虫实现方案

之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面&#xff0c;避免重复抓取&#xff0c;以节省资源和时间。 在分布式环境下&#xff0c;增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路&#xff1a;将增量判…...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容&#xff08;一&#xff09;CDN 基础概念1. 定义2. 组成部分 &#xff08;二&#xff09;CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 &#xff08;三&#xff09;CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

中医有效性探讨

文章目录 西医是如何发展到以生物化学为药理基础的现代医学&#xff1f;传统医学奠基期&#xff08;远古 - 17 世纪&#xff09;近代医学转型期&#xff08;17 世纪 - 19 世纪末&#xff09;​现代医学成熟期&#xff08;20世纪至今&#xff09; 中医的源远流长和一脉相承远古至…...

uniapp手机号一键登录保姆级教程(包含前端和后端)

目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号&#xff08;第三种&#xff09;后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...

R 语言科研绘图第 55 期 --- 网络图-聚类

在发表科研论文的过程中&#xff0c;科研绘图是必不可少的&#xff0c;一张好看的图形会是文章很大的加分项。 为了便于使用&#xff0c;本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中&#xff0c;获取方式&#xff1a; R 语言科研绘图模板 --- sciRplothttps://mp.…...