实战Linux下逻辑卷LVM详细配置之创建、删除、修改

简介:

逻辑卷管理与配置

在配置之前我们想一个问题,Linux我们都知道是一个多用户的模式,当我们前期规划导致我们的硬盘空间不够用的时候,我们一般的情况下是新增加硬盘,然后分区、格式化、然后将规划不合理的磁盘的数据复制过来,然后再重新挂载生效。如果我们多次这样的时候对我们系统管理人员来说是特别麻烦的一件事情。在这样的情况下,LVM就诞生了。

什么是LVM?

LVM中文翻译逻辑卷管理,LVM最大的好处在于可以将多个硬盘整合到一起,让多个硬盘看起来像一个独立的硬盘(VG),然后我们把这个独立的硬盘(VG)可以分割成一小块一小块(LV)这样我们在添加删除硬盘的时候,是不会影响数据的完整性的。

LVM的工作流程:

首先我们先要准备物理介质,底层我们用硬盘、RAID都可以,然后我们在把这些介质硬盘转换成LVM的实体卷轴(PV),然后我们格式化这些PV并且调整他的ID,LVM的ID是“8e”。在fdisk的时候可以通过“t”来查看。我们在创建好PV之后然后来创建VG,什么是VG简单的理解就是把多个PV组合到一起。LVM使用的是4MB的PE区块LVM的LV最多能包含64435区块,我们需要记住的是PE区块是是LVM最小的存储区块。我们把PV创建成VG组之后,然后我们来怎么使用呢?

我们需要把VG组切割成一小块,那么LV是不是随便可以指定大小呢?肯定是不可以的,我们可以通过PE来指定大小,因此LV的大小与PE有关。

LVM的两种工作机制:

线型模式:

线型模式的工作状态是这样的,假如我们我们的VG有两个磁盘A和磁盘B,当磁盘A使用完的时候才会使用磁盘B,线型就是一个使用完在使用另一个磁盘。LVM默认使用的读取方式就是线型模式。

交错模式:

交错模式简单的可以这样理解,一个数据分成两份,一份写入磁盘A一份写入磁盘B,这样的特点速度快,但是没有安全性,一个磁盘坏掉了,另一个磁盘就无法正常工作了。所有这中模式一般在LVM中使用的是不多的,如果要这种特点那么建议使用RAID。

一、实战LVM操作流程;

1、 首先我们新添加磁盘/dev/sdb,然后创建4个1G大的磁盘,并且ID为8e,

clip_image002

2、 磁盘满足了我们来做PV;首先我们使用pvscan来查看系统有没有LVM磁盘,我们使用pvcreate来创建磁盘。Pvdisplay是查看PV的状态,pvremove是移出pv的属性。具体配置如图;

clip_image004

3、 配置完PV我们来创建VG,vgcreate主要是创建VG的命令。Vgscan是查看系统上面是否有VG的存在。Vgdisplay显示系统上VG的状态,vgextend是增加VG内额外的PV,vgreduce是移出VG内的PV,vgchange是设定VG是否激活,vgremove是删除一个VG。图中使用到的命令做过详细介绍,具体操作配置如图:

clip_image006

4、 我们创建了四块PV,然后只要三块PV做成VG了还有一块没有做成VG,下面我们来添加下,使用到的的命令,vgextend,具体如图:

clip_image007

5、 PV和VG创建完成我们来创建LV。

Lvcreate:建立LV分区,lvscan查看系统上的LV,lvdisplay:查看LV状态,lvextend增加LV的容量,lvreduce减少LV的容量,lvremove删除一个lv。Lvrsize调整LV容量大小。

clip_image009

6、 创建完LV之后,我们肯定是无法使用LV文件系统的,那么我们怎么使用呢?首先格式化LV然后在mount挂载,然后看看是否完成,如图所示:

clip_image011

7、 然后整个LVM的逻辑就配置完成了,我们来测试如何增加硬盘,首先增加一个硬盘/dev/sdb10修改成ID8e的格式,首先我们还是先创建PV然后在创建VG,如图所示:

clip_image013

8、 在图中我们能看出来剩余290M,那么我们接下来直接添加290M即可。

clip_image014

9、 如图是我们添加的硬盘的容量,

clip_image015

10、 然后将lv的容量扩展到文件系统中,如图。

clip_image017

11、 查看当前的PV情况,然后我们来卸载硬盘。

clip_image019

12、 然后我们来先设置LV的容量,我们在这里去掉/dev/sdb6的硬盘容量,计算的放是很简单,992*4就可以。需要我们注意的是,不能出现小数点。然后在卸载,正在使用的文件是不能在线移出的。Umount之后我们在线做检查即可”e2fsck”;

clip_image021

13、 然后我们在使用resize2fs来加载到lv里面。然后我们挂载查看,具体如图:

clip_image023

14、 然后我们来降低LV的容量,这里面的-62指的是PV的PE的块(可以通过pvdisplay来查看),然后指定我们的vg和lv的路径。这里会有警告提示,我们按Y就可以。然后我们lvdisplay来查看,LV的大小就是我们刚设置的大小,如图:

clip_image025

15、 第一步:我们把/dev/sdb6上面的数据移动到/dev/sdb10里面。第二步:我们从VG组里面移出/dev/sdb6;第三步:我们从pv里面移出/dev/sdb6,具体如图:

clip_image027

16、 查看测试是否移出。结果如下:

clip_image029



本文转自devilangel 51CTO博客,原文链接:http://blog.51cto.com/devliangel/1091930,如需转载请自行联系原作者


相关文章
|
2天前
|
存储 Java Linux
Linux环境变量配置及常见问题解决方案
Linux环境变量配置及常见问题解决方案
|
4天前
|
域名解析 网络协议 Linux
Linux系统下DNS配置指南
Linux系统下DNS配置指南
17 1
|
4天前
|
Java Linux 网络安全
在Linux上搭建Maven仓库的实战教程
在Linux上搭建Maven仓库的实战教程
18 0
|
5天前
|
Linux
Linux中openvswitch配置网桥详解
Linux中openvswitch配置网桥详解
7 0
|
5天前
|
网络协议 Linux 网络安全
Linux配置SSH允许TCP转发
Linux配置SSH允许TCP转发
12 1
|
8天前
|
NoSQL Linux 程序员
Linux objdump命令:深入解析与实战应用
`objdump`是Linux下的反汇编工具,用于将二进制文件转换为汇编代码,便于理解程序底层。它可以反汇编目标文件、可执行文件和库,支持多种参数,如显示符号表(-t)、反汇编代码(-d)、源代码与汇编混合视图(-S)。在实践中,结合-g编译选项和特定段(-j)反汇编,能辅助调试和分析。使用时注意包含调试信息,选择适当参数,并与其他工具(如gdb)配合使用。
|
10天前
|
Linux Shell 持续交付
Linux下vim的配置
本文介绍了如何对vim进行基础配置,如行号显示、缩进设置等,并推荐了一种自动化部署方案,通过链接下载预配置的vim环境脚本,简化了配置过程,提升开发效率。
21 3
Linux下vim的配置
|
12天前
|
消息中间件 运维 监控
Linux命令lsipc:深入解析与实战应用
`lsipc` (通常指 `ipcs`) 是Linux命令,用于查看系统中的IPC资源,包括消息队列、信号量和共享内存。它显示详细信息,支持过滤,并且需要相应权限。示例用法:显示共享内存(`-m`)、查询消息队列(`-q -i ID`)、查看关联进程(`-m -p`)。注意权限、操作影响及定期监控。结合`ipcrm`等工具可进行更深入管理。
|
19小时前
|
Linux 数据处理 调度
深入探索Linux的renice命令:优化进程优先级
`renice`命令在Linux中用于调整运行进程的优先级,范围-20(最高)至19(最低)。它可以实时改变进程的优先级,无需重启,支持按PID、进程组或用户批量修改。例如,`renice -n 10 -p 1234`将PID为1234的进程优先级设为10。使用时要注意不要滥用高优先级,避免频繁修改,了解系统负载,并记录变更,通常需root权限。
|
19小时前
|
Linux 数据处理 Perl
深入探索Linux的rename命令:文件重命名利器
**Linux的`rename`命令是批量重命名文件的利器,基于正则表达式或Perl,支持预览、交互式确认及多种操作模式。常用示例:用`s/ /_/g`替换空格为下划线,`s/$/.txt/`添加扩展名,`s/\..*//`删除扩展名。使用时注意备份、测试命令、权限和正则表达式知识。**