centos 根目录扩容空间
1、虚拟机扩容磁盘概述
Hyper第一代需要关机才能扩容,第二代直接扩容
LVM概述
LVM是Linux系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上,文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性。
需要注意的是,“/boot”分区不能基于LVM创建,必须独立出来。
1、pv(PhysicalVolume,物理卷)
物理卷是LVM机制的基本存储设备,通常对应一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(Physical Extent,PE),从而构成物理卷,物理卷一般直接使用设备文件名称,如/dev/sdb1、/dev/sdb2、/dev/sdd等。
对用于转换成物理卷的普通分区,建议先使用fdisk工具将分区类型的ID标记号改为“8e”。若是整块硬盘,可以将所有磁盘空间划分为一个主分区后再做相应调整。
2、VG(VolumeGroup,卷组)
由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态地添加或移除物理卷,许多个物理卷可以分别组成不同的卷组,卷组的名称由用户自行定义。
3、LV(LogicalVolume,逻辑卷)
逻辑卷建立在卷组之上,与物理卷没有直接关系。对于逻辑卷来说,每一个卷组就是一个整体,从这个整体中“切出”一小块空间,作为用户创建文件系统的基础,这一小块空间就称为逻辑卷。使用mkfs等工具在逻辑卷上创建文件系统之后,就可以挂载到Linux系统中的目录下使用。
通过上述对物理卷、卷组、逻辑卷的解释可以看出,建立LVM分区管理机制的过程:首先将普通分区或整个硬盘创建为物理卷;接下来,将物理上比较分散的各物理卷的存储空间组成一个逻辑整体,即卷组;最后,基于卷组这个整体,分割出不同的数据存储空间,形成逻辑卷。逻辑卷才是最终用户可以格式化并挂载使用的存储单位。
LVM的常用管理命令:
#Scan扫描
pvscan
vgscan
lvscan
#Create建立
pvcreate
vgcreate
lvcreate
#Display显示
pvdisplay
vgdisplay
lvdisplay
#Remove移除
pvremove
vgremove
lvremove
#Extend扩展
vgextend
lvextend
#Reduce减少
vgreduce
lvreduce
2、进系统配置
#例如扩容50G到主机cs的cs-root
#检查磁盘
fdisk -l
#进行分区
fdisk /dev/sda
#添加分区
n
p
#回车
#回车
#检查下分区情况
p
#写入保存
w
#退出
q
#显示通过LVM配置的所有物理卷的信息
pvdisplay
#在新硬盘上创建PV
pvcreate /dev/sda4
#把新PV扩展进主机cs
vgextend cs /dev/sda4
#扩展逻辑卷50G
lvextend -L+49G /dev/mapper/cs-root
#扩展文件系统以适应新的逻辑卷大小: 因为是XFS文件系统(根据提供的历史记录推断),使用 xfs_growfs 命令来在线扩展它
xfs_growfs /dev/mapper/cs-root
# 或者直接
xfs_growfs /
# 查看卷组信息
vgdisplay
# 查看逻辑卷cs-root的信息
lvdisplay /dev/mapper/cs-root
#结束查看磁盘信息
df -h
3、空间挪动
/root空间219G /home空间121G,把/root的空间挪50G给/home的磁盘空间
#查看磁盘情况
lsblk
#检查当前的逻辑卷情况
vgdisplay # 查看卷组信息
lvdisplay # 查看逻辑卷信息
减少/root逻辑卷的大小,释放50GB的空间:
# 将50GB从/root逻辑卷中减去
lvreduce -L -49G /dev/cs/root
#可能错误使用
扩展/home逻辑卷的大小:
# 将50GB添加到/home
lvextend -L +49G /dev/cs/home
扩展文件系统以使用新增加的空间:
#对于ext4文件系统:
resize2fs /dev/cs/home
#对于XFS文件系统:
xfs_growfs /dev/cs/home
#-或
xfs_growfs /home
4、刷新分区信息
partprobe /dev/sda
5、LVM中移除PV卷
vgreduce cs /dev/sda4
6、注意
注意:
- 在LVM选择文件系统的时候,最好选择ext4文件系统,在ext4文件系统下我们可以无损的对逻辑卷扩容或者缩容,
- 而XFS文件系统,只能对逻辑卷进行无损扩容,并不能进行无损缩容,如果一定要缩容,就要重新格式化逻辑卷,这就导致存储在逻辑卷中的数据丢失。