我有一个 EC2 实例,我为其创建了一个 500GB EBS 卷。不幸的是,EC2 实例显示只有 8GB 可用。
我只有一个驱动器,这是正确的。
[root@ip-10-244-134-250 ~]# ls -la /dev/x*
brw-rw---- 1 root disk 202, 1 Aug 7 08:54 /dev/xvda1
但是,那个驱动器只有 8GB
[root@ip-10-244-134-250 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 8.0G 1.3G 6.7G 16% /
tmpfs 3.7G 0 3.7G 0% /dev/shm
但是,fdisk 和 /proc/partitions 都显示正确的大小
[root@ip-10-244-134-250 ~]# fdisk -l
Disk /dev/xvda1: 536.9 GB, 536870912000 bytes
255 heads, 63 sectors/track, 65270 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/xvda1 doesn't contain a valid partition table
[root@ip-10-244-134-250 ~]# cat /proc/partitions
major minor #blocks name
202 1 524288000 xvda1
任何帮助将不胜感激,谢谢。
如果根文件系统是 ext3 或 ext4,则运行:
如果根文件系统是 xfs(不太常见),则运行:
如果您以根用户身份登录,则可以省略“sudo”。
这些命令应该在系统运行和文件系统挂载时运行。
EBS 卷的标准是不包含分区表。EBS 卷通常被格式化为一个完整的文件系统,没有分区。
在专门为更改 EBS 卷大小的人重新调整大小之前,这里的答案似乎缺少几个步骤。如果您使用快照创建 EBS 或使用某些 AMI,您将需要扩展磁盘 (xvda)、扩展分区 (xvda1),然后扩展文件系统 (/)。
如果我没看错的话,你的磁盘看起来是这样的:
它需要看起来像这样:
之后,running
resize2fs
将增长到 内的新空间xvda1
,使用fdisk
我们可以通过删除并再次创建它并使分区可启动来增加块大小。它所需要的只是重新启动。在大多数情况下,如果您使用相同的启动柱面,它不会影响您的数据,但请注意,重新创建分区时的任何错误都将导致丢失所有数据和/或服务器不会重新启动。 我建议将此作为新创建实例的第一步。否则拍摄您的 EC2 EBS 存储/等的快照。我在下面的块中用 <<#>> 标记了这些步骤,因此它们不是命令的一部分。您需要 root 权限,所以如果您不是 root,请执行“sudo sh”。
调整 EBS 卷上文件系统的大小。如果您正在运行
ext3
(这通常是默认设置),您可以只运行e2resize /dev/xvda1
.我使用从自定义 Ubuntu AMI 创建的实例尝试了@Neo 的答案。解释非常有帮助,但我需要将单元保持为块并跳过第 4 步。然后它完美地工作。
还有一点是,在步骤#5 中,您必须复制起始块/柱面以在步骤#10 中使用。
@Neo 的回答是如果你有一个分区的虚拟磁盘设备。如果您遇到此问题,您可以通过以下方式找到:
lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 30G 0 disk └─xvda1 202:1 0 5G 0 part /
xvda 和 xvda1 的大小非常不同。您可以调整 2fs 大小,这不会有任何区别,在我的例子中,xvda1 是 5G,这就是文件系统将使用的所有内容。谢谢,@Neo