您的位置:首页 > 运维架构 > Linux

linux LVM 管理及创建步骤

2016-07-07 12:56 441 查看
LVM:逻辑分区管理,可基于动态的扩展缩小硬件设备的使用空间。

概念:pv、VG、lv

pv(物理卷,有pp基本单位构成):物理磁盘

VG(卷组,由pv基本单位构成):一个或多个物理磁盘(容量)的集合

lv(逻辑卷,由lp基本单位构成):VG下划分出来的使用分区(空间)

fs:file system 文件系统硬件设备的一个属性

设备文件:硬件文件,如一块硬盘、一块U盘、一个(硬盘)分区等。当将他们格式化的时候就是选择把他们格式成那种文件系统属性(在windows里有fat32、NTFS等,在linux里有ext2、ext3,unix里有jfs、jfs2等)

 

linux是直接将硬件设备文件在dev下显示出来,并将其mount到某个地方(某个目录)才能使用,就是将这个硬件设备(比如磁盘或者磁盘的一个分区的容量)分配给了一个或者多个目录使用。

/分区下的目录是因为linux和unix的目录结构所致,与层级关系没有直接关系,比如你有2快SCSI硬盘,在dev下就是sda(主分区就是sda1-sda3,sda5开始时扩展分区,sda4就是sda5、sda6等扩展分区的集合类似windows)和sdb(同sda分区),你将sda的空间分配(挂载)给了/目录,而将sdb的空间分配(挂载)给了/oracle(/目录下的oracle目录)这个目录,虽然oracle的目录结构是/oracle,在“/”目录下,但是空间确实sdb的空间和"/"目录使用的sda空间没有任何关系,坏了也不会影响到“/”目录。反过来“/”坏了不影响/oracle目录。

 

LVM管理是基于Unix的,在IBM的小机AIX上常用。可以动态的管理硬件设备空间

整个思路:在一个Unix或者linux系统中,有硬件设备称之为PV,而将PV的空间集合在一个就形成了VG,在VG中划分出多个lv分区(如同windows里的C、D、E等分区)挂载到多个目录中使用(lv与目录是一一对应的关系),可以在VG中动态的调整这些lv的容量,只要vg有空间,那么在vg下的所有lv就可以随意的扩大容量,直到vg的容量满了,vg的容量满了可以在vg中添加pv增加vg的容量

unix中:df -g 用来查看lv

linux中:df -h 用来查看lv

 

步骤:1.创建pv—2.创建vg—3.将pv加入vg—4.在vg中创建lv—5.将lv分区格式化—6.将lv分区挂载到某个目录使用

 

创建PV 

[root@z1~]# pvcreate /dev/sdb1           创建pv /dev/sdb1 将SCSI第二块硬盘的第一个主分区做成pv

[root@z1~]# pvcreate /dev/sdc1           。。。将SCSI第三块硬盘的第一个主分区做成pv(linux操作系统应该在第一个硬盘中)

查看PV

[root@z1~]# pvdisplay

创建卷组VG

[root@z1~]# vgcreate datavg /dev/sdb1  /dev/sdc1     创建名为datavg 的卷组,将/dev/sdb1和/dev/sdc1两个pv加入到这个卷组

查看VG

[root@z1~]#vgdisplay

创建逻辑卷LV

[root@z1~]# lvcreate –L 40G –n lv1 datavg   在datavg中创建一个大小40G,名为lv1的逻辑卷

查看LV

[root@z1~]# lvdisplay

LV格式化成ext3文件格式

[root@z1~]# mkfs .ext3 /dev/datavg/lv1       将lv1格式化成ext3文件系统类型

[root@z1~]# partprobe                        在不重新启动机器的情况下系统能够识别这些分区

 

创建目录

[root@z1~]# mkdir /oracle

挂载

[root@z1~]# mount /dev/datavg/lv1  /oracle       将lv1挂载到/oralce目录

 

查看容量 Ls –lh

 

对挂载的逻辑卷进行扩容

[root@z1~]# lvextend –L +50M /dev/rootvg/lv1     将lv扩容50M(datavg有50M空间的前提下) 

查看分区使用情况 [root@z1~]# df –h

查看磁盘使用情况 fdisk -l

 

对lv1进行在线(动态)扩容

[root@z1~]#resize2fs /dev/datavg/lv1         

#resize2fs是ext2文件系统大小的调整工具,ext3只是多了journal的ext2,也可以用。

 

对为挂载的逻辑卷进行扩容

[root@z1~]#lvextend –L +70M /dev/datavg/lv1       给lv1增加70M(70从datavg中来) 

[root@z1~]#e2fsck –f /dev/datavg/lv1              强制检查ext2、ext3、ext4等文件系统的正确性(清理磁盘碎片,让数据不分散,这个在缩小LV的时候至关重要)

[root@z1~]#lvdipaly

  

对VG进行扩容(一) 

[root@z1~]# pvcreate /dev/sdb2                     创建pv /dev/sdb2

[root@z1~]# vgextend datavg /dev/sdb2              将/dev/sdb2这个pv加入卷组datavg

对VG进行扩容(二)

[root@z1~]# pvcreate /dev/sdb2                     创建pv /dev/sdb2

[root@z1~]# pvcreate /dev/sdc3                     创建pv /dev/sdb3

[root@z1~]# vgcreate datavg /dev/sdb2              创建datavg(里面是/dev/sdb2)

[root@z1~]# vgcreate rootvg /dev/sdc3              创建rootvg(里面是/dev/sdb3)

[root@z1~]# vgmerge rootvg datavg                  将rootvg与datavg整合到rootvg

  卸载卷的方法:

  卸载物理卷:pvremove PVDEVICE

  卸载卷组:vgremove VGNAME

  卸载逻辑卷:lvremove LVDEVICE

  卸载的顺序:先逻辑—卷组—物理卷

  卸载前别忘了备份
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: