LVM 介绍
LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它的最大用途是可以灵活的管理磁盘容量,
让磁盘可以随意的放大或缩小,便于更好的应用磁盘剩余空间。它由Heinz Mauelshagen在Linux 2.4内核上实现,目前最新版本为:稳定版1.0.5,开发版 1.1.0-rc2,以及LVM2开发版。
Linux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间。普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,
当一个逻辑分区存放不下某个文件时,这个文件因为受上层文件系统的限制,也不能跨越多个分区来存放,所以也不能同时放到别的磁盘上。而遇到出现某个分区空间耗尽时,解决的方法通常是使用符号链接,
或者使用调整分区大小的工具,但这只是暂时解决办法,没有从根本上解决问题。随着Linux的逻辑卷管理功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方便地调整各个分区大小。
简单的讲,LVM就是讲几个物理分区或磁盘通过软件组合在一起,看以来就想一个独立的大磁盘,如果要使用这块大磁盘,就要再将它分割为可以使用的分区,可以在这个可使用的分区上随意
切割、增加或缩小分区容量。我们知道分区上的文件系统受到block(块)的大小限制,同样LVM的磁盘大小也受到PE的限制。
概念:
Physical Volumes物理卷,简称PV
物理卷就是指硬盘分区,是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘)比较,却包含有与LVM相关的管理参数
PV就是一个物理磁盘,首先需要将磁盘分区,将他们的ID设置为LVM类型(8e),让它成为LVM可以使用的磁盘,一块磁盘只有变为PV后才能被LVM使用。
Volume Groups卷组,简称VG
卷组由一到多个物理卷组成。
LVM就是由VG组成,LVM的容量与PE有关,如果使用LVM默认参数,那么一个LVM的最大容量为256G=65534(最大PE数量)*4M(PE默认大小)/1024,对于Linux2.6.x内核,32bit系统最大支持16TB的容量,64bit支持8EB容量
Physical Extend物理扩展
PE是物理卷的基本单元,LVM通过PE的唯一编号进行寻址。PE的大小是可配置的,在建立VG的同时,需要指定PE的值,PE的默认大小为4MB,PE很像VG的块(就像block是文件系统的块一样)。
Logical Volumes逻辑卷,简称LV
LV就是最好载入文件系统的分区,LV是建立在卷组基础上的,卷组是有PV组成的,卷组的基本单元是PE。一个卷组可以划分成一到多个LV。
通过PV的整合,就可以将不同磁盘的多个分去或多块磁盘整合成为一块大磁盘(VG)。然后还可以将VG划分成一到多个LV。
创建LVM过程:
1.首先给Linux添加两块磁盘,每块磁盘10G大小
2.给新添加的硬盘分区fdisk /dev/sdb --> n p -t 8e --> w
3.创建PV:
pvscan
pvcreate /dev/sdb1
pvcreate /dev/sdc1
pvscan
pvdisplay
4.创建VG
vgcreate vg_data /dev/sdb1 /dev/sdc1
#显示卷组信息
vgdisplay
#从卷组移除PV
vgreduce vg_data /dev/sdc1
#向卷组中添加PV
vgextend vg_data /dev/sdc1
5.创建LV
lvcreate -L 10240M -n lv_data vg_data
lvdisplay
6.格式化LV
mkfs.ext4 /dev/vg_data/lv_data
7.挂载LV
mkdir /data
mount /dev/vg_data/lv_data /data
df -h
8.扩展LV
lvextend -L +8192M /dev/vg_data/lv_data
resize2fs -f /dev/vg_data/lv_data
LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它的最大用途是可以灵活的管理磁盘容量,让磁盘可以随意的放大或缩小,便于更好的应用磁盘剩余空间。
简单的讲,LVM就是讲几个物理分区或磁盘通过软件组合在一起,看以来就想一个独立的大磁盘,如果要使用这块大磁盘,就要再将它分割为可以使用的分区,可以在这个可使用的分区上随意切割、增加或缩小分区容量。我们知道分区上的文件系统受到block(块)的大小限制,同样LVM的磁盘大小也受到PE的限制。
Physical Volumes物理卷,简称PV
物理卷就是指硬盘分区,是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘)比较,却包含有与LVM相关的管理参数
PV就是一个物理磁盘或分区,首先需要将磁盘分区,将他们的ID设置为LVM类型(8e),让它成为LVM可以使用的磁盘,一块磁盘只有变为PV后才能被LVM使用。
Volume Groups卷组,简称VG
卷组由一到多个分区或物理卷组成
LVM就是由VG组成,LVM的容量与PE有关,如果使用LVM默认参数,那么一个LVM的最大容量为256G=65534(最大PE数量)*4M(PE默认大小)/1024,对于Linux2.6.x内核,32bit系统最大支持16TB的容量,64bit支持8EB容量
Logical Volumes逻辑卷,简称LV
LV就是载入文件系统的分区,LV是建立在卷组基础上的,卷组是有PV组成的,卷组的基本单元是PE。一个卷组可以划分成一到多个LV
通过PV的整合,就可以将不同磁盘的多个分去或多块磁盘整合成为一块大磁盘(VG)。然后还可以将VG划分成一到多个LV
Physical Extend物理扩展PE
PE是物理卷的基本单元,LVM通过PE的唯一编号进行寻址。PE的大小是可配置的,在建立VG的同时,需要指定PE的值,PE的默认大小为4MB,PE很像VG的块(就像block是文件系统的块一样)
创建LVM过程:
1.格式化和分区
2.创建PV
3.创建VG
4.创建LV
5.格式LV
6.挂载
1.首先给Linux添加两块磁盘,每块磁盘10G大小
2.给新添加的硬盘分区fdisk /dev/sdb --> n p -t 8e --> w
3.创建PV:
pvscan
pvcreate /dev/sdb1
pvcreate /dev/sdc1
pvscan
pvdisplay
4.创建VG
vgcreate vg_data /dev/sdb1 /dev/sdc1
#显示卷组信息
vgdisplay
#从卷组移除PV
vgreduce vg_data /dev/sdc1
#向卷组中添加PV
vgextend vg_data /dev/sdc1
5.创建LV
lvcreate -L 10240M -n lv_data vg_data
lvdisplay
6.格式化LV
mkfs.ext4 /dev/vg_data/lv_data
7.挂载LV
mkdir /data
mount /dev/vg_data/lv_data /data
df -h
8.扩展LV
lvextend -L +8192M /dev/vg_data/lv_data
resize2fs -f /dev/vg_data/lv_dat
无法热插拔磁盘
echo "- - -" > /sys/class/scsi_host/host0/scan
echo "- - -" > /sys/class/scsi_host/host0/scan
//这个 scan 属性支持以"-"作为通配符,如以下命令可以执行让整个
scsi_host 进行重新搜索,这个功能用于调试某些对热挺拔实现不
完善的 SCSI 驱动程序很有用
#cat /proc/scsi/scsi
Host: scsi2 Channel: 00 Id: 00 Lun: 00
Vendor: VMware, Model: VMware Virtual S Rev: 1.0
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi2 Channel: 00 Id: 01 Lun: 00
Vendor: VMware, Model: VMware Virtual S Rev: 1.0
host0处是host1,还是host2,取决于 cat /proc/scsi/scsi 之后的 scsi 驱动器的号。