美文网首页
Linux磁盘挂载和扩容(2)

Linux磁盘挂载和扩容(2)

作者: 与君把盏 | 来源:发表于2020-10-21 10:42 被阅读0次

本章介绍Linux系统磁盘扩容问题

前言

想到Linux服务器磁盘扩容我们会想到几种办法

  • 挂载lvm方式,然后扩展逻辑卷
  • 直接用resiz2efs方式进行扩容

但是一般在云主机上,现在已经很少使用lvm的方式去挂载磁盘,所以这里介绍的是使用resize的方式进行扩容
扩容最关键的就是保证原有的数据不丢失,当然能做到热扩容最好了,扩容过程中保证要服务不停止。
那么扩容也分4种情况:

  1. 小于2T的裸盘扩容
  2. 小于2T的分区扩容
  3. 从小于2T的裸盘扩容到大于2T的裸盘
  4. 从小于2T的分区扩容到大于2T的分区

针对这4种情况,我们下面一一来介绍一下。

一. 小于2T的裸盘扩容

首先先将裸盘挂载上去,挂载方式参考第一章Linux磁盘挂载
现在我们需要做的扩容,将100G的磁盘扩容到200G

  • 先查看一下原先sdc的磁盘大小


    image.png
  • 使用resize2fs /dev/sdc将磁盘在线扩容


    image.png
  • 检查一下磁盘是否扩容


    image.png

    看到这里,磁盘就已经扩容完成

二. 小于2T的分区扩容

1)查看分区信息

使用lsblk命令查看sdc分区,可以看到sdc1分区是100G,现在我们需要扩容到200G


image.png

2)扩充分区

使用growpart命令将分区扩充至200G,如果没有growpart命令,可以先安装

centos机器:yum install cloud-utils-growpart --y
ubuntu机器:apt install cloud-initramfs-growroot -y

growpart /dev/sdc 1

3) 分区扩容

resize2fs /dev/sdc1
image.png

到这里分区就扩容完成

三. 从小于2T的裸盘扩容到大于2T的裸盘

我们现在从200G裸盘,扩容到3T


image.png

其实这种方式和小于2T的裸盘扩容方式一样,可以直接resize,所以不需要过多的介绍了,直接扩容就可以了。


image.png
image.png

四. 从小于2T的分区扩容到大于2T的分区

使用lsblk命令可以看到/dev/sdc有3T磁盘,但是并未挂载


image.png

需要使用gdisk将分区表从MBR转换为GPT,如果没有,请安装gdisk

centos: yum install gdisk -y
ubuntu: apt install gdisk -y

1)卸载挂载点

这个扩容是需要先将挂载点卸载的,要不然无法新建分区

umount /dev/sdc1

2) 对齐扇区

sudo gdisk /dev/xvdb

在提示中输入以下命令,以进入专家模式并设置扇区对齐值。
注意:确保将扇区对齐值从默认的 8 更改为 1。在创建 GPT 分区时使用 8 字节对齐可能会导致出现问题。

Command (? for help): x                                          
Expert command (? for help): l #这个是小写的L,并不是1                                  
Enter the sector alignment value (1-65536, default = 2048): 1  
Expert command (? for help): m

3)创建GPT分区

在提示中输入以下命令,以创建 GPT 分区。在最后一个扇区提示中键入 enter,以使用默认扇区编号 2047。

Command (? for help): n                                                                                                      
Partition number (2-128, default 2):                                                                               
First sector (34-6291455966, default = 4294967296) or {+-}size{KMGTP}: 34                 
Last sector (34-2047, default = 2047) or {+-}size{KMGTP}:                                                
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):                                                    
Changed type of partition to 'BIOS boot partition'

在提示中输入以下命令,以删除根分区:
注:删除分区不会使磁盘里面的文件丢失

Command (? for help): d                                                                                                       
Partition number (1-2): 1

在提示中输入以下命令,以将根分区重新创建为 3TB。在第一个扇区、最后一个扇区和十六进制代码或 GUID 提示中,键入 enter 以使用默认设置。

Command (? for help): n                                                                                                       
Partition number (1-128, default 1): 1                                                                                   
First sector (2048-6291455966, default = 2048) or {+-}size{KMGTP}:                                
Last sector (2048-6291455966, default = 6291455966) or {+-}size{KMGTP}:                     
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):                                                           
Changed type of partition to 'Linux filesystem'
Command (? for help): w
 
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
 
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sdc.

4) 检查设备文件系统

使用 fsck 工具来检查设备 /dev/xvdf1 的文件系统是否正确。有关 fsck 工具的更多信息,请参阅 Ubuntu man 网站上的 fsck

Command (? for help): n                                                                                                       
Partition number (1-128, default 1): 1                                                                                   
First sector (2048-6291455966, default = 2048) or {+-}size{KMGTP}:                                
Last sector (2048-6291455966, default = 6291455966) or {+-}size{KMGTP}:                     
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):                                                           
Changed type of partition to 'Linux filesystem'
Command (? for help): w
 
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
 
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sdc.

5) 扩展分区

运行 resize 命令调整文件系统的大小,以将其扩展至 3TB。
注意:调整文件系统大小可能需要 10-20 秒左右。

sudo e2fsck -f /dev/sdc1
e2fsck 1.42.13 (17-May-2015)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
      
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
cloudimg-rootfs: 57524/262144000 files (0.0% non-contiguous), 16648272/536870655 blocks

6)重新挂载分区

mount /dev/sdc1 /mnt

相关文章

  • Linux磁盘挂载和扩容(1)

    本章我们先介绍Linux服务器磁盘挂载,下期介绍Linux磁盘扩容问题。 前言 Linux磁盘挂载有两种情况 1....

  • Linux磁盘挂载和扩容(2)

    本章介绍Linux系统磁盘扩容问题 前言 想到Linux服务器磁盘扩容我们会想到几种办法 挂载lvm方式,然后扩展...

  • 《Linux实践技能》学习笔记 day11

    Linux 虚拟机 virtualbox 磁盘扩容 首先在虚拟机中模拟磁盘挂载,先关机,扩容磁盘大小image.p...

  • Linux中初始化一个新磁盘

    Linux中挂载一个新磁盘后,创建分区并自动挂载的方法: 在线扩容一个已有磁盘

  • linux新增、挂载、扩容磁盘

    1、增加硬盘 2可以看到磁盘并没有马上认出来 3、由于不知道新增硬盘挂载的位置,可以先查看现有硬盘挂载的适配器。 ...

  • 磁盘扩容

    一、常用命令 1.1、查看磁盘挂载与磁盘使用空间 1.2、查看磁盘设备 1.3、查看磁盘分区信息 二、实战扩容 2...

  • Linux挂载硬盘和扩容数据盘

    前置条件: 使用root身份登录 挂载硬盘 1.查看磁盘列表 2.格式化分区 挂载分区 设置开机挂载 扩容数据盘 ...

  • Linux 磁盘分区挂载和热扩容

    一:磁盘小于2T的情况下如何挂载 1: 查看磁盘信息 fdisk -l 2: 对磁盘进行分区 fdis...

  • Linux挂载磁盘空间

    Linux挂载磁盘空间 (1)查看磁盘空间 (2)查看硬盘及分区信息 (3)格式化新分区 (4)将磁盘挂载在/po...

  • Linux_107_文件系统挂载原理

    磁盘设备挂载 Linux下设备不挂载的话,无法使用例如:/dev/sdb1,/dev/sdb2,这些都是Linux...

网友评论

      本文标题:Linux磁盘挂载和扩容(2)

      本文链接:https://www.haomeiwen.com/subject/niesmktx.html