---
title: "Минимальное ядро и загрузка с ZFS"
slug: "minimalnoe-yadro-i-zagruzka-s-zfs"
date: "2013-11-22T18:06:00+04:00"
author: "at-hacker"
tags:
  - "FreeBSD"
  - "Tips&Tricks"
  - "Troubleshooting"
  - "Администрирование"
canonical_url: "https://at-hacker.in/?go=all/minimalnoe-yadro-i-zagruzka-s-zfs/"
---
Попытался тут оторвать все модули и жёстко впаять необходимое в ядро. Система грузится с ZFS, а также используется AIO для самбы, ибо сильно увеличивает скорость работы самбовых шар. Проверил как-то ради шутки — без AIO гиговый файл копировался 9 минут 10 секунд, с включенным AIO — 1 минуту 45 секунд. Разница примерно 6 раз.

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

```
options VFS_AIO
```

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

```
MODULES_OVERRIDE=zfs opensolaris
```

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

Правим make.conf:

```
MODULES_OVERRIDE=zfs opensolaris krpc
```

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