Linux LVM卷组管理

2024-01-24 22:59
文章标签 linux 管理 lvm 卷组

本文主要是介绍Linux LVM卷组管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Linux LVM卷组管理

由于传统的磁盘管理不能对磁盘进行磁盘管理,因此诞生了LVM技术,LVM技术最大的特点就是对磁盘进行动态管理。

由于LVM的逻辑卷的大小更改可以进行动态调整,且不会出现丢失数据的情况。

 

一、LVM基本属于介绍

  • 物理存储介质(The physical media)
  • 这里指系统的存储设备:硬盘,如:/dev/hda、/dev/sda等等,是存储系统最低层的存储单元。
  • 物理卷(physicalvolume)
  • 物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。
  • 卷组(Volume Group)
  • LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成。可以在卷组上创建一个或多个“LVM分区”(逻辑卷),LVM卷组由一个或多个物理卷组成。
  • 逻辑卷(logicalvolume)
  • LVM的逻辑卷类似于非LVM系统中的硬盘分区,在逻辑卷之上可以建立文件系统(比如/home或者/usr等)。
  • PV(physical volume,PV)
  • 物理卷,它的文件格式不是ext4这些,而是具有LVM管理功能的LVM格式
  • VG(Volume Group,VG)
  • 卷组,卷组是在PV物理卷的基础上创建的,卷组是由一个或多个物理卷组成的,卷组可以在物理卷PV的基础上扩展和缩小。
  • LV(logical volume,LV)
  • 逻辑卷,在VG的基础上创建,可以进行格式化、可以创建文件系统、可以被挂载。对于用户相当于一个磁盘分区,不过实际上是在VG上逻辑出来的,可以在VG的基础上实现扩展和缩小,扩展的边界是不能超过VG的。
  • PE(Physical Extents)
  • 物理块、PE相当于block块,默认是4M,一个物理卷PV被划分为称为PE(Physical Extents)的基本单元,VG是由这些PE块组成,也是VG可以自由扩展和缩小的关键原因。
  • LE(Logical Extent)
  • 逻辑卷LV也被划分为可被寻址的基本单位,称为LE。在同一个卷组中,LE的大小和PE是相同的,并且一一对应

 

 

分类命令说明示例
PVpvcreate创建物理卷pvcreate /dev/sdb1
PVpvdisplay显示已创建的物理卷的详细信息 
PVpvs显示已创建的物理卷的汇总信息 
PVpvremove删除物理卷pvremove /dev/sdb1
VGvgcreate创建卷组pvcreate vg1 /dev/sdb1 /dev/sdb2 …
VGvgdisplay显示已创建的卷组的详细信息 
VGvgs显示已创建的卷组的汇总信息 
VGvgextend扩展卷组vgextend vg1 /dev/sdb3 …
VGvgreduce收缩卷组vgreduce vg1 /dev/sdb5
VGvgremove删除卷组vgremove vg1
LVlvcreate创建逻辑卷lvcreate -L 1000M -n lv1 vg1
LVlvdisplay显示已创建的逻辑卷的详细信息 
LVlvs显示已创建的逻辑卷的汇总信息 
LVlvresize重设逻辑卷大小lvresize -L 1000M /dev/vg1/lv1
LVresize2fs更新逻辑卷信息(ext4)resize2fs /dev/vg1/lv1
LVlvremove删除逻辑卷lvremove /dev/vg1/lv1
LVxfs_growfs更新逻辑卷信息(xfs)xfs_growfs /dev/vg1/lv1
LVe2fsck检查逻辑卷错误(ext4)e2fsck -f /dev/vg1/lv1
其它参数:
-f 强制创建物理卷,不需要用户确认
-u 指定设备的UUID
-y 所有的问题都回答“yes”
-Z 是否利用前4个扇区
pvcreate
-l 卷组上允许创建的最大逻辑卷数
-p 卷组中允许添加的最大物理卷数
-s 卷组上的物理卷的PE大小
vgcreate
-L 指定逻辑卷的大小,单位为“kKmMgGtT”字节
-l 指定逻辑卷的大小(LE数)
-n 后面跟逻辑卷名 
-s 创建快照
lvcreate

二、实验的操作环境

  • 操作系统:Redhat 7 x64
  • 磁盘:1快/dev/sdb磁盘10G、已创建4个分区、3个主分区各2G、1个扩展分区4G。
  • 如果使用CentOS 7.4默认没有安装支持上述命令的软件包,因此需要提前安装lvm2软件包,具体命令为:yum install -y lvm2

1、创建LVM

【创建过程】

(1)对新磁盘进行分区操作(fdisk); 

(2)逐一变更分区类型为Linux LVM(Hex代码为:8e); 

(3)将物理磁盘初始化为物理卷PV(pvcreate);

(4)将一个或多个物理卷PV转变为一个卷组VG(vgcreate)。

(5)从VG中创建逻辑卷(lvcreate)。

(6)格式化(mkfs.ext4/mkfs.xfs)。

(7)根据实际需要将逻辑卷挂载使用(mount)。

(8)根据需要对磁盘or逻辑卷进行扩展和缩减。

 

1.1、先将创建4个分区、3个主分区各2G、1个扩展分区4G。

# 管理/dev/sdb磁盘
fdisk /dev/sdb# 添加主分区/sdb1 给2G空间
n -> p -> 1 -> 空格 -> +2G # 添加主分区/sdb2 给2G空间
n -> p -> 2 -> 空格 -> +2G # 添加主分区/sdb3 给2G空间
n -> p -> 3 -> 空格 -> +2G # 添加扩展分区/sdb4 给4G空间
n -> e -> 4 -> 空格 -> 空格

1.2、转换分区类型为8e、8e类型为LVM。

# 将主分区1转换为LVM
t  -> 1 -> 8e# 将主分区2转换为LVM
t  -> 2 -> 8e# 将主分区3转换为LVM
t  -> 3 -> 8e

1.3、将物理磁盘分区初始化为物理卷PV

# 为/dev/sdb1分区 创建PV
pvcreate /dev/sdb1# 为/dev/sdb2分区 创建PV
pvcreate /dev/sdb2# 为/dev/sdb3分区 创建PV
pvcreate /dev/sdb3

1.4、将一个或多个物理卷PV转变为一个卷组VG

# 分区/dev/sdb1 /dev/sdb2 整合为一个 VG、命名为 vg1
vgcreate vg1 /dev/sdb1 /dev/sdb2

1.5、从VG中创建逻辑卷。

# 方案1:创建逻辑卷、lvcreate -L 划分大小 -n 逻辑卷名称 卷组名称 
lvcreate -L 1G -n lv1 vg1

# 方案2:创建逻辑卷、通过使用vg的PE大小来分逻辑卷,下面-l 分配了100个PE大小的逻辑卷
lvcreate -l 100 -n lv1 vg1

1.6、格式化逻辑卷、并挂载使用

# 格式化、/dev/vg1/lv1 为卷组创建出的逻辑卷位置
mkfs.ext4 /dev/vg1/lv1# 挂载逻辑卷使用 挂载到 /mnt 目录下
mount /dev/vg1/lv1 /mnt
# 查看逻辑卷的UUID:最后一行就是逻辑卷的信息,把该行的UUID复制出来,不含引号。
命令:blkid
例:/dev/mapper/vg1-lv1: UUID="11262806-d796-4f49-8f08-897181e8ec33"# 编辑fstab: 在最后添加一行,输入如下内容:
# 然后保存退出(:wq),重启后查看结果,如果能正常挂载就没有问题了。
UUID=11262806-d796-4f49-8f08-897181e8ec33 /mnt                    ext4    defaults        0 0
永久生效

1.7、卷组扩容 将/dev/sdb3 添加到 vg1 卷组内

# 将/dev/sdb3 分区添加到vg1卷组内
vgextend vg1 /dev/sdb3

1.8、卷则缩容 将/dev/sdb3 移除 vg1 卷组

命令:pvs
PV VG Fmt Attr PSize PFree
/dev/sdb1 vg1 lvm2 a-- <2.00g 0
/dev/sdb2 vg1 lvm2 a-- <2.00g 0
/dev/sdb3 vg1 lvm2 a-- <2.00g <2.00g
  • 只有PFree等于PSize,也就是说没有被使用的物理卷,还能被列入考虑范围。
  • 根据上面命令的执行结果,只有/dev/sdb5和/dev/sdb6二个可以被移除。
# 将分区/dev/sdb3 移除 vg1 卷组
vgreduce vg1 /dev/sdb3

 1.9、更新逻辑卷状态

# 更新/dev/vg1/lv1逻辑卷状态
resize2fs /dev/vg1/lv1

 

2、彻底删除逻辑卷 

2.1、查看挂载、并取消挂载

# 查看挂载
df -mT
/dev/mapper/vg1-1v1    ext4  2.6M  907M   1% /mnt# 取消挂载
umount /dev/mapper/vg1-1v1

2.2、删除挂在记录

# 删除/etc/fstab 下挂载信息
vim /etc/fstab
...

2.3、删除逻辑卷

lvremove  /dev/mapper/vg1-1v1

2.4、删除卷组

vgremove vg1

2.5、删除物理卷

pvremove /dev/sdb1
pvremove /dev/sdb2

 

转载于:https://www.cnblogs.com/xiangsikai/p/10684828.html

这篇关于Linux LVM卷组管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

软考系统规划与管理师考试证书含金量高吗?

2024年软考系统规划与管理师考试报名时间节点: 报名时间:2024年上半年软考将于3月中旬陆续开始报名 考试时间:上半年5月25日到28日,下半年11月9日到12日 分数线:所有科目成绩均须达到45分以上(包括45分)方可通过考试 成绩查询:可在“中国计算机技术职业资格网”上查询软考成绩 出成绩时间:预计在11月左右 证书领取时间:一般在考试成绩公布后3~4个月,各地领取时间有所不同

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上进行简单的操作,就可以实现全视频的接入及布控。摄像头管理模块用于多种终端设备、智能设备的接入及管理。平台支持包括摄像头等终端感知设备接入,为整个平台提

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

Linux服务器Java启动脚本

Linux服务器Java启动脚本 1、初版2、优化版本3、常用脚本仓库 本文章介绍了如何在Linux服务器上执行Java并启动jar包, 通常我们会使用nohup直接启动,但是还是需要手动停止然后再次启动, 那如何更优雅的在服务器上启动jar包呢,让我们一起探讨一下吧。 1、初版 第一个版本是常用的做法,直接使用nohup后台启动jar包, 并将日志输出到当前文件夹n