Назад | Перейти на главную страницу

Ускорение создания большой файловой системы ext3 на CentOS 5

Мы создаем большой резервный раздел ext3 на RAID-массиве 16 ТБ, и на выполнение mke2fs ушло 2,5 часа.

Есть ли какие-нибудь известные приемы, которые можно использовать, чтобы сократить это время?

Цель состоит в том, чтобы сократить время, чтобы снова встать на ноги, если произойдет катастрофа, и нам придется воссоздать эту файловую систему. Я вижу такие параметры, как lazy_bg и uninit_groups, но они, похоже, предназначены для файловых систем ext4, что для нас пока не актуально.

На всякий случай, если вы можете рассмотреть возможность использования другой файловой системы, этот вопрос вызвал у меня интерес, поэтому я протестировал создание файловой системы на томе 200 ГБ. Результаты:

ext3:
    real    1m18.101s
ext4:
    real    0m56.850s
xfs:
    real    0m1.878s

200 ГБ - это довольно далеко от 16 ТБ, но я думаю, что xfs - это безопасный выбор для того, что вы ищете, если вы можете его выбрать. Также как своего рода практическое правило, я не думаю, что вы сможете выйти за рамки скорости создания ext4 с помощью ext3 с использованием специальных параметров, но кто-то с более глубокими знаниями может доказать мою неправоту.

Если у вас нет тонны крошечных файлов (а с объемом в 16 ТБ у вас, вероятно, нет), вы можете уменьшить количество inode, и это значительно ускорит создание файловой системы. Вариант -i (bytes), который принимает в качестве параметра количество байтов. Для каждого (байта) будет создан индексный дескриптор. Мне повезло с 4194304 (4 МБ).

Достаточно памяти? У вас 64 бит?

Соображения при создании файловых систем ext3 содержит довольно много рекомендаций по оптимизации создания файловой системы.

Я проверил исходный код e2fsprogs CentOS 5, его версии 1.39-23 поддерживают функцию lazy_bg, хотя ее нет в списке на странице руководства.