LVM逻辑卷管理

LVM逻辑卷管理

LVM全称为Logical VolumeManager逻辑卷管理器,LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。
其中
PV:Physical Volume 物理卷
VG:volume Group 卷组
LV:Logincal Volume 逻辑卷

LVM逻辑卷管理0

实验

1、创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录;
2、新建用户archlinux,要求其家目录为/users/archlinux,而后su切换至archlinux用户,复制/etc/pam.d目录至自己的家目录;
3、扩展testlv至7G,要求archlinux用户的文件不能丢失
4、收缩testlv至3G,要求archlinux用户的文件不能丢失;
5、对testlv创建快照,并尝试基于快照备份数据,验正快照的功能;

实验环境

先将/dev/sdb下的sdb1、sdb2、sdb3、转换成LVM格式

1

创建逻辑卷

1、使用pvcreate 命令将刚刚的partition创建成PV
2、然后查看逻辑信息

2

创建VG

1、创建一个VG使用命令vgcreate
-s 指定PE的大小
[root@localhost ~]# vgcreate -s 16M testvg /dev/sdb{1,2}
2、使用vgdisplay查看

3

创建大小为5G的逻辑卷testlvLV,挂载至/users目录

1、lvcreate -L #[mMgGtT] -n NAME VolumeGroup
[root@localhost ~]# lvcreate -L 5G -n testlv testvg
[root@localhost ~]# lvdisplay testvg
  --- Logical volume ---
  LV Path                /dev/testvg/testlv
  LV Name                testlv
  VG Name                testvg
  LV UUID                22XRmQ-irS7-3fZF-XDi6-j6ox-o9Eh-44daVo
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2017-08-15 20:09:39 +0800
  LV Status              available
  # open                 0
  LV Size                5.00 GiB
  Current LE             320
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:3

2、想要使用LVM就要对LV进行格式化挂载
[root@localhost ~]# mkfs -t ext4 /dev/testvg/testlv
[root@localhost ~]# mkdir /users
[root@localhost ~]# mount /dev/testvg/testlv /users

  4

新建用户archlinux

[root@localhost ~]# useradd -d /users/archlinux archlinux
[root@localhost ~]$ su - archlinux
[root@localhost ~]$ cp -r /etc/pam.d .

扩展testlv至7G,要求archlinux用户的文件不能丢失

[root@localhost ~]# lvextend -L 7G /dev/testvg/testlv 
[root@localhost ~]# df -l      # ==显示/dev/mapper/testvg-testlv     5.0G  138M  4.6G   3% /users
[root@localhost ~]# resize2fs /dev/testvg/testlv    #使用resize2fs命令使得扩容的空间实际增加

收缩testlv至3G,要求archlinux用户的文件不能丢失;

[root@localhost ~]# umount /dev/testvg/testlv  #第一步,先取消挂载
[root@localhost ~]# e2fsck -f /dev/testvg/testlv  #第二步,使用e2fsck强制检测修复
[root@localhost ~]# resize2fs /dev/testvg/testlv 3G    #第三步,将目标lv缩至3G
[root@localhost ~]# lvreduce -L 3G /dev/testvg/testlv  #第四步,将目标lv缩小至3G
[root@localhost ~]# mount /dev/testvg/testlv /users  #第五步,重新挂载
注意! 收缩完的空间必须要能够容纳已有文件的大小

对testlv创建快照,并尝试基于快照备份数据,验正快照的功能

[root@localhost ~]# lvcreate -L 1G -s -n test /dev/testvg/testlv

  

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

(0)
N27_flypigN27_flypig
上一篇 2017-08-14 21:28
下一篇 2017-08-15 09:47

相关推荐

  • 关于大型网站技术演进的思考(十)–网站静态化处理—动静整合方案(2)

    原文出处: 夏天的森林    上篇文章我简要的介绍了下网站静态化的演进过程,有朋友可能认为这些知识有点过于稀松平常了,而且网站静态化的技术基点也不是那么高深和难以理解,因此它和时下日新月异的web前端技术相比,就显得不伦不类了。其实当我打算写本系列的之前我个人觉得web前端有一个点是很多人都知道重要,但是有常常低估它作用的,那就…

    2015-03-11
  • 来到马哥的第一天

    找到马哥之后的故事

    Linux干货 2018-03-26
  • 显示历史命令时间

        历史命令中默认是不显示时间的,如果我们想要在使用history命令时显示时间可以通过设置环境变量来实现。     HISTTIMEFORMAT变量的具体参数与date命令中的类似,可以参数date命令的对日期时间格式时行修改。    &nbs…

    Linux干货 2015-05-02
  • 如何成为一名软件架构师

    Daniel Mohl是一名专业的软件工程师/架构师,他的兴趣包括理解各种复杂的编程语言、企业应用架构以及如何搭建业务与技术,他通晓F#、C#、CoffeeScript、JavaScript、Erlang、ASP.NET、MVC、WPF、WCF、Sliverlight、SQL Server等技术。有着多年的软件开发经验。 他经常会被一些有潜力和有前途的程序员…

    Linux干货 2016-03-22
  • 马哥教育N22期第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 root@xuc-virtual-machine:/home/xuc# cp -r /etc/skel/ /home/tuser1 root@xuc-virtual-machine:/…

    Linux干货 2016-09-06
  • 一键搭建mysql集群系列二

    mysql 5.7  主从复制 本节是在上一节的基础之上做的操作,上节我们通过脚本实现了一键自动化安装mysql5.7,这次我们要在三台机器上部署msyql5.7,并实现主从复制,实现的宗旨是,能自动化,就尽量自动化,实在不能自动化,那就手工化 用的脚本和文件说明1.install_mysql.sh 自动化安装mysql脚本2.ntpdate.sh 时间同步…

    2017-05-21