ext3_dx_add_entry: Directory index full!

На некоторых серверах стало появляться в логах сообщение «ext3_dx_add_entry: Directory index full!»…

Связано это с тем что достигнуто максимальное число файлов в папке, допустимое для файловой системы ext3. Это не редкость на старых почтовых серверах, на которых каждое почтовое сообщение хранится отдельным файлом и пользователи пренебрегают спам-фильтром.

Каталоги с наибольшим числом файлов можно попробовать поискать с помощью следующих команд:

find <точка монтирования файловой системы> -type d | ( while read A; do B=`ls -l "$A" | wc -l`; if [ "$B" -gt 999 ] ; then echo $B $A; fi ; done)

или

find <точка монтирования файловой системы> -type d | ( while read A; do B=`ls -l "$A" | wc -l`; echo $B $A; done) | sort -n

С помощью следующей команды можно получить список каталогов с указанием используемых inode в каждой из них, находясь в нужном каталоге:

echo "Detailed Inode usage for: $(pwd)" ; for d in `find -maxdepth 1 -type d |cut -d\/ -f2 |grep -xv . |sort`; do c=$(find $d |wc -l) ; printf "$c\t\t- $d\n" ; done ; printf "Total: \t\t$(find $(pwd) | wc -l)\n"

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.