df -h 仅显示 10GB,但我已经为 GCE 实例分配了 500GB 磁盘

df -h 仅显示 10GB,但我已经为 GCE 实例分配了 500GB 磁盘

我在尝试编译 gcc 时磁盘空间不断不足,我不断创建越来越大的磁盘大小,经过 5 小时的编译后,磁盘空间耗尽。我现在已经调整了 4 次磁盘大小,第 4 次重新启动编译步骤,现在磁盘大小为 500GB。

当我运行df -h查看使用了多少空间时,它只显示 9.7GB,但这被认为是 100%。

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

我以为可能还有另一个磁盘,但我只看到sda它的分区

ls /dev/sd*
/dev/sda  /dev/sda1

所以我的磁盘实际上有 500GB 大小,df只是报告错误(在这种情况下,编译 gcc 会占用整个 500GB)还是 Google Cloud 的仪表板报告错误,df报告正确并且编译 gcc 不会占用 500GB?

无论如何,除非我应该做些什么来利用 500GB(顺便说一句,这是违反直觉的),否则我猜这是一个错误?

(我在发帖之前搜索过,只看到与 AWS 相关的问题)

更新-lsblk 解释道:

lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  500G  0 disk 
└─sda1   8:1    0   10G  0 part /

答案1

似乎 Google Compute Engine 确实在大多数操作系统上提供了根分区大小的自动调整功能(我通常使用 Debian,所以从来没有遇到过这样的问题),但 CentOS 似乎不是其中之一。

看: https://cloud.google.com/compute/docs/disks/persistent-disks#repartitionrootpd

就我而言,需要手动重新分区,请参阅: https://cloud.google.com/compute/docs/disks/persistent-disks#manualrepartition

完成这些步骤后,我的磁盘大小现在是 500GB

lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  500G  0 disk 
└─sda1   8:1    0  500G  0 part /

答案2

以下是您拥有单个 xfs (/dev/sda1) 分区的步骤。

尝试之前不要忘记制作快照!

首先重新创建根分区,输入此命令:

(echo d; echo n; echo p; echo 1; echo ; echo; echo w) | sudo fdisk /dev/sda

然后重启服务器。重启后,增加分区

xfs_growfs /dev/sda1

验证方式:

df -h

相关内容