Linux磁盘管理:LVM逻辑卷的建立及使用

转载 http://www.cnblogs.com/xiaoluo501395377/archive/2013/05/24/3096087.htmlhtml

详细的讲解了Linux的动态磁盘管理LVM逻辑卷的基本概念以及LVM的工做原理,包括LVM中最重要的四个基本点(PE、PV、VG以及LV),这篇随笔将会详细的讲解LVM逻辑卷的建立、使用以及删除.node

1、建立LVM逻辑卷app

咱们经过图文并茂的方式来看看如何建立咱们的LVM,在上一篇随笔中,咱们已经熟悉了LVM的工做原理,首先是要将咱们的物理硬盘格式化成PV,而后将多个PV加入到建立好的VG中,最后经过VG建立咱们的LV。因此咱们第一步就是将咱们的物理硬盘格式化成PV(物理卷)ide

①将物理硬盘格式化成PV(物理卷)  使用的是 pvcreate 命令ui

这里我已经事先虚拟化了3快物理硬盘,每块硬盘的大小为8G,经过 fdisk -l 命令能够查看spa

[root@xiaoluo ~]# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00093d90

   Device Boot      Start         End      Blocks   Id  System/dev/sda1               1         523     4194304   82  Linux swap / Solaris
Partition 1 does not end on cylinder boundary./dev/sda2   *         523        2611    16776192   83  Linux

Disk /dev/sdb: 8589 MB, 8589934592 bytes255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000Disk /dev/sdc: 8589 MB, 8589934592 bytes255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000Disk /dev/sdd: 8589 MB, 8589934592 bytes255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

这里咱们根据上面图所示,咱们先将 /dev/sdb、 /dev/sdc 两块硬盘格式化成PV操作系统

[root@xiaoluo ~]#  successfully created

建立完PV之后,咱们可使用pvdisplay(显示详细信息)、pvs命令来查看当前pv的信息3d

[root@xiaoluo ~]# pvdisplay  "/dev/sdb" is a new physical volume of "8.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb
  VG Name               
  PV Size               8.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               93UEEl-cxBU-A4HC-LNSh-jp9G-uU5Q-EG8LM9   
  "/dev/sdc" is a new physical volume of "8.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdc
  VG Name               
  PV Size               8.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               lH1vul-KBHx-H2C6-wbt1-8AdK-yHpr-bBIul5
   
[root@xiaoluo ~]# pvs
  PV         VG   Fmt  Attr PSize PFree  /dev/sdb        lvm2 a--  8.00g 8.00g  /dev/sdc        lvm2 a--  8.00g 8.00g

经过这两个命令咱们能够看到咱们已经建立好的PV的信息,两个PV都是8G,目前尚未使用,PFree都是8G.code

②建立卷组(VG),并将PV加入到卷组中  经过 vgcreate 命令orm

在建立完PV之后,这时候咱们须要建立一个VG,而后将咱们的PV都加入到这个卷组当中,在建立卷组时要给该卷组起一个名字

[root@xiaoluo ~]#  successfully created

一样,在建立好VG之后,咱们也可使用 vgdisplay 或者 vgs 命来来查看VG的信息

[root@xiaoluo ~]# vgdisplay 
  --- Volume group ---
  VG Name               xiaoluo
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2  // 当前这里有两个PV,分别是咱们的 /dev/sdb 和 /dev/sdc
  Act PV                2
  VG Size               15.99 GiB  // 当前VG的大小
  PE Size               4.00 MiB  // 经过这个咱们也能够看到咱们LVM默认的PE大小就是4M
  Total PE              4094  // 由于VG里面存放的就是各个PV中的PE,因此PE的数量就是VG大小除以默认PE的大小
  Alloc PE / Size       0 / 0   
  Free  PE / Size       4094 / 15.99 GiB
  VG UUID               B8eavI-21kD-Phnm-F1t1-eo4K-wgvg-T5qUbt
   
[root@xiaoluo ~]# vgs
  VG      #PV #LV #SN Attr   VSize  VFree 
  xiaoluo   2   0   0 wz--n- 15.99g 15.99g

③基于卷组(VG)建立逻辑卷(LV)  经过 lvcreate 命令

由于建立好的PV、VG都是底层的东西,咱们上层使用的是逻辑卷,因此咱们要基于VG建立咱们的逻辑卷才行

[root@xiaoluo ~]#  created

经过 lvcreate 命令基于VG建立好咱们的逻辑卷,名字为mylv,大小为2G,一样咱们可使用 lvdisplay 或者 lvs 命令来查看建立好的逻辑卷的信息

[root@xiaoluo ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/xiaoluo/mylv  // 逻辑卷的路径
  LV Name                mylv  // 逻辑卷的名字
  VG Name                xiaoluo  // 逻辑卷所属卷组的名字
  LV UUID                PYuiYy-WpI6-XZB8-IhnQ-ANjM-lcz0-dlk4LR
  LV Write Access        read/write
  LV Creation host, time xiaoluo, 2013-05-23 23:45:08 +0800
  LV Status              available
  # open                 0
  LV Size                2.00 GiB  // 逻辑卷的大小
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto  - currently set to     256
  Block device           253:0
   [root@xiaoluo ~]# lvs
  LV   VG      Attr      LSize Pool Origin Data%  Move Log Cpy%Sync Convert
  mylv xiaoluo -wi-a---- 2.00g

这样子咱们的逻辑卷也就已经建立好了,咱们这个时候再经过 vgs 还有 pvs 命令查看一下咱们的PV与VG的信息

       wz--n- .99g /dev/sdb   xiaoluo lvm2 a--  .00g /dev/sdc   xiaoluo lvm2 a--  .00g .00g

复制代码

咱们发现,当咱们每建立完一个LV时,VG与PV的信息都是时时在变化的,而且咱们建立LV的大小是根据当前VG的大小来决定的,不能超过当前VG的剩余大小!

咱们在上一篇随笔里面有讲过,每建立好一个逻辑卷,都会在 /dev 目录下出现一个以该卷组命名的文件夹,基于该卷组建立的全部的逻辑卷都是存放在这个文件夹下面,咱们能够查看一下

[root@xiaoluo ~]# /dev/xiaoluo/mylv

咱们每建立一个新的逻辑卷,该VG目录下都会多出这么一个设备。

2、格式化并使用咱们的逻辑卷

咱们已经建立好了咱们的PV、VG以及LV,这时候咱们若是要使用逻辑卷,就必须将其格式化成咱们须要用的文件系统,并将其挂载起来,而后就能够像使用分区同样去使用逻辑卷了

[root@xiaoluo ~]# . (-May-== (log== (log== blocks, Stripe width= inodes,  blocks (%) reserved == block  blocks per group, , , , ,  blocks):  days, whichever comes first.  Use tune2fs -c or -i to override.

格式化咱们的逻辑卷之后,就可使用 mount 命令将其进行挂载,咱们将其挂载到 /mnt 目录下

[root@xiaoluo ~]#  /dev/xiaoluo/mylv /~]# /dev/sda2 on ////dev/pts type devpts (rw,gid=,mode=/dev/shm type tmpfs (rw,rootcontext=/proc/sys/fs//var/lib/nfs//dev/mapper/xiaoluo-mylv on /~]# cd /mnt/++found  xiaoluo.txt

咱们看到,咱们的卷组已经挂载好了,而且能够像使用分区同样来对其进行文件操做了。

3、删除逻辑卷

咱们在建立好逻辑卷后能够经过建立文件系统,挂载逻辑卷来使用它,若是说咱们不想用了也能够将其删除掉。

注意:】对于建立物理卷、建立卷组以及建立逻辑卷咱们是有严格顺序的,一样,对于删除逻辑卷、删除卷组以及删除物理卷也是有严格顺序要求的

①首先将正在使用的逻辑卷卸载掉  经过 umount 命令

②将逻辑卷先删除  经过 lvremove 命令

③删除卷组  经过 vgremove 命令

④最后再来删除咱们的物理卷  经过 pvremove 命令

[root@xiaoluo /]#  /dev/xiaoluo/mylv /mnt/
/]#  /mnt//]# ? [y///]#  successfully wiped

此时咱们的刚建立的逻辑卷 mylv,卷组 xiaoluo以及物理卷 /dev/sdb 已经从咱们当前操做系统上删除掉了,经过 lvs、vgs、pvs命令能够查看一下

[root@xiaoluo ////dev/sdc        lvm2 a--  .00g .00g  // sdb物理卷已经没有了,只剩下 sdc物理卷了
相关文章
相关标签/搜索