目 录CONTENT

文章目录

Debian虚拟机磁盘根目录扩容

华灯
2024-05-08 / 0 评论 / 0 点赞 / 40 阅读 / 14051 字

磁盘分区工具及命令

层级 类型 命令 说明
0 硬盘 / 分区 lsblk 查看硬盘与分区信息
1 分区操作 fdisk 用来创建 MBR 分区 (也可以创建 GPT 分区, 但是支持的并不是特别完美)
1 分区操作 gdisk 用来创建 GPT 分区 (如果要创建 GPT 分区, 就来使用这个命令吧)
1 分区操作 cfdisk 图形化操作, 较 fdisk 更直观简单的分区工具
1 分区操作 cgdisk 图形化操作, 较 gdisk 更直观简单的分区工具
1 分区操作 parted 高级分区操作 (注意操作, 很多命令一键完成, 没有提示, 所以也就不存在后悔的余地, 功能强大)
1 分区操作 growpart 可以非常方便的把磁盘空间进行扩容的工具, 需要下载
2 分区表操作 partprobe 当分区表进行修改调整之后, 需要重新读取分区表
3 文件系统 resize2fs 在调整的磁盘空间之后, 重新对文件系统进行分配.

1 虚拟机先增加磁盘空间

iShot_2023-10-06_15.26.37

1.1 lsblk查看磁盘情况

iShot_2023-10-06_15.30.07

SSH连接后 lsblk查看磁盘情况。可以看到sda大小成了30G 但是挂载到根目录的sda1只有11G大小,本地目的就是就是要把这个11G扩展到30G。

2 扩容分区

思路就是删除 swap 与其他分区,让空闲空间和扩容分区之间直接连接。然后使用growpart命令进行扩容。

2.1 使用fdisk命令删除其他分区!

d 是删除分区 ; n新建分区; P 新建主分区 ;w是写入分区 。

iShot_2023-10-06_15.33.57

因为要把swap分区删除,需要查看fstab有没有设置开机挂载,否则重启后可能无法开机。

可以 vi /etc/fstab 也可以直接用SSH工具修改。

iShot_2023-10-06_15.35.10

reboot后再命令查看一下硬盘信息:

iShot_2023-10-06_15.53.21

可以看到 sda2和sda5的 swap分区已经删除了。

2.2 安装growpart工具

根据实际情况执行命令,安装 gdisk 工具。
若分区类型为 MBR,则请跳过此步骤。
若分区类型为 GPT,则请对应云服务器操作系统类型,执行以下命令安装工具。

Centos 执行yum install gdisk -y
debian 执行apt-get install gdisk -y

对应云服务器操作系统类型,执行以下命令,安装 growpart 工具。

Centos 执行yum install -y cloud-utils-growpart
debian 执行apt-get install -y cloud-guest-utils

2.3 执行以下命令,使用 growpart 工具扩容分区。

本文以扩容 /dev/sda1 分区为例,命令中 /dev/sda 与 1 间需使用空格分隔。您可按需修改命令。

growpart /dev/sda 1

返回结果如下图所示,则表示分区扩容成功。
iShot_2023-10-06_15.56.32

3 扩容文件系统

3.1 获取文件系统类型,执行对应命令扩容文件系统

通过df -TH命令可以看到 格式为ext4 的 ,而且可以看到,前面虽然sda1已经扩容了,但是这里可用的空间仍然只有12G,我们需要接着扩容文件系统。

iShot_2023-10-06_16.02.15

3.2 执行以下命令,扩容 ext 文件系统。

resize2fs /dev/sda1

返回结果如下图所示:

iShot_2023-10-06_16.04.41

3.3 执行以下命令,扩容 xfs 文件系统。

xfs_growfs <挂载点>

本文示例为 /dev/vdc1 挂载至 /mnt/disk2,则执行以下命令。

xfs_growfs /mnt/disk2

返回结果如下图所示(因为我的机器是ext4格式,下图网上找的):

8a87f4c3592048babc55f9481564881f

3.4.执行以下命令,查看扩容结果。

df -TH

返回结果如下图所示,则表示已扩容成功。

iShot_2023-10-06_16.04.59

4.成功 附:知识扩展

磁盘分区

  1. 查看磁盘信息:sudo fdisk -l

  2. 选择操作磁盘:sudo fdisk /dev/sdc

  3. 输入:m,可以查看帮助

  4. 删除现有分区:d,然后输入要删除的分区序号

  5. 新建分区:n,然后根据提示操作

  6. 保存分区:w

  7. 更新分区表信息:sudo partprobe /dev/sdc

  8. 格式化分区:sudo mkfs -t ext4 /dev/sdc1

磁盘挂载

  1. 查看磁盘信息:sudo fdisk -l(查看UUID:ls -l /dev/disk/by-uuid)

  2. 创建挂载点:mkdir /mnt/sdc1

  3. 挂载磁盘:mount /dev/分区编号 /mnt/挂载点文件夹名称

  4. 检查挂载结果:sudo df -h

  5. 如需开机自动挂载,修改fstab:nano /etc/fstab,添加如下条目,并保存退出。

/dev/sdc1 /mnt/sdc1 ext4 default 0 0

从左向右:分区名(可以使用:UUID=××××)、挂载点、分区格式、挂载选项、是否备份、开机是否自检

  1. 检查语法错误:mount -a(如果报错,则必须改正fstab新增条目,否则会影响系统启动)
0

评论区