Минимальное ядро и загрузка с ZFS

22 ноября 2013, 18:06

Попытался тут оторвать все модули и жёстко впаять необходимое в ядро. Система грузится с ZFS, а также используется AIO для самбы, ибо сильно увеличивает скорость работы самбовых шар. Проверил как-то ради шутки — без AIO гиговый файл копировался 9 минут 10 секунд, с включенным AIO — 1 минуту 45 секунд. Разница примерно 6 раз.

В общем, пока (на момент версии FreeBSD 9.2) выясняется, что zfs.ko и opensolaris.ko в ядро не включить, можно только модулями ядра грузить. Добавил в ядро только AIO:

options VFS_AIO

И прописал в make.conf:

MODULES_OVERRIDE=zfs opensolaris

Собрал ядро, установил, попытался перезагрузиться и получил облом. При загрузке система стала утверждать, что не знает, откуда смонтировать root. Оказывается, нужен ещё модуль krpc.ko, отвечающий за реализацию RPC в солярке (откуда и портирована ZFS). Причём судя по обрывочным сведениям, нужен он только на 64-битной фре, на 32-битной вроде как нет. Проверять, честно говоря, влом :-)

Правим make.conf:

MODULES_OVERRIDE=zfs opensolaris krpc

Пересобираем ядро, ставим, перезагружаемся — и всё взлетает нормально.

1 комментарий
Алексей Крылов

Спасибо огромное за статью. Весь интернет облазил в поисках решения подобной проблемы.

Автор блога

Да всегда пожалуйста :) Рад, что пригодилась информация :)

Ваш комментарий
адрес не будет опубликован

ХТМЛ не работает

Ctrl + Enter
Популярное