Linux基础软件-lvm

2024-08-30 03:44
文章标签 基础 linux 软件 lvm

本文主要是介绍Linux基础软件-lvm,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

Linux进阶部分又分了很多小的部分,我们刚讲完了Linux日常运维。讲的那些东西都算是系统自带的,但是Linux作为一个服务器操作系统,肯定是要安装运行软件来满足我们的业务需要,本章基础软件部分,将从下面几个部分来讲解:

Linux基础软件-软件安装

Linux基础软件-yum(一)

Linux基础软件-yum(二)

Linux基础软件-ntp

Linux基础软件-chrony

Linux基础软件-dns(一)

Linux基础软件-dns(二)

Linux基础软件-nfs

Linux基础软件-lvm(本章节)

Linux基础软件-Selinux&库文件&swap

在Linux硬件部分,我们讲阵列的时候,可以让几个硬盘组合在一起使用,但是他对硬盘有要求。在Linux里面还有其他协议可以让几个硬盘/分区组合在一起使用,并且有更灵活的用法,这就是lvm,那什么是lvm,他主要用途是啥呢?

什么是lvm

LVM(Logical Volume Manager,逻辑卷管理器)是一种在 Linux 系统上管理磁盘存储的高级工具。它允许用户管理和控制存储设备,通过创建逻辑卷(Logical Volumes,LVs)和卷组(Volume Groups,VGs),来更灵活地管理存储空间的分配和使用。

lvm基本概念

物理卷(Physical Volume,PV):物理卷是 LVM 管理的基本单元,通常是一个磁盘分区或整个物理磁盘。物理卷必须先初始化为 LVM 格式才能被 LVM 管理。

卷组(Volume Group,VG):卷组是由一个或多个物理卷组成的逻辑集合。卷组提供了一个抽象层,使得多个物理卷能够被统一管理和分配。

逻辑卷(Logical Volume,LV):逻辑卷是卷组内的虚拟分区,它们可以被格式化成文件系统,并像物理磁盘上的分区一样使用。逻辑卷的大小和数量可以根据需要动态调整。

简单来说就是pv就是原始硬盘,vg就是把几个原始硬盘组合到一起,lv就是把组合到一起硬盘划分出来使用。

创建lvm

1.安装lvm命令

yum install lvm2

2.准备磁盘

#准备了一个裸盘,一个分区
[root@localhost ~]# fdisk -l
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x67aa216a设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    41943039    20970496   83  Linux磁盘 /dev/sdc:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

3.创建pv

#由于sdb1是分区,所以提示需要擦除。
#所以这里用裸盘比较合适
[root@localhost ~]# pvcreate /dev/sdb1
WARNING: ext4 signature detected on /dev/sdb1 at offset 1080. Wipe it? [y/n]: yWiping ext4 signature on /dev/sdb1.Physical volume "/dev/sdb1" successfully created.
[root@localhost ~]# pvcreate /dev/sdcPhysical volume "/dev/sdc" successfully created.

4.创建vg​​​​​​​

[root@localhost ~]# vgcreate myvg /dev/sdb1Volume group "myvg" successfully created
[root@localhost ~]# vgextend myvg /dev/sdcVolume group "myvg" successfully extended
#先创建vg,然后往vg里面加pv或者说磁盘

5.创建lv​​​​​​​

[root@localhost ~]# lvcreate -L 10G -n mylv myvgLogical volume "mylv" created.

6.格式化&挂载

mkfs.ext4 /dev/myvg/mylv
mkdir /test
mount /dev/myvg/mylv /test

​​​​​​​

图片

7.扩容&缩容

注意:这里扩容只是增加lv大小,实际到文件系统还需要再进行操作。另外就是ext4和xfs可以扩容,但是xfs还可以缩容。

无论是缩容lvm还是磁盘需要慎重。​​​​​​​

7.1扩容

[root@localhost ~]# lvextend -L +2G /dev/myvg/mylv
Size of logical volume myvg/mylv changed from 10.00 GiB (2560 extents) to 12.00 GiB (3072 extents).
Logical volume myvg/mylv successfully resized.
 

7.2缩容

[root@localhost ~]# lvreduce -L -2G /dev/myvg/mylv
WARNING: Reducing active and open logical volume to 10.00 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce myvg/mylv? [y/n]: y      
Size of logical volume myvg/mylv changed from 12.00 GiB (3072 extents) to 10.00 GiB (2560 extents).
Logical volume myvg/mylv

总结

1.无论是分区还是磁盘都可以作为lv加入到lvm里面使用,但是原始里面的是数据会丢失。

2.lvm一句话概括就是创建pv,组成vg,然后再分成lv使用。

3.这里只简单写了lvm的基本创建和使用功能,里面还有很多命令并没有讲。

4.在centos7安装过程中,在磁盘分区的时候,如果不对磁盘做任何操作,默认就是以lvm格式安装操作系统。

5.有些分布式系统,对文件系统是有一定要求的,lvm是不满足要求的。

关注微信公众号《运维小路》获取更多内容。

这篇关于Linux基础软件-lvm的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1119703

相关文章

从基础到高级详解Python数值格式化输出的完全指南

《从基础到高级详解Python数值格式化输出的完全指南》在数据分析、金融计算和科学报告领域,数值格式化是提升可读性和专业性的关键技术,本文将深入解析Python中数值格式化输出的相关方法,感兴趣的小伙... 目录引言:数值格式化的核心价值一、基础格式化方法1.1 三种核心格式化方式对比1.2 基础格式化示例

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

Python WebSockets 库从基础到实战使用举例

《PythonWebSockets库从基础到实战使用举例》WebSocket是一种全双工、持久化的网络通信协议,适用于需要低延迟的应用,如实时聊天、股票行情推送、在线协作、多人游戏等,本文给大家介... 目录1. 引言2. 为什么使用 WebSocket?3. 安装 WebSockets 库4. 使用 We

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

Linux查询服务器 IP 地址的命令详解

《Linux查询服务器IP地址的命令详解》在服务器管理和网络运维中,快速准确地获取服务器的IP地址是一项基本但至关重要的技能,下面我们来看看Linux中查询服务器IP的相关命令使用吧... 目录一、hostname 命令:简单高效的 IP 查询工具命令详解实际应用技巧注意事项二、ip 命令:新一代网络配置全

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更