首页 > 解决方案 > 无法成长,因为没有剩余空间

问题描述

我正在运行一个 EBS 存储最初为 8GB 的​​ AWS EC2 Ubuntu 实例。

现在已满 99.8%,因此我按照 AWS 文档说明将 EBS 卷增加到 16GB。我现在需要将我的分区 /dev/xvda1 扩展到 16GB,但是当我运行命令时

$ growpart /dev/xvda 1

我得到错误

mkdir: cannot create directory ‘/tmp/growpart.2626’: No space left on device

我试过了

  1. 重启实例
  2. 停止实例,并根据旧的 8GB 卷的快照挂载一个新创建的大小为 16GB 的 EBS 卷
  3. 正在运行docker system prune -a(导致“无法在 unix:/var/run/docker.sock 连接到 Docker 守护程序。docker 守护程序是否正在运行?”错误。当我尝试使用启动守护程序sudo dockerd时,我得到“没有剩余空间设备”错误)
  4. 跑步resize2fs /dev/xvda1

一切都无济于事。

跑步lsblk回报

NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
loop0     7:0    0   89M  1 loop /snap/core/7713
loop1     7:1    0   18M  1 loop /snap/amazon-ssm-agent/1480
loop2     7:2    0 89.1M  1 loop /snap/core/7917
loop3     7:3    0   18M  1 loop /snap/amazon-ssm-agent/1455
xvda    202:0    0   16G  0 disk
└─xvda1 202:1    0    8G  0 part /

df -h返回

Filesystem      Size  Used Avail Use% Mounted on
udev            2.0G     0  2.0G   0% /dev
tmpfs           395M   16M  379M   4% /run
/dev/xvda1      7.7G  7.7G     0 100% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup
/dev/loop0       90M   90M     0 100% /snap/core/7713
/dev/loop1       18M   18M     0 100% /snap/amazon-ssm-agent/1480
/dev/loop2       90M   90M     0 100% /snap/core/7917
/dev/loop3       18M   18M     0 100% /snap/amazon-ssm-agent/1455
tmpfs           395M     0  395M   0% /run/user/1000

df -i返回

Filesystem      Inodes  IUsed  IFree IUse% Mounted on
udev            501743    296 501447    1% /dev
tmpfs           504775    457 504318    1% /run
/dev/xvda1     1024000 421259 602741   42% /
tmpfs           504775      1 504774    1% /dev/shm
tmpfs           504775      3 504772    1% /run/lock
tmpfs           504775     18 504757    1% /sys/fs/cgroup
/dev/loop0       12827  12827      0  100% /snap/core/7713
/dev/loop1          15     15      0  100% /snap/amazon-ssm-agent/1480
/dev/loop2       12829  12829      0  100% /snap/core/7917
/dev/loop3          15     15      0  100% /snap/amazon-ssm-agent/1455
tmpfs           504775     10 504765    1% /run/user/1000

标签: amazon-web-servicesamazon-ec2amazon-ebs

解决方案


对于有此问题的任何人,这里是答案的链接:https ://aws.amazon.com/premiumsupport/knowledge-center/ebs-volume-size-increase/

概括

  1. 运行df -h以验证您的根分区是否已满(100%)
  2. 运行lsblk然后lsblk -f获取块设备详细信息
  3. sudo mount -o size=10M,rw,nodev,nosuid -t tmpfs tmpfs /tmp
  4. sudo growpart /dev/DEVICE_ID PARTITION_NUMBER
  5. lsblk验证分区是否已扩展
  6. sudo resize2fs /dev/DEVICE_IDPARTITION_NUMBER
  7. 运行df -h以验证调整大小的磁盘
  8. sudo umount /tmp

推荐阅读