1.逻辑卷LVM:“在线扩容”
1.1.LVM介绍
LVM是Logical Volume Manager逻辑卷管理。
它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。
通过LVM系统管理员可以轻松管理磁盘分区,如:将若干个磁盘分区连接为一个整块的卷组(volume group),形成一个存储池。
管理员可以在卷组上随意创建逻辑卷组(logical volumes),并进一步在逻辑卷组上创建文件系统。管理员通过LVM可以方便的调整存储卷组的大小。并且可以对碎盘存储按照组的方式进行命名、管理和分配。
当系统添加了新的磁盘、通过LVM管理员就不必将磁盘的文件移动到新的磁盘上以充分利用新的存储空间,而是直接扩展文件系统跨越磁盘即可。
1.2.基本组成
- PV:物理卷(Physical volume):一块硬盘,或多块硬盘
- VG:卷组(VolumeGroup):一堆磁盘的统称
- LV:逻辑卷(Logical Volume):一个逻辑分区,一个分区
1.3.和基本磁盘的区别
基本磁盘无法调整大小,逻辑卷可以随意扩张大小,性质与基本磁盘无异。
附:可以写满磁盘的方法:
[root@localhost ~]# dd if=/dev/zero of=/mnt/disk4/1.txt bs=1M count=1000
1.4.创建LVM
将物理磁盘,转换成物理卷-PV
[root@localhost ~]# pvcreate /dev/sdc
查看PV信息
[root@localhost ~]# pvscan //或者pvs
创建卷组-VG
[root@localhost ~]# vgcreate vg1 /dev/sdc
查看卷组信息
[root@localhost ~]# vgscan //或者vgs
创建逻辑卷
语法:lvcreate -L大小(单位M、G) -n卷名 vg1组名-lv
[root@localhost ~]# lvcreate -L 200M -n lv1 vg1
查看LV
[root@localhost ~]# lvscan //或者lvs
创建文件系统/格式化
注意:/dev/卷组名/逻辑卷名
[root@localhost ~]# mkfs.ext4 /dev/vg1/lv1
创建挂载点并挂载
[root@localhost ~]#mount /dev/vg1/lv1 /mnt/lv1
查看挂载结果
[root@localhost ~]# df
1.5.LV扩容–lvextend(一扩一刷)
查看VG空间,观察VG卷组是否有剩余空间
[root@localhost ~]# vgs
扩容LV,增加200M空间,给lv2
[root@localhost ~]# lvextend -L +200M /dev/vg1/lv1
先观察文件系统当前容量
[root@localhost ~]# df -Th
FS扩容
[root@localhost ~]# resize2fs /dev/vg1/lv1
1.6.VG扩大–vgextend:/dev/vg1 容量由5G 扩容到 10G
创建PV,而后使用第二步,将PV增加到VG中
[root@localhost ~]# pvcreate /dev/sdd
扩展VG,同时包含方法1
[root@localhost ~]# vgextend vg1 /dev/sdd
查看VG卷组空间
[root@localhost ~]# vgs
再选择是直接进行LV扩容(一般)还是重新创建LV(需要再格式化挂载,不在同一个目录下)
2.交换分区管理Swap
2.1.概念
类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。
2.2.作用
“提升” 内存的容量,防止OOM(Out Of Memory)
2.3.swap大小(推荐):
大于 4GB 而小于 16GB 内存的系统,最小需要 4GB 交换空间;
大于 16GB 而小于 64GB 内存的系统,最小需要 8GB 交换空间;
大于 64GB 而小于 256GB 内存的系统,最小需要 16GB 交换空间。
2.4.查看当前的交换分区
[root@localhost ~]# free -m
total:物理内存总量
used:已使用的物理内存量
free:空闲物理内存量
shared:被多个进程共享的内存量
buffers:缓存的内存量
cache:缓存的文件系统的内存量
available:可用的物理内存量
Swap:交换空间总量、已使用的交换空间量、空闲交换空间量
2.5.增加交换分区
示例:准备/dev/sde磁盘,划分为1G分区
准备分区
[root@localhost ~]# fdisk /dev/sde
[root@localhost ~]# partprobe /dev/sde
[root@localhost ~]# ll /dev/sde*
格式化
[root@localhost ~]# mkswap /dev/sde1
挂载
[root@localhost ~]# swapon /dev/sde1
验证查看增加后的交换分区
[root@localhost ~]# free -m
2.6.删除交换分区
关闭所有交换分区
[root@localhost ~]# swapoff -a
关闭某磁盘交换分区
[root@localhost ~]# swapoff /dev/sde