LVM 逻辑卷管理

1.pv,vg,lv,pe

pv(physical volume)  物理卷:被处理过的物理分区(物理卷在逻辑卷管理系统最底层,可为整个物理硬盘或实际物理硬盘上的分区)

vg(volume group)  物理卷组 (卷组建立在物理卷上,一卷组中至少要包括一物理卷,卷组建立后可动态的添加卷到卷组中,一个逻辑卷管理系统工程中可有多个卷组)

lv(logical volume) 逻辑卷:建立后可以动态扩展和缩小空间

pe(physical extent)  物理扩展区域:man vgcreate  查看大小的参数-s(物理区域是物理卷中可用于分配的最小存储单元,物理区域大小在建立卷组时指定,一旦确定不能更改,同一卷组所有物理卷的物理区域大小需一致,新的pv加入到vg后,pe的大小自动更改为vg中定义的pe的大小)

lv=pe*n倍,是pe的整数倍

2.LVM建立

2-1.划分物理分区并把分区id修改为8e,划分分区祥见设备分区

Command (m for help): t   ##修改分区id为8e

保存分区,并再次进行手动同步分区表

(强制)格式化设备/dev/vdb

两个命令窗口:一个监控,一个操作

watch -n 1 'pvs;vgs;lvs;df -h /mnt'  ##监控命令

2-2.创建物理卷、卷组、逻辑卷

pvcreate  /dev/vdb1  ##创建物理卷

vgcreate  vg0 /dev/vdb1  ##创建卷组:创建了一个名为vg0的卷组,该卷组包含/dev/vdb1一个物理卷

lvcreate  -L 100M -n lv0 vg0  ##创建逻辑卷:在卷组vg0上创建一个名为lv0的逻辑卷,大小为100M,其设备接口为/dev/vg0/lv0

mkfs.xfs  /dev/vg0/lv0 ##格式化该设备

mount /dev/vg0/lv0  /mnt/  ##挂载设备

步骤:

[root@localhost ~]# pvcreate /dev/vdb1  ##创建物理卷/dev/vdb1

WARNING: xfs signature detected on /dev/vdb1 at offset 0. Wipe it? [y/n] y
  Wiping xfs signature on /dev/vdb1.
  Physical volume "/dev/vdb1" successfully created

[root@localhost ~]# vgcreate vg0 /dev/vdb1 ##创建了一个名为vg0的卷组,该卷组包含/dev/vdb1一个物理卷
  Volume group "vg0" successfully created

[root@localhost ~]# lvcreate -L 300M -n lv0 vg0
  Logical volume "lv0" created

[root@localhost ~]# mkfs.xfs /dev/vg0/lv0

[root@localhost ~]# mount /dev/vg0/lv0 /mnt/

2-3.说明:
  • /dev/vg0/lv0<=>/dev/mapper/vg0-lv0

[root@localhost ~]# ll /dev/vg0/lv0
lrwxrwxrwx. 1 root root 7 May  4 22:58 /dev/vg0/lv0 -> ../dm-0
[root@localhost ~]# ll /dev/mapper/vg0-lv0 lv
ls: cannot access lv: No such file or directory
lrwxrwxrwx. 1 root root 7 May  4 22:58 /dev/mapper/vg0-lv0 -> ../dm-0
[root@localhost ~]#

  • 查看


pvs|pvdisplay  ##查看物理卷情况
vgs|vgdisplay  ##查看卷组情况
lvs|lvdisplay  ##查看逻辑卷情况

3.LVM扩容

lvextend -L 200M /dev/vg0/lv0  ##将逻辑卷的空间增加到200M
xfs_growfs  /dev/vg0/lv0  ##不覆盖原逻辑卷的内容,从而进行扩容
pvcreate  /dev/vdb2  ##创建新的物理卷/dev/vdb2
vgextend  vg0  /dev/vdb2  ##将新的物理卷/dev/vdb2加入到卷组vg0
lvextend -L 600M /dev/vg0/lv0  ##将逻辑卷的空间增加到600M

1.xfs类型扩容

步骤如下:

[root@localhost ~]# lvextend -L 500M /dev/vg0/lv0

Extending logical volume lv0 to 500.00 MiB
  Logical volume lv0 successfully resized

[root@localhost ~]# xfs_growfs /dev/vg0/lv0

[root@localhost ~]# pvcreate /dev/vdb2
  Physical volume "/dev/vdb2" successfully created

[root@localhost ~]# vgextend  vg0 /dev/vdb2
  Volume group "vg0" successfully extended

[root@localhost ~]# lvextend -L 1500M /dev/vg0/lv0
  Extending logical volume lv0 to 1.46 GiB
  Logical volume lv0 successfully resized

[root@localhost ~]# xfs_growfs /dev/vg0/lv0

2.ext4类型扩容

首先卸载/mnt
[root@localhost ~]# umount /mnt/
然后将系统文件类型改为ext4

[root@localhost ~]# mkfs.ext4 /dev/vg0/lv0

更改成功

[root@localhost ~]# lvextend -L 1800M /dev/vg0/lv0
  Extending logical volume lv0 to 1.76 GiB
  Logical volume lv0 successfully resized

[root@localhost ~]# resize2fs /dev/vg0/lv0
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vg0/lv0 is mounted on /mnt; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/vg0/lv0 is now 460800 blocks long.

4.缩减(针对ext4文件系统)

umount /mnt/

e2fsck -f /dev/vg0/lv0   ##扫描
resize2fs  /dev/vg0/lv0  550M  ##缩减文件
lvreduce -L 550M /dev/vg0/lv0  ##缩减设备大小到550M

pvmove  /dev/vdb1 /dev/vdb2

##/dev/vdb1有数据,/dev/vdb2闲置,可将/dev/vdb1上的数据移到/dev/vdb2上,以便于删减vg0中的物理卷/dev/vdb1。

##当/dev/vdb1中没有数据时,可直接缩减,不必做这一操作。

vgreduce vg0  /dev/vdb1   ##将vg0中的/dev/vdb1缩减
pvremove  /dev/vdb1  ##缩减/dev/vdb1

步骤如下:

[root@localhost ~]# umount /mnt/
[root@localhost ~]# e2fsck -f /dev/vg0/lv0

[root@localhost ~]# resize2fs /dev/vg0/lv0 1000M
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/vg0/lv0 to 256000 (4k) blocks.
The filesystem on /dev/vg0/lv0 is now 256000 blocks long.

[root@localhost ~]# mount /dev/vg0/lv0 /mnt/

[root@localhost ~]# lvreduce -L 1000M /dev/vg0/lv0
  WARNING: Reducing active and open logical volume to 1000.00 MiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv0? [y/n]: y
  Reducing logical volume lv0 to 1000.00 MiB
  Logical volume lv0 successfully resized

删减物理卷/dev/vdb1
  • 将/dev/vdb1上的数据移到/dev/vdb2上,以便于删减vg0中的物理卷/dev/vdb1

  • 将/dev/vdb1从vg0中缩减

  • 缩减/dev/vdb1

5.LVM快照

  • 当一个LVM快照创建的时候,仅拷贝原始卷里数据的元数据。
  • 创建的时候,不会有数据的物理拷贝,因此快照的创建几乎是实时的,当原始卷上有写操作执行时,快照跟踪原始卷块的改变,此时原始卷上将要改变的数据在改变之前被拷贝到快照预留的空间里。
  • 创建快照的大小不需要和原始卷一样大,其大小只需要考虑两方面:从快照创建到释放这段时间内,估计块的改变量有多大;数据更新的频率。

注意:当快照的空间记录满了原始卷块变换的信息时,快照会立刻被释放,从而无法使用,导致这个快照无效。

前提:lvm快照所在的vg必须和备份源是同一个,因此我们需要确认备份源的剩余空间,若不足需扩展。

LVM快照的实验步骤及说明:

  • 在挂载时建立文件file{1..9}
  • 再删除/mnt下的所有文件及目录
  • 卸载设备

结果如下图:

  • 查看备份源的剩余空间,不足需扩展,将物理卷/dev/vdb1添加到卷组vg0

  • 成功创建大小为50M快照/dev/vg0/lv0image,快照的大小是备份源的%10左右即可

  • 将快照挂载在/mnt
  • 查看/mnt下是否有文件存在
  • 再删除/mnt下的所有东西
  • 重新卸载/mnt
  • 删除刚才建立的快照/dev/vg0/lv0image

结果如下图:

  • 重新创建一个新的快照/dev/vg0/lv0image
  • 再挂载
  • 查看/mnt下是否有文件存在

结果如下图:

##做完该实验后的操作如下图所示

总结

通过使用lvm的快照我们可以轻松的备份数据,由于快照和源lvm的关系,快照只能够临时使用,不能脱离源lvm而存在;因此做到数据的万无一失,我们可以在快照的基础上进行dd备份或其他备份操作,这样既不会影响原始数据也能够达到备份的需求。

linux——管理系统设备之LVM的管理相关推荐

  1. linux挂载设备类型lvm,linux——管理系统设备之LVM的管理

    LVM 逻辑卷管理 1.pv,vg,lv,pe pv(physical volume)  物理卷:被处理过的物理分区(物理卷在逻辑卷管理系统最底层,可为整个物理硬盘或实际物理硬盘上的分区) vg(vo ...

  2. linux——管理系统设备之磁盘的加密、加密磁盘的挂载及磁盘阵列、配额

    一.磁盘加密 1.磁盘加密 命令祥解: [root@localhost ~]# cryptsetup luksFormat /dev/vdb1  ##对设备/dev/vdb1进行加密 WARNING! ...

  3. linux——管理系统设备之vsftpd服务

    vsftpd服务 前提:在做ftp实验前,修改/etc/sysconfig/selinux中的SELINUX为disabled,修改后需要重启才能生效 1.什么是ftp FTP(File Transf ...

  4. linux实验磁盘管理,从0到1学习网络安全 【Linux实验篇-LVM 磁盘管理】

    简介 Logical Volume Manager 是一种将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中. LVM 调整管理 ...

  5. linux学习笔记之lvm管理

    ############################################# #################lvm管理#################### ########### ...

  6. linux中lvm卷管理

    一.LVM逻辑盘卷管理 (1)简介 LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层, ...

  7. Raid管理、madam、Linux LVM的管理与使用

    一.RaidRAID(独立冗余磁盘阵列) 概念:RAID技术通过把多个硬盘设备组合成一个容量更大.安全性更好的磁盘阵列,并把数据切割成多个区段后分别存放在各个不同的物理硬盘设备上,然后利用分散读写技术 ...

  8. Linux CentOS 8(磁盘设备与硬盘设备的概述与管理)

    Linux CentOS 8(磁盘设备与硬盘设备的概述与管理) 目录 一.项目介绍 二.相关概念 2.1 磁盘设备 2.2 磁盘的接口 2.3 硬盘的设备名称 2.4 文件系统 2.5 RAID独立冗 ...

  9. RedHat Enterprise Linux 5.0之LVM逻辑卷管理

    有关LVM的文章很多,小弟我竭尽全力的把LVM的流程化实验演示出来,还请高手指点 实验环境 1.RedHat Enterprise Linux 5.0 2.四块磁盘/dev/sdb----/dev/s ...

最新文章

  1. 开放式创新改变世界——OpenStack生态系统将重新洗牌
  2. sum 函数'int' object is not callable
  3. poj 2034 Anti-prime Sequences(dfs)
  4. 类脑芯片怎么搞?三星哈佛:直接复制粘贴神经元 | Nature子刊
  5. 【Spring 数据访问终篇】Spring + Hibernate + Mysql
  6. 员外带你读论文:LINE: Large-scale Information Network Embedding
  7. Oracle9i 问题汇总--不断更新中
  8. python not in range1002无标题_Python中偶尔遇到的细节疑问(一):去除列名特殊字符、标准差出现nan、切片索引可超出范围、range步长、众数...
  9. 安全中心登录_放心使用instagram需要做到的5个信息安全设置
  10. java 修饰关键字_java——关键字以及修饰属性
  11. TASKCTL-作业属性总体概述
  12. 电脑桌面提醒事项软件哪些可以定时弹出窗口提醒
  13. 【STM32学习笔记】(7)——STM32时钟系统详解
  14. win ollvm环境_打造舒适搬砖环境,这些是我最想推介的桌面好物
  15. LCD屏的TCON、Source Driver、Gate Driver 、Gamma概念
  16. bam获取序列_如何从BAM文件中提取fastq
  17. 一个好用的软件定时器模块MultiTimer
  18. CSAPP HITICS 大作业 hello's P2P by zsz
  19. 完成对靓号号码的筛选
  20. 3dsmax制作简单小屋

热门文章

  1. 使用js实现时钟效果
  2. ABAP小写金额转大写
  3. SAP 常用业务数据表设计
  4. 关于汽油清洁剂,到底该不该加?
  5. ABAP 获取登陆者的IP地址和主机名
  6. 在Global Object Services (GOS) 中加入自定义项目
  7. android服务绑定音乐播放器,Android开发【04-21求助贴】使用后台服务的音乐播放器...
  8. 的训练过程_【能力模式】能力培养是一个训练过程,掌握三个要点,一个诀窍...
  9. tia v15 添加项目_西门子S7-1500plc与S7-300plcPN/IO设备通信-创建项目
  10. php长脚本,长PHP脚本运行多次