linux LVM 管理及创建步

从https://blog.csdn.net/alone_map/article/details/51850381转载

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
  卸载的顺序:先逻辑—卷组—物理卷
  卸载前别忘了备份

猜你喜欢

转载自blog.csdn.net/freshair_x/article/details/80013145
今日推荐