>[оверквотинг удален]
>>> Спасибо большое. Сейчас буду пробовать.
>>> Как посмотреть, что и бинарники и система синхронизированы ? (нет не стыдно
>>> такое спрашивать, хоть и не первое ядро собираю....). Видимо пора поспать.
>> Вот допустим у меня
>> FreeBSD gw-151-143.cnm.local 8.2-RC3 FreeBSD 8.2-RC3 #1: Mon Feb 14 20:20:52 EET 2011
>> root@gw-151-20.cnm.local:/usr/src/sys/amd64/compile/GENERIC amd64
>> Это значит, что рассинхронизированы, потому. что
>> 8.2-RC3
>> FreeBSD 8.2-RC3 #1
>> Да ?нет, вы увидели только ядро, оно 8.2-RC3
> Интересно получается.
> Делаю
> [root@www /usr/home/kris]# file /bin/ls
> /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked (uses
> shared libs), for FreeBSD 8.1, stripped
> И меня смущает for FreeBSD 8.1
> Ведь это не правильно ?
да, это очень нехорошо, система может очень ненормально работать.
в xBSD система - это то что называется binaries/бинарники и ядро, должны быть
синхронизированы, те система и ядро должны быть одной версии.
Те (то есть), если мы выполнили csup или svn - апгрейд sources, то далее мы должны:
зачищаем /usr/obj - туда кладутся вновь собранные бинарники и ядро:
# rm -rf /usr/obj/*
переходим в sources системы (и все дальнейшие сборки make выполняем из этой директории):
# cd /usr/src
собираем НОВУЮ СИСТЕМУ/новые бинарники (только собираем, без установки, новые собранные
бинарники и библиотеки будут в /usr/obj):
# make buildworld
собираем с помощью новых бинарников и библиотек - ядро
# make buildkernel KERNCONF=NAME
если все собралось без проблем, устанавливаем новое ядро:
# make installkernel KERNCONF=NAME
выполняем подготовительный mergemaster:
# mergemaster -p
устанавливаем ранее собранную новую систему:
# make installworld
# make delete-old
# mergemaster
# reboot
если все хорошо после перезагрузки, то вычищаем старые библиотеки:
# cd /usr/src
# make delete-old-libs
Но полный и правильный алгоритм расписан в:
# less /usr/src/Makefile
# less /usr/src/UPDATING (в разделе COMMON ITEMS)
попробуйте все это проделать на тренировочной системе или установите
виртуальную машину VirtualBox и под ней установите FreeBSD и попробуйте
сборку системы и сборку ядра.
прим. Если бинарники системы, ядра и sources одной версии, то сборку ядра
можно производить БЕЗ СБОРКИ системы:
- допустим у меня установлена система FreeBSD 7.3-RELEASE
- исходники/sources тоже для 7.3-RELEASE
- ядро GENERIC
я хочу пересобрать ядро под себя, так как исходя из верхнего у меня система и ядро
синхронизированы, sources тоже для 7.3-RELEASE, я могу пересобрать и установить
ТОЛЬКО ядро с нужными мне параметрами:
# cd /sys/arch/conf
# cp GENERIC MYKERNEL
# vi MYKERNEL (изменяю по себя)
где arch - требуемая архитектура, i386 или amd64 или ...
собираю и устанавливаю новое ядро:
# rm -rf /usr/obj/*
# cd /usr/src
# make buildkernel KERNCONF=MYKERNEL
# make installkernel KERNCONF=MYKERNEL
# reboot