如何将此 AWS EC2 ubuntu 18 实例的大小从 16GB 调整为 100GB

如何将此 AWS EC2 ubuntu 18 实例的大小从 16GB 调整为 100GB

我需要调整 /dev/nvme0n1p1 15G 10G 6G 64% / 的大小

Filesystem     1G-blocks  Used Available Use% Mounted on
udev                 16G    0G       16G   0% /dev
tmpfs                 4G    1G        4G   1% /run
/dev/nvme0n1p1       15G   10G        6G  64% /
tmpfs                16G    1G       16G   1% /dev/shm
tmpfs                 1G    0G        1G   0% /run/lock
tmpfs                16G    0G       16G   0% /sys/fs/cgroup
/dev/loop0            1G    1G        0G 100% /snap/amazon-ssm-agent/1480
/dev/loop2            1G    1G        0G 100% /snap/core/7713
/dev/loop3            1G    1G        0G 100% /snap/amazon-ssm-agent/1455
tmpfs                 4G    0G        4G   0% /run/user/1000
/dev/loop4            1G    1G        0G 100% /snap/core/7917



Filesystem     Type     1K-blocks    Used Available Use% Mounted on
udev           devtmpfs  15933020       0  15933020   0% /dev
tmpfs          tmpfs      3189032     864   3188168   1% /run
/dev/nvme0n1p1 ext4      15180980 9711656   5452940  65% /
tmpfs          tmpfs     15945144       8  15945136   1% /dev/shm
tmpfs          tmpfs         5120       0      5120   0% /run/lock
tmpfs          tmpfs     15945144       0  15945144   0% /sys/fs/cgroup
/dev/loop0     squashfs     18432   18432         0 100% /snap/amazon-ssm-agent/1480
/dev/loop2     squashfs     91264   91264         0 100% /snap/core/7713
/dev/loop3     squashfs     18432   18432         0 100% /snap/amazon-ssm-agent/1455
tmpfs          tmpfs      3189028       0   3189028   0% /run/user/1000
/dev/loop4     squashfs     91264   91264         0 100% /snap/core/7917

使用已添加的 100GB

NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
loop0         7:0    0   18M  1 loop /snap/amazon-ssm-agent/1480
loop2         7:2    0   89M  1 loop /snap/core/7713
loop3         7:3    0   18M  1 loop /snap/amazon-ssm-agent/1455
loop4         7:4    0 89.1M  1 loop /snap/core/7917
nvme0n1     259:0    0  100G  0 disk 
└─nvme0n1p1 259:1    0  100G  0 part /

看完之后AWS 文档我尝试运行以下 Growthpart 命令,但我不清楚需要什么。

sudo growpart /dev/nvme0n1p1 1
WARN: unknown label 
failed [sfd_dump:1] sfdisk --unit=S --dump /dev/nvme0n1p1
sfdisk: /dev/nvme0n1p1: does not contain a recognized partition table
FAILED: failed to dump sfdisk info for /dev/nvme0n1p1


sudo growpart /dev/nvme0n1 1
NOCHANGE: partition 1 is size 209713119. it cannot be grown

问候康特

答案1

我遇到了同样的问题用下面的命令解决了它(其他答案是错误的)

sudo growpart /dev/nvme0n1 1

然后我可以扩展 FS

sudo resize2fs /dev/nvme0n1p1

答案2

文件类型为 ext4。所以下面的命令有效。

sudo resize2fs /dev/nvme0n1p1

答案3

环顾四周后,考虑到这是一个根文件系统,并且可能是 EBS Nitro 实例,您可以尝试以下操作(您可能需要重新启动才能生效):

要格式化和挂载 NVMe EBS 卷,请参阅使 Amazon EBS 卷可在 Linux 上使用。

如果您使用的是 Linux 内核 4.2 或更高版本,您对 NVMe EBS 卷的卷大小所做的任何更改都会自动反映在实例中。对于较旧的 Linux 内核,您可能需要分离并附加 EBS 卷或重新启动实例才能反映大小更改。对于 Linux 内核 3.19 或更高版本,您可以使用 hdparm 命令,如下所示强制重新扫描 NVMe 设备:

[ec2-user ~]$ sudo hdparm -z /dev/nvme1n1

当您分离 NVMe EBS 卷时,实例在分离卷之前没有机会刷新文件系统缓存或元数据。因此,在分离 NVMe EBS 卷之前,应首先同步并卸载它。如果卷无法分离,您可以尝试强制分离命令,如从实例分离 Amazon EBS 卷中所述。

参考

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nvme-ebs-volumes.html

相关内容