Главная страница | Добавить в избранное    
   

 

» Статьи » Перекомпиляция/пересобирание ядра/kernel FreeBSD

   
main1
pix
 

Перекомпиляция/пересобирание ядра/kernel FreeBSD

Статьи  
pix pix pix
Рано или поздно (скорее всего рано :) ) вам понадобится изменить ядро системы. Например включить ipfw, или просто почистить от ненужного мусора. Существует мнение, что это сложно и опасно. Ничего подобного! И Вы в этом сейчас убедитесь...

Рассмотрим весь процесс пересборки ядра:

1. Стандартный файл ядра, с которым устанавливается система, и который содержит настройки, рассчитанные на загрузку ОС, в большинстве конфигураций находится здесь: /sys/i386/conf/GENERIC. Это файл не надо править НИ ПРИ КАКИХ СИТУАЦИЯХ. Для нового ядра нужно скопировать GENERIC в туже папку под другим названием (в моем случае /sys/i386/conf/NEWKERNEL).

2. Теперь давайте его отредактируем, включив IPFW (для примера). Вы можете использовать любой редактор текстовых файлов, который вам больше нравится. Я предпочитаю "edit".

#edit /sys/i386/conf/NEWKERNEL

Первое, что надо изменить это параметр "ident GENERIC" на "ident NEWKERNEL" (в моем случае). Именно по этому параметру компилятор будет находить требуемый для компиляции конфиг ядра, а не по названию файла и вполне логично делать их одинаковыми (ident и имя файла).

Все изменения (кроме закомментирования ненужного оборудования) я делаю в самом конце файла. И вам советую поступать так же, не будет долгих поисков "И где же я тут правил?". Добавим в конец файла следующие строки:

options IPFIREWALL # включаем поддержку ipfw на уровне ядра
options IPDIVERT # включаем поддержку перенаправления пакетов (нужно для NATD)

Вышли с сохранением изменений. Конфиг для компиляции ядра с поддержкой ipfw готов.

3. Сборка и установка нового ядра.

переходим в каталог /usr/src/: "# cd /usr/src/"
собираем ядро: "# make BUILDKERNEL KERNCONF=NEWKERNEL" вместо NEWKERNEL должен стоять ident вашего конфига
устанавливаем ядро: "# make INSTALLKERNEL KERNCONF=NEWKERNEL" вместо NEWKERNEL должен стоять ident вашего конфига

Если при выполнении сборки выдана ошибка и сборка остановлена, значит вы допустили ошибки в конфиге. Понятно что их нужно исправить :) И будьте осторожны! Если Вы работаете на удаленной машине, не трогайте сетевые настройки, и не включайте ipfw в закрытый режим, не проверив работоспособность его конфигурации на другой машине.

Все! Осталось только перезагрузиться: "shutdown -r now"



P.S. Если у вас машина не однопроцессорная то вам следует компилировать ядро SMP от GENERIC отличается одной строчкой!




Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
 
Автор: hellevil | 8-08-2007, 12:04 | Просмотров: 10 257
 
pix
  Новости по теме    
pix pix pix
  • Настройка/установка natd/маршрутизатора в FreeBSD на основе natd+ipfw
  • FreeBSD - fail2ban
  • FreeBSD для стола
  • Обновление FreeBSD
  • Все об эмуляции Linux во FreeBSD
  •  
     
     
    pix
     
    pix
    search
    navi
    poll
    calendar
    «    Апрель 2024    »
    ПнВтСрЧтПтСбВс
    1234567
    891011121314
    15161718192021
    22232425262728
    2930 
    main4
    pix pix pix

    2007 © www.DesktopBSD.ru
    Все права сохранены