我有一个带有 2 个 EBS 卷的 EC2 实例。在根卷上,我增加了卷大小。
首先我修改了volume size on console .然后按照这个指令到extended the partition following this instruction .
但是,在运行任何命令时,我得到设备上没有剩余空间。
echo "Hello" > hello.txt
-bash: hello.txt: No space left on device
df -h 正确显示总空间。
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 395M 596K 394M 1% /run
/dev/xvda1 30G 19G 9.6G 67% /
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/xvdg 10G 6.2G 3.9G 62% /data2
tmpfs 395M 0 395M 0% /run/user/1001
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 30G 0 disk
└─xvda1 202:1 0 30G 0 part /
xvdg 202:96 0 31G 0 disk /data2
底部guide说,
If the increased available space on your volume remains invisible to the system, try re-initializing the volume as described in Initializing Amazon EBS Volumes.
所以我关注了the instruction to reinitialize the volume .
我用 dd 重新初始化。
sudo dd if=/dev/xvda of=/dev/null bs=1M
30720+0 records in
30720+0 records out
32212254720 bytes (32 GB, 30 GiB) copied, 504.621 s, 63.8 MB/s
但是,我仍然收到“设备上没有剩余空间”错误。我已经多次重启了实例,我仍然看到同样的错误。
更新1:我有大量4-10KB的小文件。所以,我的 inode 快用完了。请让我知道如何增加 inode(在 ext4 分区上)?谢谢。
df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 497270 371 496899 1% /dev
tmpfs 504717 539 504178 1% /run
/dev/xvda1 1966080 1966080 0 100% /
tmpfs 504717 1 504716 1% /dev/shm
tmpfs 504717 4 504713 1% /run/lock
tmpfs 504717 18 504699 1% /sys/fs/cgroup
/dev/xvdg 5242880 39994 5202886 1% /data2
tmpfs 504717 10 504707 1% /run/user/1001
请让我知道如何解决此错误。
最佳答案
如果您使用的是 M4、M5、T2 和 T3 等新一代 EC2 实例类型,则无需重新初始化卷。
您还必须在 EC2 实例上扩展您的卷:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recognize-expanded-volume-linux.html
如我所见,您的 Inode 已满,请尝试使用以下命令查找目录:
for i in /*; do echo $i; find $i |wc -l; done
然后,找到目录后,执行:
for i in /path/to/directory/*; do echo $i; find $i |wc -l; done
之后使用以下命令删除这些文件:
rm -rf /path/to/fileorfoldername
由于您不想删除这些文件,因此您必须使用 mke2fs 和 -I 参数创建一个新的文件系统来确定 inode 大小,或者继续增加您的根卷。
这是一个类似的问题:
https://unix.stackexchange.com/questions/26598/how-can-i-increase-the-number-of-inodes-in-an-ext4-filesystem
此外,您可以将文件移动到辅助驱动器。
关于amazon-web-services - 即使在 EC2 上增加卷和分区大小后,设备上也没有剩余空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52472467/