Вопрос такой. При разбивке диска под установку gentoo выделил отдельный раздел для /usr/portage (примерно 2Гб) и создал на нем файловую систему Ext4. При распаковке дерева портежей (несколько раз пробовал) постоянно сыпались ошибки. Тогда я еще в линуксе совсем юн был, но гугление выяснило, что при размере раздела в 2 Гб и таком количестве мелких файлов просто кончились inode. Причем увеличение раздела до 5 Гб не помогло, инодов все равно не хватало. Помучался малость, забил и накатил reiserfs на этот раздел (как советовали на одном из форумов). После этого распаковалось нормально. Вопрос - можно ли в ext4 увеличить количество inode без увеличения размера раздела? Где об этом можно поподробнее почитать?
Кончились inode
Где об этом можно поподробнее почитать?
man mkfs.ext4
man mke2fs.conf
less /etc/mke2fs.confдобавлю конкретики: mke2fs ключ -N
Вопрос - можно ли в ext4 увеличить количество inode без увеличения размера раздела? Где об этом можно поподробнее почитать?
tune2fs
только учтите - должна быть включена фича ФС resize_inode. Проверяйте в tune2fs -l /dev/sdXY
добавлю конкретики: mke2fs ключ -N
можно и без форматирования обойтись. Или в вашей генте нельзя?
чего-т я пробежался по ману и не увидел, как изменить количество инодов. просвятитите уж...
чего-т я пробежался по ману и не увидел, как изменить количество инодов. просвятитите уж...
man mkfs.ext4
-N number-of-inodes
Overrides the default calculation of the number of inodes that should be reserved for the filesystem (which is based on
the number of blocks and the bytes-per-inode ratio). This allows the user to specify the number of desired inodes
directly.
man tune2fs
-O [^]feature[,...]
Set or clear the indicated filesystem features (options) in the filesystem. More than one filesystem feature can be
cleared or set by separating features with commas. Filesystem features prefixed with a caret character ('^') will be
cleared in the filesystem's superblock; filesystem features without a prefix character or prefixed with a plus character
('+') will be added to the filesystem.
...
resize_inode
Reserve space so the block group descriptor table may grow in the future. Tune2fs only supports clearing
this filesystem feature.
...
мда... видимо ещё не реализовали. значит только mkfs...
man mkfs.ext4
про это я сам писал
man tune2fs
а это, просто опция, которая (моя догадка) при изменении размеров самой ФС будет менять кол-во инодов... без форматирования опять же не обойтись...
мда... видимо ещё не реализовали. значит только mkfs...
хмм... сомневаюсь, что реализуют.
а это, просто опция, которая (моя догадка) при изменении размеров самой ФС будет менять кол-во инодов... без форматирования опять же не обойтись...
дык... любопытно, что сейчас её можно только ОТКЛЮЧИТЬ. smile
сомневаюсь, что реализуют.
ну не знаю. Не так-уж оно и надо на самом деле. Что-то у вас там не так в вашей генте... Даже на небольших разделах миллионы инодов по умолчанию создаются. Или у вас раздел совсем крохотный? А зачем жадничаете? Вот mkfs и решила, что на таком мизерном разделе и файлов будет немного... Я с таким никогда не сталкивался. Помню обратную ситуацию - когда mkfs пожрала немеренно гигабайт под эти дурацкие иноды на разделе для фильмов (фильмов-то на диск мало можно натолкать). Пришлось занизить до 500000. Появилось много лишних гигов. :cool:
Что-то у вас там не так в вашей генте...
[console]
lupo@gentoo-laptop ~ % cd /usr/portage
lupo@gentoo-laptop portage % find . | wc -l
141573
[/console]
Немного не точно — у меня каталог с архивами исходных текстов вынесен отдельно:
[console]
gentoo-laptop ~ % cd /home/users/portage [gentoo-laptop][12:03]
gentoo-laptop portage % find . | wc -l [gentoo-laptop][12:03]
115660
[/console]
Не знаю, много это или мало почти 270000 файлов для раздела в 2 Гб :o
Не знаю, много это или мало почти 270000 файлов для раздела в 2 Гб
мало. по мнению mkfs.ext4
вы можете сами посмотреть, что она думает, выполнив
[console]tune2fs -l /dev/sdaXY[/console]
вы можете сами посмотреть, что она думает, выполнив
Собственно, я спрашивал в контексте обсуждения данной темы.
Сам я почти везде использую ReiserFS, проблем пока не замечал.
Собственно, я спрашивал в контексте обсуждения данной темы.
ну вот вам в контексте:
/dev/sda3 132G 78G 54G 60% /mnt/sda3
Inode count: 8732672
Block count: 34921293
Reserved block count: 0
Free blocks: 14086795
Free inodes: 8610975
как видите, на раздел в 132Г выделяется по дефолту 8 732 672 инодов, что составляет 66156 инодов на гиг.
-i bytes-per-inode
Specify the bytes/inode ratio. mke2fs creates an inode for every bytes-per-inode bytes of space on the disk. The larger
the bytes-per-inode ratio, the fewer inodes will be created. This value generally shouldn't be smaller than the block-
size of the filesystem, since in that case more inodes would be made than can ever be used. Be warned that it is not
possible to expand the number of inodes on a filesystem after it is created, so be careful deciding the correct value for
this parameter.
inode_ratio
This relation specifies the default inode ratio if the user does not specify one on the command line, and the filesystem-
type specific section of the configuration file does not specify a default inode ratio.
как видите, на раздел в 132Г выделяется по дефолту 8 732 672 инодов, что составляет 66156 инодов на гиг.
ну так... на 2х гиговом разделе быдет ~66156*2, что меньше 141573(и это мы только файлы считали). простая арифметика показывает, что инодов не хватает...
для портеджей лучше уменьшить размер блока до 1к... ибо файлы всё равно мелкие, а ещё лучше обратится reiser'у.
ну так... на 2х гиговом разделе быдет ~66156*2, что меньше 141573(и это мы только файлы считали). простая арифметика показывает, что инодов не хватает...
вы не совсем правы. этот параметр может зависеть от объёма ФС. Для маленьких разделов инодов может выделятся больше на гиг.
чем гадать и мучить калькулятор, лучше-бы глянули mke2fs.conf
для портеджей лучше уменьшить размер блока до 1к... ибо файлы всё равно мелкие,
они что, почти все меньше 1К? дайте-ка статистику по размеру глянуть?
а ещё лучше обратится reiser'у.
....
они что, почти все меньше 1К? дайте-ка статистику по размеру глянуть?
скрипт на скорую руку не сооружу, чтобы подсчитать... <1K не много, но амболютное большенство <4K.... в любом случае большой размер файлов нам не нужен...
вы не совсем правы. этот параметр может зависеть от объёма ФС. Для маленьких разделов инодов может выделятся больше на гиг.
чем гадать и мучить калькулятор, лучше-бы глянули mke2fs.conf
от размера он только для совсем мелких(порядка нескольких метров) зависит...
[console]
# tune2fs -l /dev/sda2
tune2fs 1.41.12 (17-May-2010)
Inode count: 122160
Block count: 487974
Free blocks: 223291
Free inodes: 97381
Block size: 4096
[/console]