可伸缩的逻辑卷

什么是逻辑卷?

逻辑卷简称LVM, LVMLinux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性.

 

为什么要使用逻辑卷?

逻辑卷相比于一般的磁盘分区, 具有更高的灵活性。可随时伸缩空间的大小.

 

构建逻辑分区图:

图片4.png

 

逻辑卷概念:

PV(物理卷): 是在Linux Block Devices之上, 用于构建逻辑卷(LVM)的基础。

VG(卷组): 是在PV之上, 用于构建LVM(逻辑卷)的直接设备。

 

模拟构建逻辑卷(LVM)?

1>. 构建PV

a>.查看/dev/sdc的设备

[root@centos 7 ~]# fdisk -l /dev/sdc
Disk /dev/sdc: 214.7 GB, 214748364800 bytes, 419430400 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

b>./dev/sdc整个磁盘做成pv

[root@centos6 ~]# pvcreate  /dev/sdc
  Physical volume "/dev/sdc" successfully created

c>.显示pv

[root@centos6 ~]# pvdisplay 
  "/dev/sdc" is a new physical volume of "200.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdc
  VG Name               
  PV Size               200.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               shaxHn-Zmeb-fw5u-5vv9-UCde-LMcy-aY1dC3

2>. 构建VG

a>. /dev/sdc转化为vg0

[root@centos6 ~]# vgcreate vg0 /dev/sdc
  Volume group "vg0" successfully created

b>. 查看卷组vg0

[root@centos6 ~]# vgdisplay 
  --- Volume group ---
  VG Name               vg0
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  2
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               200.00 GiB
  PE Size               4.00 MiB
  Total PE              51199
  Alloc PE / Size       38400 / 150.00 GiB
  Free  PE / Size       12799 / 50.00 GiB
  VG UUID               GEu8sM-fEzY-z6eo-Xltf-2B1V-hWQO-QQzy8X

3>. VG转化为LVM(逻辑卷)

a>. 创建逻辑分区

[root@centos6 ~]# lvcreate -n lv0 -L 150G vg0
  Logical volume "lv0" created.

注释:lvcreate命令的使用

lvcreate  -n  逻辑卷名字 -L #G/M/K  卷组名

-L  #G/M/K

-l  #   PE的个数

 

b>. 查看逻辑卷:

[root@centos6 ~]# lvdisplay 
   --- Logical volume ---
  LV Path                /dev/vg0/lv0
  LV Name                lv0
  VG Name                vg0
  LV UUID                t4TUyR-vBdE-LmUr-kIWZ-nNwD-L3ub-ZzkKR0
  LV Write Access        read/write
  LV Creation host, time centos6.8, 2016-08-26 05:44:56 +0800
  LV Status              available
  # open                 0
  LV Size                150.00 GiB
  Current LE             38400
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0

4>. 卷组以构建完成, 格式化,挂载使用.

[root@centos6 ~]# mkfs.ext4 /dev/vg0/lv0 
[root@centos6 ~]# vim /etc/fstab

 图片5.png

[root@centos6 ~]# mount -a
[root@centos6 ~]# df -h
Filesystem           Size  Used Avail Use% Mounted on
/dev/sda2             48G  4.2G   42G  10% /
tmpfs                491M     0  491M   0% /dev/shm
/dev/sda1            190M   34M  147M  19% /boot
/dev/sda5            1.9G  3.0M  1.8G   1% /testdir
/dev/mapper/vg0-lv0  148G   60M  140G   1% /mnt/lvm

5>. 缩小逻辑卷

缩小逻辑卷为100G

a>. 缩小逻辑卷为100G

[root@centos6 lvm]# lvreduce -L 100G /dev/vg0/lv0
  WARNING: Reducing active and open logical volume to 100.00 GiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce vg0/lv0? [y/n]: y
  Size of logical volume vg0/lv0 changed from 150.00 GiB (38400 extents) to 100.00 GiB (25600 extents).
  Logical volume lv0 successfully resized.

b>. 查看LVM逻辑卷

  [root@centos6 ~]# lvs
  LV   VG   Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv0  vg0  -wi-a----- 100.00g

c>. 查看文件系统

[root@centos6 lvm]# df -h
Filesystem           Size  Used Avail Use% Mounted on
/dev/sda2             48G  4.2G   42G  10% /
tmpfs                491M     0  491M   0% /dev/shm
/dev/sda1            190M   34M  147M  19% /boot
/dev/sda5            1.9G  3.0M  1.8G   1% /testdir
/dev/mapper/vg0-lv0  148G   60M  140G   1% /mnt/lvm

逻辑卷发生了变化了,但是文件系统的大小并没有发生改变。

 

6>. 如何正确的缩减逻辑卷

如何正确的缩减逻辑卷

a>. umount /mnt/lvm1
b>. e2fsck -f /dev/vg1/lv1
c>. resize2fs /dev/vg1/lv1 50G   //  文件系统缩减为50G
d>. lvreduce -L 50G /dev/vg1/lv1  //  /dev/vg1/lv1这个分区缩减为50G

 

文件系统是在逻辑卷之上, 想要减少文件系统的大小, 首先应该减少文件系统的大小, 然后再减小逻辑卷的大小。

 

7>. 如何正确的扩容逻辑卷?

a>. [root@centos6 lvm1]# lvextend -L 180G /dev/vg1/lv1
b>. [root@centos6 lvm1]# resize2fs /dev/vg1/lv1 180G

c>. 查看逻辑卷

root@centos6 lvm1]# df -h
Filesystem           Size  Used Avail Use% Mounted on
/dev/sda2             48G  4.2G   42G  10% /
tmpfs                491M     0  491M   0% /dev/shm
/dev/sda1            190M   34M  147M  19% /boot
/dev/sda5            1.9G  3.0M  1.8G   1% /testdir
/dev/mapper/vg1-lv1  178G   60M  168G   1% /mnt/lvm1

扩大逻辑卷则没有那么复杂, 只要将逻辑卷扩大了, 然后使用resize2fs同步一下文件系统就ok了。

 

8>. 只要建立逻辑卷底层的卷组足够的话,伸缩逻辑卷都是可以的。但是有时候逻辑卷底层的卷组不够了, 要扩大卷组。

a>. 首先要建立物理卷。

[root@centos6 lvm1]# pvcreate /dev/sda9
  Physical volume "/dev/sda9" successfully created

b>. 然后再扩容逻辑卷

[root@centos6 lvm1]# vgextend vg1 /dev/sda9
  Volume group "vg1" successfully extended

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

(0)
458813466458813466
上一篇 2016-09-01
下一篇 2016-09-01

相关推荐

  • bash的重定向

    一、简介         bash的数据流重定向(redirect)是将程序的执结果重新定向到另一文件或者设备。或者把一文件重定向给一程序作为数据来源。默认情况下,命令的执行结果显示在屏幕上。文件系统中,分为:标准输入,标准输出,错误输出。 二、用法   &n…

    Linux干货 2015-08-11
  • 关于shell脚本基础编程第五篇

                  shellb编程基础第五篇              本章内容:数组 变量:存储单个元素的内存空间数组:存储多个元素的连续的内存空间…

    系统运维 2016-08-24
  • 马哥教育21期网络班—第一周课程+练习

    计算机的组成及功能 根据冯·诺依曼原理 现在计算机有五部分组成 分别是:运算器、控制器、存储器、输入设备和输出设备 现在把运算器和控制器做到一块就是所谓的CPU CPU = 运算器+控制器 存储器:memory 用于存储信息的记忆设备,存储器分为ROM和RAM 编址存储设备 ROM:只读存储器,寻址地址空间的组成部分 RAM:随机存储器 输入和输出设备: 输…

    Linux干货 2016-06-26
  • 开始学习总结的一些基本知识点

       第一VNC软件(面授班课堂用的),这款软件采用C/S架构(client/sever客户端和服务器端)还有VNC协议(virtual Network computing虚拟网络计算)协议。虽说这款软件对网络班没有实际用途,但自己了解下这款软件的构成也是不错的。    第二开始学习需要的虚拟机软件其中包括VMWARE…

    Linux干货 2016-10-29
  • Redis基于Sentinel哨兵高可用方案

    下载最新redis版本,当前最新版本为  2.8.19  2014-12-30 安装redis 首页地址:http://redis.io/ 最新稳定版下载地址: http://download.redis.io/releases/redis-2.8.19.tar.gz # tar -xvf redis-2.8.19.tar.gz # cd…

    2015-03-03
  • 作业用户和组管理

    1、创建用户gentoo,附加组为bin和root,默认shell为 /bin/csh,注释信息为"Gentoo Distribution" 首先来分析下题目,创建一个gentoo用户,那我们这时候就想到了useradd命令,不错,就是这个命令,创建用户gentoo时会默认创建主组gentoo,那么想同时将用户gentoo加到root,b…

    Linux干货 2016-08-03

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-02 11:52

    从原理到实战,有理有据,详略得当,细心亮点颇多,赞