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  ##将逻辑卷的空间增加到600M1.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,linux——管理系统设备之LVM的管理相关推荐

  1. linux挂载安卓手机,安卓USB设备U盘挂载工具(StickMount Pro)

    安卓USB设备挂载软件(StickMount Pro) 能在多台设备上通过OTG功能自动挂载和卸载USB大容量存储设备,例如Galaxy Nexus.Nexus 7和Nexus 10.当您使用OTG数 ...

  2. linux 挂载分区inode,Linux中分区挂载和LABEL的指定

    让Linux开机就挂载分区,我知道有两种方法,一种是fstab,另一种是rc.local,我比较倾向前一种. 这两种方法各要注意: fstab是在开机时就挂载,所以你要注意是否你的分区位于某个需要特别 ...

  3. linux挂载磁盘分区,Linux 新磁盘分区与挂载

    1.查看未分区的盘 2.新建分区 3.格式化分区(/dev/sdb1) 4.查看磁盘uuid [root@web-node1 ~]# blkid /dev/vdb1 /dev/vdb1: UUID=& ...

  4. linux 挂载网络文件系统,linux 挂载网络文件系统

    网络文件系统介绍 linux NFS 配置步骤 linux NFS 配置步骤 NFS server可以看作是一个FILE SERVER,它可以让你的PC通过网络将远端得NFS SERVER共享出来的档 ...

  5. linux——管理系统设备之LVM的管理

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

  6. linux 挂载32T文件系统,linux Centos下磁盘分区及文件系统创建与挂载(示例代码)

    linux Centos下磁盘分区及文件系统创建与挂载 MBR(Master Boot Record)是传统的分区机制,应用于绝大多数使用BIOS的PC设备. 1.MBR支持32bit和64bit系统 ...

  7. linux挂载硬盘作用,Linux(挂载) mount umount作用

    在Linux中,如果你要使用储存设备 (Mo.硬盘.光驱等) ,就得先将它挂上 (Mount),而当储 存设备挂上了之后,就可以把它当成一个目录来进行访问.挂上一个设备使用mount命令. 在使用mo ...

  8. 【Linux挂载磁盘】Linux系统挂载磁盘详细操作步骤

    近期公司服务运行环境,从Windows服务器切换到了Linux服务器,于是开始了一波操作,整了两天终于整完了,记录一下腾讯云挂载数据盘的过程,因为云磁盘的大小只有600GB,然后就没有进行分区,直接整 ...

  9. linux挂载wondiws目录,linux cifs自动挂载windows硬盘或文件夹

    1.在要挂载的windows系统中找到需要挂载的硬盘或者文件夹,把它设置为共享 例如:在D盘下建立文件夹shared,设为共享 2.在linux系统/mnt目录下创建一个文件夹 #mkdir /mnt ...

最新文章

  1. 我摊牌了,大厂面试Linux就这5个问题
  2. 如何针对CMS系统进行SEO优化_
  3. mysql安装设置数据目录下_Windows下修改MySQL安装目录和MySQL数据目录
  4. Atitit 云计算体系树.docx Atitit 云计算之道 attilax著 艾龙 著 serverless bomb 1. 什么才是云计算的根本特征.. 2 2. 云计算体系 2 3. “云
  5. 【元胞自动机】基于元胞自动机模拟交通流仿真含Matlab源码
  6. 高级会计职称计算机考什么,高级会计师考试要考哪些科目
  7. OPENSSL中RSA私钥文件(PEM格式)解析【一】
  8. 用FPGA产生正弦信号
  9. java工厂模式:简单工厂、工厂方法、抽象工厂(通俗易懂)
  10. 客户分享微信个人号私域流量池养号技巧:外部储蓄号、内部储蓄号应该如何分别运营和养号!...
  11. MT【109】线面角最大时为二面角平面角
  12. 编程小白须知,阿里、百度、华为这些大厂都用什么编程语言?别说不知道!
  13. Python Pathlib 详解
  14. 计算机系统(五):计算机网络和因特网
  15. Nuance“背叛”苹果:应用语音助理Nina能对抗Siri吗?
  16. PHP中的打印LOG信息方式
  17. GSEA文件准备及表达相关性分析(R语言)
  18. 大话设计模式(3)——造物者一般的建造者模式
  19. USB 3.0规范中译本 第5章 机械结构
  20. 五行基础_ywyuan_新浪博客

热门文章

  1. Activity的setResult方法
  2. 浅谈JDBC与ODBC的区别与应用
  3. 在xcode调试断点不能停在代码区的终极解决方案
  4. [转]学习Objective-C: 入门教材
  5. CuteEditor 4.0.7研究
  6. 【Zabbix】 Zabbix表结构说明【转载】
  7. SSE图像算法优化系列八:自然饱和度(Vibrance)算法的模拟实现及其SSE优化(附源码,可作为SSE图像入门,Vibrance算法也可用于简单的肤色调整)。...
  8. 循序渐进Python3(七) -- 2-- 面向对象进阶
  9. 玩玩TCPCOPY+ intercept+mysql-replay-module(未成功)
  10. 阿里云 ubuntu jdk安装及java环境变量设置