На устройстве не осталось места даже после увеличения объема и размера раздела в EC2 - PullRequest
0 голосов
/ 24 сентября 2018

У меня есть экземпляр EC2 с 2 томами EBS.В корневом томе я увеличил размер тома.

Сначала я изменил размер тома на консоли .Затем, следуя этой инструкции, расширил раздел, следуя этой инструкции .

Однако при выполнении любой команды на устройстве не осталось места.

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

В нижней части руководство сказал,

Если увеличенное доступное пространство на вашем томе остаетсяневидимый для системы, попробуйте повторно инициализировать том, как описано в разделе Инициализация томов Amazon EBS.

Поэтому я следовал инструкции по повторной инициализации тома .

Я использовал 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-10 КБ.Итак, у меня заканчиваются иноды.Пожалуйста, дайте мне знать, как увеличить 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

Пожалуйста, дайте мне знать, как устранить эту ошибку.

Ответы [ 2 ]

0 голосов
/ 24 сентября 2018

У вас заканчиваются inode в вашем / (корневом) каталоге.поэтому для его отладки вам понадобится:

  1. Найти, какие inode-ы указывают или открывать файлы, например, for i in /*; do echo $i; find $i |wc -l; done

  2. Теперь найдите каталоги, которые занимают больше времени, а затем удалите этот каталог

0 голосов
/ 24 сентября 2018

Вам не нужно повторно инициализировать тома, если вы используете новые типы экземпляров EC2, такие как M4, M5, T2 и T3.

Вы также должны расширить свой том на экземпляре 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

Кроме того, вы можете переместить файлы на дополнительный диск.

...