Число inode в разделе, не совпадающем с максимальным числом inode, которое должен поддерживать раздел - PullRequest
1 голос
/ 14 января 2010

Мы используем Amazon EBS для хранения большого количества небольших файлов (<10 КБ) в трехуровневой структуре каталогов. </p>

 ~/lists# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             9.9G  3.9G  5.5G  42% /
tmpfs                 854M     0  854M   0% /lib/init/rw
varrun                854M   64K  854M   1% /var/run
varlock               854M     0  854M   0% /var/lock
udev                  854M   80K  854M   1% /dev
tmpfs                 854M     0  854M   0% /dev/shm
/dev/sda2             147G   80G   60G  58% /mnt
/dev/sdj              197G   60G  128G  32% /vol

Рассматриваемый раздел / vol (размер: 200 ГБ)

 ~/lists# df -i
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/sda1             655360   26541  628819    5% /
tmpfs                 186059       3  186056    1% /lib/init/rw
varrun                186059      31  186028    1% /var/run
varlock               186059       2  186057    1% /var/lock
udev                  186059     824  185235    1% /dev
tmpfs                 186059       1  186058    1% /dev/shm
/dev/sda2            19546112 17573097 1973015   90% /mnt
/dev/sdj             13107200 13107200       0  100% /vol
 ~/lists# sudo /sbin/dumpe2fs /dev/sdj | grep "Block size"
dumpe2fs 1.41.4 (27-Jan-2009)
Block size:               4096

Количество инодов для раздела / объем составляет 13 миллионов +. Размер блока равен 4096. Принимая размер блока равным 4096, число инодов, которые должен поддерживать раздел 200 ГБ (ext3), составляет 52 млн. + (Расчет максимального инода: размер тома в байтах / 2 ^ 12). Так почему же раздел поддерживает только 13 миллионов inode?

1 Ответ

2 голосов
/ 14 января 2010

Я почти уверен, что при создании тома иноды распределяются статически (в данном случае используется mfs.ext3). По какой-то причине mkfs.ext3 решил зарезервировать 13 миллионов инодов, и теперь вы больше не можете создавать файлы.

См. 2001 обсуждение inode

На странице Wikipedia ext3 есть сноска, объясняющая это более кратко: ссылка на вики

Кроме того, для каждого файла (не для блока) выделяются inode, поэтому существует только 13M inode - mkfs.ext3 должен быть сконфигурирован со средним размером файла 8 КБ, который мог бы объяснить возникшую проблему.

...