LVM逻辑卷
分区的优点:
- 优化读写性能
- 实现磁盘空间配额限制
- 提高修复速度
- 隔离系统和程序
- 安装多个OS
- 采用不同文件系统
分区的缺点:
- 只能使用一块硬盘的空间
- 如果过分区必须是连续的空间
- 如果一旦分区不能改变大小(不能随意改变大小,删除分区会造成数据丢失)
什么是逻辑卷
将硬盘拆分成最小单位PE,然后组成逻辑卷
建立逻辑卷
- .要有物理磁盘:物理卷(分区 可以是一整块硬盘)
- 将多个物理卷组合成 卷组的容量是从物理卷中提取
- 建立逻辑卷的容量是从卷组当中提取
/dev/sdc 表示整块硬盘
/dev/sdc1 表示一个分区
注意使用分区作为物理卷,分区一定要是8e 格式
实际应用
配置逻辑卷
实验步骤
步骤一:划立分区
[root@localhost ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x8fd606b5 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p):
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-125829119,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-125829119,默认为 125829119):+10G
分区 1 已设置为 Linux 类型,大小设为 10 GiB
命令(输入 m 获取帮助):N
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p):
Using default response p
分区号 (2-4,默认 2):
起始 扇区 (20973568-125829119,默认为 20973568):
将使用默认值 20973568
Last 扇区, +扇区 or +size{K,M,G} (20973568-125829119,默认为 125829119):+10G
分区 2 已设置为 Linux 类型,大小设为 10 GiB
命令(输入 m 获取帮助):N
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p):
Using default response p
分区号 (3,4,默认 3):
起始 扇区 (41945088-125829119,默认为 41945088):
将使用默认值 41945088
Last 扇区, +扇区 or +size{K,M,G} (41945088-125829119,默认为 125829119):+10G
分区 3 已设置为 Linux 类型,大小设为 10 GiB
命令(输入 m 获取帮助):
命令(输入 m 获取帮助):N
Partition type:
p primary (3 primary, 0 extended, 1 free)
e extended
Select (default e):
Using default response e
已选择分区 4
起始 扇区 (62916608-125829119,默认为 62916608):
将使用默认值 62916608
Last 扇区, +扇区 or +size{K,M,G} (62916608-125829119,默认为 125829119):+10G
分区 4 已设置为 Extended 类型,大小设为 10 GiB
命令(输入 m 获取帮助):W
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 60G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 59G 0 part
├─centos-root
253:0 0 38.3G 0 lvm /
├─centos-swap
253:1 0 2G 0 lvm [SWAP]
└─centos-home
253:2 0 18.7G 0 lvm /home
sdb 8:16 0 60G 0 disk
├─sdb1 8:17 0 10G 0 part
├─sdb2 8:18 0 10G 0 part
├─sdb3 8:19 0 10G 0 part
└─sdb4 8:20 0 1K 0 part
sr0 11:0 1 4.2G 0 rom /run/media/root/CentOS 7 x86_64
步骤二:建立物理卷
[root@localhost ~]# pvcreate /dev/sd{b1,b2} //创建物理卷
Physical volume "/dev/sdb1" successfully created.
Physical volume "/dev/sdb2" successfully created.
步骤三:建立卷组
[root@localhost ~]# vgcreate vg0 /dev/sd{b1,b2} //创建卷组
Volume group "vg0" successfully created
步骤四:建立逻辑卷
[root@localhost ~]# lvcreate -L 10G -n ky vg0 //建立逻辑卷
Logical volume "ky" created.
步骤五:建立文件系统
[root@localhost ~]# mkfs.xfs /dev/vg0/ky //建立xfs文件系统
meta-data=/dev/vg0/ky isize=512 agcount=4, agsize=655360 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2621440, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
步骤六:挂载
[root@localhost ~]# mount /dev/vg0/ky /mnt/ //将逻辑卷挂载到/mnt下
[root@localhost ~]# df -Th ////查看磁盘信息
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 39G 4.9G 34G 13% /
devtmpfs devtmpfs 897M 0 897M 0% /dev
tmpfs tmpfs 912M 0 912M 0% /dev/shm
tmpfs tmpfs 912M 9.0M 903M 1% /run
tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 179M 836M 18% /boot
/dev/mapper/centos-home xfs 19G 37M 19G 1% /home
tmpfs tmpfs 183M 32K 183M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-ky xfs 10G 33M 10G 1% /mnt
逻辑卷扩容
实验内容:
现要求将ky再扩容10G
实验步骤:
步骤一:给卷组扩容(原本卷组没有足够空间)
[root@localhost ~]# vgextend vg0 /dev/sdb3 //为vg0 增加一个物理卷
Physical volume "/dev/sdb3" successfully created.
Volume group "vg0" successfully extended
步骤二:给卷组扩容
[root@localhost ~]# lvextend -r -L +10G /dev/vg0/ky
Size of logical volume vg0/ky changed from 10.00 GiB (2560 extents) to 20.00 GiB (5120 extents).
Logical volume vg0/ky successfully resized.
[root@localhost ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 39G 4.9G 34G 13% /
devtmpfs devtmpfs 897M 0 897M 0% /dev
tmpfs tmpfs 912M 0 912M 0% /dev/shm
tmpfs tmpfs 912M 9.0M 903M 1% /run
tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 179M 836M 18% /boot
/dev/mapper/centos-home xfs 19G 37M 19G 1% /home
tmpfs tmpfs 183M 32K 183M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-ky xfs 20G 33M 20G 1% /mnt //查看磁盘信息,已经扩容成功
注意:
lvextend -L +10G /dev/vg0/ky
如果是xfs文件系统要使用挂载点刷新
xfs_growfs /mnt
如果是ext4的格式需要刷新逻辑卷
resize2fs /dev/vg0/ky
-r 直接扩容
总结
LVM逻辑卷的建立和扩容是最基础的使用,也可用同样的方式对根目录进行扩容,可以有效解决内存不足的问题