Linux磁盘扩容
前言
最近遇到了Linux磁盘扩容的问题,磁盘扩容有好几种情景,因为之前没涉及到,踩了不少坑。在此记录一下,方便后续查阅。
假设有一块磁盘A,容量是100G
。我分了20G用来安装Linux系统,剩下的没有动。随着时间的增长,20G不够用了,我可以将磁盘A剩下的80G分给Linux系统,也可以在加装一块磁盘B分给Linux。两种方式都可以实现扩容的目的,但是实现的手段可以分为两种:lvm和非lvm
非lvm方式,就是一般的磁盘挂载,将新硬盘分区并格式化后,挂载到Linux系统的某个文件夹上去,实现磁盘的扩容,但是这种方式一个文件夹只能挂载一个磁盘,如果想要将两块磁盘同时挂载到同一个文件夹上就需要用到lvm进行磁盘管理。
关于什么是lvm可以百度查询。简单来说,lvm可以将多个磁盘视为一个逻辑磁盘。假如有两块磁盘A和磁盘B
,使用lvm的话,可以将这两个磁盘看做是一个逻辑磁盘a
,我们只需对逻辑磁盘a
进行操作,将其挂载到Linux目录下就行,如果后续要增添一块磁盘C
,只需要将磁盘C加入逻辑磁盘a
就行。以上说法并不准确,但是便于理解。
一点基础知识
简单的磁盘相关命令
|
|
lvm相关了解
PV(Physical Volume): 物理卷, 处于LVM最底层, 可以是物理硬盘或者分区;
PP(Physical Extend): 物理区域, PV中可以用于分配的最小存储单元, 可以在创建PV的时候指定, 如1M, 2M, 4M, 8M…..组成同一VG中所有PV的PE大小应该相同;
VG(Volume Group): 卷组, 建立在PV之上, 可以含有一个到多个PV;
LV(Logical Volume): 逻辑卷, 建立在VG之上, 相当于原来分区的概念, 不过大小可以动态改变.
使用lvm进行磁盘扩容
参考:https://www.cnblogs.com/lijiaman/p/12885649.html,写的很详细,推荐
注意:在安装Linux系统的时候,有一个配置磁盘分区属性,默认是使用整个磁盘,但是我这里使用的是第二个选项lvm进行的创建。非lvm的磁盘是无法与lvm的磁盘进行逻辑合并的。
使用fdisk进行分区操作
先查看整体磁盘分区情况
sda磁盘在系统安装是采用了lvm,所以才有蓝色框选的两个逻辑卷,否则是没有的。
sdb是未被使用的。将sdb进行分区并格式化
输入fdisk /dev/sdb
,回车,然后输入m,回车
输入n并回车,n是“new”新建分区的意思
使用fdisk再次进行查看
磁盘分区之后,磁盘id为83,如果要使用逻辑卷管理,需要将id改为8e,才能创建物理卷。
输入fdisk /dev/sdb
,回车,然后输入m,回车,输入t,选择分区1,输入id值8e
,输入w保存
最终修改完成
使用lvm进行
先查看当前的一些信息
物理卷
卷组
逻辑卷
将sdb1创建物理卷:pvcreate /dev/sda3
将添加新的物理卷,加载到debian10-vg
卷组,使用vgextend debian10-vg /dev/sdb1
命令。
将debian10-vg
卷组中空闲的5G分给/dev/debian10-vg/root
逻辑卷, 使用:lvresize -l 1279 /dev/debian10-vg/root
|
|