【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

  • A+
所属分类:linux技术
摘要

目录前期环境知识小课堂 – 什么是LVM?开始扩容知识小课堂 – 分区知识小课堂 – 设备LVM扩容知识小课堂 – PV和LV

前言:数据无价,谨慎操作!

前言:数据无价,谨慎操作!

前言:数据无价,谨慎操作!

前期环境

lsblk 查看磁盘情况和磁盘的分区

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

可以看到我们只有一块硬盘 即sda 现在模拟真实环境 新增一块硬盘

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

知识小课堂 - 什么是LVM?

在扩容前,我们需要大概了解一下,什么是PV、LV、VG,他们之间的联系是什么,为了便于直观和理解,此次我们会用Windows来举例

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

  • pv是我们的物理卷,也就是我们俗称的硬盘空间

  • vg是我们的卷组,可以看成windows的盘符,或者叫们D盘,是我们的设备

  • lv是我们的文件夹,可以看成windows的D盘里面的一个文件夹,最终会变成我们Linux下的一个挂载分区

所以我们顺序是新加PV,扩容VG,实现LV的增大

不严谨的来说,我们Linux下的挂载分区,类似于我们D盘下的某个文件夹,但是Windows中使用文件夹大小是以硬盘来算的,Linux则不是。我们需要扩容的是Linux的文件夹,而不是硬盘

开始扩容

因为是新加的硬盘,我们首先需要给硬盘分一个区,类似Windows未格式化的硬盘分区一个D盘。

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

使用fdisk来操作磁盘

fdisk <磁盘路径>

不同操作系统的磁盘命名方式不同,有些是/dev/vda

fdisk只能操作2T以下的,如果你的磁盘总空间大于2T,而你又已经分区,你需要完全卸载这个分区,甚至格式化才能继续操作。

用n创建新分区,p是创建主分区。

知识小课堂 - 分区

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

图上是我的U盘,整个空间都是叫做E盘的东西,而这个E盘就叫做主分区。主分区可以是一整个空间

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

再看我的硬盘,0号分区就是我的主分区,只是Windows不一样,主分区只能用来引导,放Windows最最最必要的东西(系统BOOT引导程序)
MSR分区是Windows的保留分区,可以忽略。

那么,C盘和D盘就是我的主分区拓展分区
如果将来硬盘1被扩容,那我就加个F盘。这次不是单独扩容硬盘,本次不提

现在看硬盘2,硬盘2假设是全新的硬盘,那么地球人都知道硬盘需要先格式化才能用,那么格式化前,和Windows一样,你要选择一些东西。

Windows格式化

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

Linux格式化前分区

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

P:主分区
1:分区号
起扇区和Last扇区,其实就是Windows中的容量。全部使用默认即可。

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

输入p我们可以看到,有一个“设备“

知识小课堂 - 设备

在Linux中,我们没有“盘符”的概念,而是使用设备,一个设备就是一个D盘

如果设备的ID是83,那么这个设备就是普通的分区,以后无法扩容,如果我们需要可以扩容的分区,我们回退直接退出,重新分区。

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

我们选择8e,8e是LVM类型,也就是文章开头说的东西了。

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

由于Linux一切都是文件的特性,新加了文件,系统是不会自动识别的,我们最好通知系统,我们的硬盘设备增加了(分区改变了)

partprobe

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

此时,我们已经分区好了,熟悉Windows重装的人都知道,分区好了,不代表可以用了,举个例子如下图
我们还需要点“确定”开始格式化

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

此时还不急,我们需要先初始化LVM的有关设定

LVM扩容

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

把刚刚新加的硬盘的所有空间(PV)增加到我们的VG中
这里是在扩容LV的同时创建PV卷的哦

知识小课堂 - PV和LV

我们已经知道PV是真实的硬盘空间,那为什么是PV插入到LV中呢?

因为LV是我们的设备,而Linux下,我们挂载目录,需要挂载到设备中,如果这一点都没有理清,可能我们要远离Linux了

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

vgextend <VG名> <设备>

Volume group "<VG名>" successfully extended –硬盘扩容成功,如果不出现这个提示,你可能翻车了

我们看看我们的pv lv和vg的情况

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

很成功,可以看到,我们多了一份真实空间(PV),而我们的LV不需要增加,除非我们需要一个新的挂载目录(LV)

我们通知LV,你的空间增加

lvextend -l +100%FREE <挂载目录的文件系统> 

好了,那我们PV和LV都好了,那我们最后就要通知VG增加了

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

xfs_growfs <挂载目录的文件系统>

【菜鸟版】Linux系统扩容根目录磁盘空间的操作方法/多块硬盘挂载到同一目录

至此,我们的磁盘已经扩容完成。