/rootДзен'nix→ Пересборка Мира и ядра

30 июня, 2010

Пересборка Мира и ядра

Пересобрал мир и ядро на только что установленной фряке. Вот как было дело


После установки Фряки мне пришла в голову мысль, что неплохо было бы персобрать мир и ядро системы.
Дальше опишу свои действия и команды, а так же укажу источники информации, которыми я пользовался в процессе.

Итак, приступим

Для оптимизации компиляции нужно отредактировать /etc/make.conf
Пример make.conf можно найти в /usr/share/examples/make.conf
У меня получился вот так — http://killercoder.ru/zennix/Nastroyka_make_conf_v_FreeBSD

Обновляемся через cvsup как тут — http://killercoder.ru/zennix/Obnovlenie_ishodnikov_cherez_cvsup

Читаем тут — http://www.freebsd.org/doc/ru/books/handbook/makeworld.html

Загружаемся в однопользовательский режим:
После загрузки вводим:

# fsck -p
# mount -u /
# mount -a -t ufs
# swapon -a

Переходим в директорию с исходниками (у меня /usr/src/)

# cd /usr/src/

На этапе выбора архитектуры мира произошла накладка, дело в том что uname -a возвратил мне i386, а
dmesg | grep CPU — Athlon64 :)

Нужно было безболезненно перейти на другую архитектуру так как make buildkernel отказался запускаться с параметром в файле конфигурации ядра cpu HAMMER — это для 64х битных атлонов.
Google нашёл по этому поводу статью вот она — http://unixfaq.ru/index.pl?req=qs&id=527

Учитывая данные сведения сделал:

# make buildworld TARGET_ARCH = amd64

Сборка, запустилась. Я не очень силён в команде make, но кажется можно было бы запустить и с параметром -j4, а для amd64 возможно и -j8 для увеличения производительности и скорости сборки.

Дальше переходим 
Копируем ядро GENERIC для нужной нам платформы в удобное место в данном случае это ~/ # cp /usr/src/sys/amd64/conf/GENERIC ~/KERNEL_`date %d_%m_%Y`  Идею с именем нового ядра подсказал lissyara вот отсюда — http://www.lissyara.su/articles/freebsd/tuning/make_kernel/

Редактируем опции ядра при помощи любимого редактора, в моем случае это vi :)

# vi  KERNEL_01_07_2010

Свой конф приводить думаю бессмысленно, могу только сказать, что ознакомится с дополнительными параметрами ядра можно в файле /usr/src/sys/amd64/conf/NOTES и в /usr/src/sys/NOTES — это если вы понимаете по-английски :) я же пользовался опять же Гуглом и http://www.freebsd.org/doc/ru/books/handbook/kernelconfig-config.html,

Собираем ядро
При сборки ядра make buildkernel TARGET_ARCH=amd64 KERNCONF=KERNEL_01_07_2010 выдал ошибку, после перезагрузки компьютера, я повторил попытку, но команда не сработала, тогда я решил пересобрать ядро с командой

# make buildkernel TARGET_ARCH=amd64

Эта команда прошла и запустилась компиляция ядра.
После компиляции запустил установку нового ядра и make выдал ошибку

Error: Please set DESTDIR

Установил DESTDIR:

# export DESTDIR=/usr/src/

Запустил
# make installkernel TARGET_ARCH=amd64

Вроде пошла установка, но выскачела опять ошибка:

cd: can’t cd to /usr/obj/amd64/usr/sys/GENERIC

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *