说明
以下所有操作都基于centos6.9
什么是LVM
LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。
LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用。在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行读取,而在LVM中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操作,而是通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作。比如说我增加一个物理硬盘,这个时候上层的服务是感觉不到的,因为呈现给上层服务的是以逻辑卷的方式.
LVM最大的特点就是可以对磁盘进行动态管理。因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据。如果我们新增加了硬盘,其也不会改变现有上层的逻辑卷。作为一个动态磁盘管理机制,逻辑卷技术大大提高了磁盘管理的灵活性。
基本概念
PV(Physical Volume)- 物理卷
物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备.
VG(Volumne Group)- 卷组
卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组.
LV(Logical Volume)- 逻辑卷
逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组。
系统原有磁盘概要
其中/dev/sda1作为系统盘,分配200G
/dev/sdb1, /dev/sdc1, /dev/sdd1作为物理卷
这两部操作在安装系统时已完成
Disk /dev/sda: 600.1 GB, 600127266816 bytes
255 heads, 63 sectors/track, 72961 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: 0x000c7572
Device Boot Start End Blocks Id System
/dev/sda1 * 1 25497 204800000 83 Linux
Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 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: 0x00008e31
Device Boot Start End Blocks Id System
/dev/sdb1 1 243202 1953513472 8e Linux LVM
Disk /dev/sdc: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 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: 0x0009834d
Device Boot Start End Blocks Id System
/dev/sdc1 1 243202 1953513472 8e Linux LVM
Disk /dev/sdd: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 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: 0x000b61b8
Device Boot Start End Blocks Id System
/dev/sdd1 1 243202 1953513472 8e Linux LVM
创建卷组
已/dev/sdb1,/dev/sdc1/,/dev/sdd1作为资源,创建卷组
vgcreate vg_my /dev/sdb1 /dev/sdc1 /dev/sdd1
# 查看卷组
vgs
VG #PV #LV #SN Attr VSize VFree
vg_my 6 0 0 wz--n- 6t 6t
创建逻辑卷
创建的逻辑卷存于/dev/mapper下
lvcreate -L 6t -n lv_ddhome vg_my
# 查看逻辑卷
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_ddhome vg_my -wi-a----- 6.00t
格式化逻辑卷
此处比较耗时,格式化10T左右需要45min
mkfs.ext4 /dev/mapper/vg_my-lv_ddhome
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
671088640 inodes, 2684354560 blocks
134217728 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
81920 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848, 512000000, 550731776, 644972544, 1934917632,
2560000000
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 29 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
创建自定义目录并挂载
mkdir -p /ddhome
mount /dev/mapper/vg_my-lv_ddhome /ddhome
永久生效
在上一步中,重启后挂载的目录将会失效
如果重启生效,则在文件/etc/fstab最后一行添加以下代码
/dev/mapper/vg_my-lv_ddhome /ddhome ext4 defaults 0 2
# 解释
第一列:LVM分区名
第二列:被挂载的目录
第三列:文件系统格式
第四列:挂载的选项,用于设置挂载的参数
常见参数:
auto: 系统自动挂载,fstab默认就是这个选项
defaults: rw, suid, dev, exec, auto, nouser, and async.
noauto 开机不自动挂载
nouser 只有超级用户可以挂载
ro 按只读权限挂载
rw 按可读可写权限挂载
user 任何用户都可以挂载
请注意光驱和软驱只有在装有介质时才可以进行挂载,因此它是noauto
第五列:是否开启备份, 0表示关闭
第六列:fsck磁盘检查设置, /根目录永远是1,其它分区从2开始,数字越小越先检查,
如果两个分区的数字相同,则同时检查.
查看结果
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 193G 2.6G 180G 2% /
tmpfs 20G 0 20G 0% /dev/shm
/dev/mapper/vg_my-lv_ddhome
6T 71M 5.9T 1% /ddhome