热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux用pe大小做逻辑卷,Linux基础知识之逻辑卷管理器(LVM)

逻辑卷管理器(LVM)允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小允许在多个物理设备间重新组织文件系统将设备指定为物理卷用一个或者多个物理卷来创建一个卷组

逻辑卷管理器(LVM)

允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小

允许在多个物理设备间重新组织文件系统将设备指定为物理卷

用一个或者多个物理卷来创建一个卷组

物理卷是用固定大小的物理区域(Physical Extent,PE)来定义的在物理卷上创建的逻辑卷,是由物理区域(PE )组成可以在逻辑卷上创建文件系统

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png1、LVM 介绍

LVM: Logical Volume Manager, Version: 2

dm: device mapper: 将一个或多个底层块设备组织成一个逻辑设备的模块

设备名:/dev/dm-#

软链接:

/dev/mapper/VG_NAME-LV_NAME

/dev/mapper/vol0-root

/dev/VG_NAME/LV_NAME

/dev/vol0/root

2、LVM 更改文件系统的容量

(1)LVM 可以弹性的更改LVM的容量

通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV 的容量,或将其他设备中的PE加到LV中以加大容量

3c8ce6380daa33c267ccb0e2e66a02de.png

(2)LVM的使用

a.查看LVM 的使用情况

点击“系统”-> “管理”-> “逻辑卷管理器”

3c8ce6380daa33c267ccb0e2e66a02de.png

b.增大或减小逻辑卷

打开逻辑卷管理器后,点击“编辑属性”,打开LVM 属性对话框:

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png

c.删除逻辑卷

删除逻辑卷必须先删除LV ,再删除VG ,最后删除PV

点击逻辑卷管理器的“卷组”-> “逻辑视图”的LV 逻辑卷

点击“移除选择的逻辑卷”,再删除VG ,最后删除PV。

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png

3.LVM管理工具

(1)PV管理工具

pvcreate:创建PV

pvcreate /dev/sda{5,6,7,8}

pvs:查询目前系统里面任何具有PV的磁盘

pvdisplay:显示出目前系统上面的PV状态,比pvscan查看的更加详细

pvremove:将PV属性删除,让该分区不在具有PV属性

(2)VG管理工具

VG:Volume Group 卷用户组

创建卷组

vgcreate:创建VG命令

vgcreate -s [mgt]  VG名称  PV名称

-s:后面接PE的大小,单位:mgt  vgcreate -s 16M testvg /dev/sda{5,6,7}

PhysicalDevicePath [PhysicalDevicePath…]

显示卷组

vgs:查找系统上面是否有VG存在

vgdisplay:显示目前系统上面的VG状态

管理卷组

vgextend:在VG内增加额外的PV  vgextend testvg /dev/sda8

vgreduce:在VG内删除PV

vgchange:设置VG是否启动(active)

删除卷组

先做pvmove,再做vgremove

vgremove:删除一个VG

(3)LV管理工具

Logical Volume 逻辑卷

创建逻辑卷

lvcreate:新建LV

lvcreate -L[MGT] -n LV名称 VG名称  or  lvcreate  -l[PE块数·] -n LV名称  VG名称

-L:后面接容量(MGT)必须是PE的倍数,要是不是PE的倍数,系统会自动计算相近的PE的倍数,计算容量稍大于指定的容量

-l:接的是PE的个数也就是后面接多少块PE

-n:后面接的是LV名称

lvcreate -L 256 -n testlv testvg

显示逻辑卷

lvs:查看系统上面的LV

lvdisplay:显示系统上面的LV的状态

删除和增长逻辑卷

lvextend:在LV里面增加容量

lvreduce:在LV里面减少容量

删除逻辑卷

lvremove:删除一个LV

lvremove /dev/VG_NAME/LV_NAME

lvresize:对LV进行容量大小的调整

4、重设文件系统大小

fsadm [options] resize device [new_size[BKMGTEP]]

resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]

resize2fs -f [device] [size]   ext2/ext3/ext4文件系统重定义大小工具

-f:强制进行resize的操作

[device]:设备的文件名

[size]:可以不加,如果加上单位,单位为MG,不指定,默认使用整个分区

eg:   resize2fs /dev/testvg/testlv

5、PE与LE:

PE:Physical Extend 物理扩展快(block)

LE:Logical Extend  逻辑盘区

6、扩展和缩减逻辑卷

扩展逻辑卷:

lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME

resize2fs /dev/VG_NAME/LV_NAME

缩减逻辑卷:

umount /dev/VG_NAME/LV_NAME

e2fsck -f /dev/VG_NAME/LV_NAME

resize2fs /dev/VG_NAME/LV_NAME

[mMgGtT]

lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME

mount

※创建逻辑卷实例

创建物理卷

pvcreate /dev/sdc

为卷组分配物理卷

vgcreate vgtest /dev/sdc

从卷组创建逻辑卷

lvcreate -L 256M -n data vgtest

mke2fs -j /dev/vgtest/data

mount /dev/vgtest/data /mnt/data

7、逻辑卷管理器快照

快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝

对于需要备份或者复制的现有数据集临时拷贝以及其它操作来说,快照是最合适的选择。

快照只有在它们和原来的逻辑卷不同时才会消耗空间。

在生成快照时会分配给它一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间

当原来的逻辑卷中有所改变时,会将旧的数据复制到快照中。

快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据

建立快照的卷大小只需要原始逻辑卷的15% ~20% 就够了。也可以使用lvextend 放大快照。

快照就是将当时的系统信息记录下来,就好像照相一般,若将来有任何数据改动了,则原始数据会被移动到快照区,没有改动的区域则由快照区和文件系统共享。

由于快照区与原本的LV 共用很多PE 的区块,因此快照去与被快照的LV 必须要要在同一个VG 上!系统恢复的时候的文件数量不能高于快照区的实际容量。

※使用LVM 快照

为现有逻辑卷创建快照

lvcreate -l 64 -s -n snap-data -p r /dev/vg0/data

挂载快照

mkdir -p /mnt/snap

mount -o ro /dev/vg0/snap-data /mnt/snap

删除快照

umount /mnt/databackup

lvremove /dev/vg0/databackup

8、LVM的实战:

例1:格式化,挂载 查看LV

mkfs -t ext3 /dev/testvg/testlv     重新创建文件系统,类型ext3 地址为/dev/testvg/testlv

mkdir /mnt/lvm                      创建一个目录为/mnt/lvm

mount /dev/testvg/testlv /mnt/lvm   将新建的文件系统/dev/testvg/testlv挂载到新建的目录/mnt/lvm下

df查看文件整体的使用量

cp -a /etc /var/log /mnt/lvm        将/etc /var/log  复制到/mnt/lvm下

例2:扩大LV的容量

fdisk /dev/sda    n +5G t 8e w   创建格式为linux LVM的磁盘分区

partprobe  系统重新读取磁盘分区(CentOS5和CentOS7使用partprobe,CentOS6使用partx -a /dev/sd#)

fdsik -l查看所有的分区文件信息

pvcreate /dev/sda9将/dev/sda9分区新建为PV

pvscan查看系统上的所有的PV磁盘

vgextend testvg /dev/sda9将/dev/sda9增加到vg下面

vgdisplay查看系统上面的vg状态

lvresize -l +n(数字) /dev/testvg/testlv 对lv进行容量上的大小调整

lvdisplay      查看系统上的lv状态

dumpe2fs /dev/testvg/testlv查看/dev/testvg/testlv的文件属性信息

resize2fs /dev/testvg/testlv        完整的将LV的容量扩充到整个文件系统

df /mnt/lvm                         列出/mnt/lvm的文件使用信息

ls /mnt/lvm查看/mnt/lvm下的内容

例3:缩小LV的容量

注意事项:

(1)不能在线缩减,得先卸载

(2)确保缩减后的空间大小依然能储存原有的所有数据

(3)在缩减之前应该先强行检查文件,以确保文件系统处于一至性的状态

pvdiskplay

pvscan

resize2fs /dev/testvg/testlv 6900M

umount /mnt/lvm

e2fsck -f /dev/testvg/testlv

resize2fs /dev/testvg/testlv 6900M

df /mnt/lvm

例4:LVM的系统快照卷

注意事项:

(1)声明周期为整个数据时长,在这段时长内,数据的增长量不能超出快照卷大小

(2)快照卷应该是只读的

(3)快照卷应该和原卷在同一卷组内

lvcreate -L 50M -n testlv-snap -s -p r /dev/testvg/testlv

原创文章,作者:sjsir,如若转载,请注明出处:http://www.178linux.com/42683



推荐阅读
  • 求助:在CentOS 5.8系统上安装PECL扩展遇到问题
    在 CentOS 5.8 系统上尝试安装 APC 扩展时遇到了问题,具体表现为 PECL 工具无法正常工作。为了确保顺利安装,需要解决 PECL 的相关依赖和配置问题。建议检查 PHP 和 PECL 的版本兼容性,并确保所有必要的库和开发工具已正确安装。此外,可以尝试手动下载 APC 扩展的源代码并进行编译安装,以绕过 PECL 工具的限制。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 在 CentOS 6.4 上安装 QT5 并启动 Qt Creator 时,可能会遇到缺少 GLIBCXX_3.4.15 的问题。这是由于系统中的 libstdc++.so.6 版本过低。本文将详细介绍如何通过更新 GCC 版本来解决这一问题。 ... [详细]
  • 为了在Hadoop 2.7.2中实现对Snappy压缩和解压功能的原生支持,本文详细介绍了如何重新编译Hadoop源代码,并优化其Native编译过程。通过这一优化,可以显著提升数据处理的效率和性能。此外,还探讨了编译过程中可能遇到的问题及其解决方案,为用户提供了一套完整的操作指南。 ... [详细]
  • 在 CentOS 6.5 系统上部署 VNC 服务器的详细步骤与配置指南
    在 CentOS 6.5 系统上部署 VNC 服务器时,首先需要确认 VNC 服务是否已安装。通常情况下,VNC 服务默认未安装。可以通过运行特定的查询命令来检查其安装状态。如果查询结果为空,则表明 VNC 服务尚未安装,需进行手动安装。此外,建议在安装前确保系统的软件包管理器已更新至最新版本,以避免兼容性问题。 ... [详细]
  • 在学习LVM(逻辑卷管理)技术的过程中,我对MD(多设备)、DM(设备映射器)以及逻辑设备和RAID的实现有了深入的理解。LVM2架构主要由DM主模块及其多个子模块组成,其中linear子模块用于创建线性设备,类似于简单的磁盘分区拼接。此外,还探讨了其他子模块如striped、mirror等在提高性能和数据冗余方面的应用。通过实际操作,我掌握了LVM的基本配置和管理方法,能够灵活应对不同存储需求。 ... [详细]
  • 本文详细介绍了如何在 Linux 系统上安装 JDK 1.8、MySQL 和 Redis,并提供了相应的环境配置和验证步骤。 ... [详细]
  • 本文介绍了如何通过安装 rpm 包来使用 resize2fs 和 ext2online 工具进行系统文件的扩容。提供了详细的步骤和注意事项。 ... [详细]
  • 网络爬虫的规范与限制
    本文探讨了网络爬虫引发的问题及其解决方案,重点介绍了Robots协议的作用和使用方法,旨在为网络爬虫的合理使用提供指导。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 本文回顾了作者初次接触Unicode编码时的经历,并详细探讨了ASCII、ANSI、GB2312、UNICODE以及UTF-8和UTF-16编码的区别和应用场景。通过实例分析,帮助读者更好地理解和使用这些编码。 ... [详细]
  • 本文介绍如何在 Android 中自定义加载对话框 CustomProgressDialog,包括自定义 View 类和 XML 布局文件的详细步骤。 ... [详细]
  • 在Delphi7下要制作系统托盘,只能制作一个比较简单的系统托盘,因为ShellAPI文件定义的TNotifyIconData结构体是比较早的版本。定义如下:1234 ... [详细]
  • 开机自启动的几种方式
    0x01快速自启动目录快速启动目录自启动方式源于Windows中的一个目录,这个目录一般叫启动或者Startup。位于该目录下的PE文件会在开机后进行自启动 ... [详细]
  • LVS-DR数据包流向分析介绍
    下文给大家带来LVS-DR数据包流向分析介绍,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍, ... [详细]
author-avatar
李正吉959
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有