Σ публикаций: 133
#лучшедома
Любые ответы на любые вопросы!

Компиляция ядра FreeBSD. Пошаговое руководство.

В статье описано как компилировать ядро FreeBSD. При правильной конфигурации размер ядра может намного уменьшиться.


Для того, чтобы вы могли скомпилировать свое ядро вам надо было с диска установить

src - Source for everything but encryption


и потом выбрать

sys - /usr/src/sys (FreeBSD kernel).

Доставить можно через /stand/sysinstall.
Считаем, что исходники ядра вы установили.
Под пользователем root идем в папку /usr/src/sys/i386/conf.
Копируем файл GENERIC, например в mykernel. Полученный файл и будем править.
Если у вас машина Pentium4, то советую сразу закомментировать строки:

cpu I386_CPU
cpu I486_CPU
cpu I586_CPU

пусть наша машина будет настроена на определенный процессор и не распыляется на всякую фигню ;)
Можно отключить не используемы устройства, что уменьшит размер ядра и соответственно нагрузку на процессор. Посмотреть какие у вас устройства можно командой dmesg, после загрузки компьютера.
Так же можно добавить устройства, которые по умолчанию не поддерживаются в ядре. Более подробно устройства описаны в файл LINT для FreeBSD ветки 4.х, и в файле NOTES для FreeBSD ветки 5.х.

После того как мы отредактировали наш файл, можно приступить к его компиляции.
Нам надо будет выполнить следующие команды:

Код

1
2
3
4
5

config mykernel - конфигурим ядро
cd ../../compile/mykernel
make depend
make
make install - устанавливаем ядро



Если все прошло удачно, то все что нам надо это перезагрузиться.

Если вдруг перезагрузка не прошла нормально, то мы можем загрузиться со старым ядром. Для этого надо во время отсчета 9 сек. нажать любую клавишу и написать boot kernel.old.

Если загрузка прошла нормально, то мы получаем новое ядро и работаем в системе с обновленным ядром ;).

P.S. Советую перед экспериментами сохранить нормальное ядро, например под именем kernel.good и тогда если не загрузилось наше новое ядро, мы вместо kernel.old укажем boot kernel.good. Это предлагаю сделать, потому что при новом собирании ядра наш kernel.old перезапишется например не рабочим ядром и мы вообще не сможем загрузиться.

P.P.S. Сохранение хорошего рабочего ядра:
Для FreeBSD 4.x - команда cp /kernel /kernel.good
Для FreeBSD 5.x - команда cp -R /boot/kernel /boot/kernel.good

Второй способ обновления ядра:
Перейдите в каталог /usr/src.
# cd /usr/src

Соберите ядро.
# make buildkernel KERNCONF=MYKERNEL

Установите новое ядро.
# make installkernel KERNCONF=MYKERNEL

Замечание: Этот способ построения требует наличия всех исходных файлов систем. Если вы только установили исходные файлы ядра, то используйте традиционный способ, как описано выше.

MYKERNEL - конфигурационный файл вашего ядра, который для i386 находится в папке /usr/src/sys/i386/conf. Если не указывать параметр KERNCONF, то соберется ядро GENERIC.

Настройка vsftpd
Настройка vsftpd. FTP-сервер под управлением linux своими руками.
Настройка NAT
Настройка NAT (natd) на примере предоставления доступа к ресурсам внешней сети (интернет) из внутренней локальной сети
Настройка роутера на базе FreeBSD
Настройка роутера на базе FreeBSD
Настройка шлюза на FreeBSD
Пошаговое руководство по настройка интернет-шлюза на операционной системе FreeBSD
Построение шлюза с трансляцией адресов на двух интерфейсах во FreeBSD
Построение шлюза с трансляцией адресов на двух интерфейсах во FreeBSD
FreeBSD в качестве сервера доступа. Часть 3. Настройка FireWall
FreeBSD в качестве сервера доступа. Часть 3. Настройка FireWall
FreeBSD в качестве сервера доступа. Часть 2. Немного о безопасности
FreeBSD в качестве сервера доступа. Часть 2. Немного о безопасности
Страница сгенерирована за 0,0456 s
Наверх