Linux逻辑卷管理
[TOC]
前言:
为了使用LVM,我们需要掌握如何创建及配置LVM的分区。下面会介绍三种创建LVM分区的方式。
简单给大家介绍一下从磁盘装到主机上(磁盘可用),到创建出可供目录挂在的逻辑分区是怎样一个过程。
Linux创建LV逻辑卷流程图:
aaa.png(SATA, PATA, SAS SCSI驱动器都是由/dev/sda, /dev/sdb这样的设备文件表示。)
区分PV/PE/LE/VG/LV等概念:
-
PV(physical volume)物理卷:一个物理卷就是一个分区或磁盘驱动器,被初始化供LVM使用。
-
PE(physical extent)物理区段:一个物理区段是一小段均匀的磁盘空间,物理卷可以分解为许多的物理区段。
-
VG(volume group)卷组:一个卷组就是一个存储池,由一个或多个物理卷组成。
-
LE(logical extent)逻辑区段:每个物理区段关联着一个逻辑区段,这些逻辑区段可以组成一个逻辑卷。
-
LV(logical volume)逻辑卷:一个逻辑卷是卷组的一部分,由逻辑区段组成。逻辑卷可用文件系统格式化,并挂载到任意目录。
创建新分区:
linux 中创建和管理磁盘分区的三个工具:fdisk、gdisk、parted:
-
fdisk:只支持MBR分区
-
gdisk, parted:支持MBR、GPT分区
两种分区类型:MBR和GPT
-
MBR分区最多支持15个数据分区(3个主分区、12个逻辑分区);GPT分区最多支持128个分区。
-
MBR分区最多支持磁盘驱动器2TB;GPT分区最多支持800万TB。
-
使用MBR输入:msdos;使用GPT输入:gpt
三种方式创建新分区的具体步骤:
fdisk 创建新分区的步骤:
## fdisk打开分区
fdisk /dev/sdb
## 进入fdisk操作页面后,可输入以下命令:
## 查看帮助
m
## 创建新分区
n
## 提示需要创建什么类型的分区,输入p选择primary partition
p
## 根据提示选择分区数据的区段:(一般敲回车选择默认)
## 选择分区大小
+500M
## 设置为可引导分区
a
## 查看分区列表
p
## 修改分区系统的标识符
t
## 显示所有可用的分区类型
L
## 保存修改,将修改写入磁盘
w
gdisk 创建新分区:
在磁盘设备/dev/sdc上新建一个500M的分区:
## 打开/dev/sdc分区
gdisk /dev/sdc
## 新建分区
n
## 选择创建第几个分区(直接回车,默认值)
## 选择开始的扇区(直接回车,默认值)
##
parted 创建新分区:
lsblk ##查看系统当前磁盘分区情况
parted /dev/sdb
(parted) help ##查看帮助文档
## 如果是裸盘,需要创建卷标
(parted) mklabel
New disk label type? msdos ## msdos代表MBR分区,gpt代表GPT分区
(parted) mkpart ## 新建分区
Partition type? primary/extended? primary
File system type? {ext2}? xfs
Start? 1MB
End? 500MB
(parted) print ##查看当前所有分区
(parted) rm 4 ##删除一个分区,10是上面print查看到的分区号
(parted) quit ##退出parted程序
如果创建的普通分区:(假设新建的分区为/dev/sdb21)
mkfs.xfs /dev/sdb1
如果创建的交换分区:
则还需要执行以下命令:(假设新建的分区为/dev/sdb2)
mkswap /dev/sdb2
swapon /dev/sdb2
2.3.3 修改分区类型:
将第二个驱动器的第一个分区用作一个lvm分区:
(parted) set
Partition number? 1
Flag to Invert? lvm
New state? [on] / off on
Linux常见文件系统类型:
以下所列举都是日志式文件系统:
| ext3 | rhel 5 默认 |
| ext4 | rhel 6 默认 |
| xfs | rhel 7 默认 |
2.4 文件系统格式化:
假设新建的分区为 /dev/sdb2,两种格式化为xfs的命令如下:
# mkfs -t xfs /dev/sdb2
# mkfs.xfs /dev/sdb2
2.4.1 格式化为其他格式:
# mkfs.ext3 /dev/sdb2
# mkfs.ext4 /dev/sdb2
# mkfswap /dev/sdb2
2.4.2 文件系统检查:
fsck -t xfs /dev/sdb2
3. 逻辑卷管理(LVM)
3.1 新建分区创建lvm步骤:
1. 建立PV(物理卷):
在新建分区(/dev/sdb2)上建立一个新的PV(物理卷):
`pvcreate /dev/sdb2`
2. 建立VG(卷组):
从一个或多个物理卷可以创建一个卷组(VG):
`vgcreate volumegroup_name /dev/sdb2` 或 `vgcreate volumegroup_name /dev/sdb1 /dev/sdb2`
扩展现有卷组:
`vgextend volumegroup_name /dev/sdb2` 或 `vgextend volumegroup_name /dev/sdb1 /dev/sdb2`
3. 建立lvm逻辑卷:
`lvcreate -L 200M volumegroup -n lv_name ##创建一个名为lv_name的大小为200MB的逻辑卷`
4. 扩展lvm逻辑卷:
`lvextend -L +200M /dev/vg_name/lv_name ##将/dev/vg_name/lv_name卷的空间额外扩展200MB`
5. 删除lvm逻辑卷:(可选)
`umount dev/vg_name/lv_name ##卸载此逻辑卷上的文件系统`
`lvremove /dev/vg_name/lv_name ##删除/dev/vg_name/lv_name卷`
6. 重新格式化卷:
```bash
##方法一:使用xfs_growfs 格式化xfs格式的文件系统;使用resize2fs格式化ext2/3/4格式的文件系统
xfs_growfs /dev/vg_name/lv_name
mkfs格式化
mkfs.xfs /dev/vg_name/lv_name
```