>хочу обновить через CVS только ядро не трогая остальные пакеты
>для этого хочу supfile выставить src-sys только
>будет ли работать система? или обязательно ставить все пакеты src-all
из форума, lavr мне ответил
cut--------------
что есть upgrade методом cvsup:
1) скачивание свежих sources системы
2) сборка НОВОЙ системы (бинарников и библиотек), на основе собранных
бинарников и библиотек - сборка НОВОГО ядра. Вот почему, если производится
ПОДНЯТИЕ ВЕРСИИ/РЕЛИЗА системы, НЕЛЬЗЯ собирать ядро ТРАДИЦИОННЫМ - СТАРЫМ
методом: cd /sys/i386/conf; config ЯДРО; cd ../../compile/ЯДРО ... - почему? да потому что используется старый бинарник config и старые библиотеки из /usr/lib, в то время как НУЖНО ИСПОЛЬЗОВАТЬ вновь собранный
config и линковать ядро с НОВЫМИ собранными библиотеками (а вновь собранная система и библиотеки находятся в дереве /usr/obj/usr/...
3) сборка НОВОГО ЯДРА
4) установка нового ядра, это замена kernel на ВНОВЬ собранный, откат
старого в kernel.old и переключение в контексте ТЕКУЩЕГО (старого ядра)
- оно у нас загружено в память, переменной содержащей имя ядра, те оно
было kernel, а после make installkernel KERNCONF, эта переменная станет
kernel.old, ну это и понятно, ядро время от времени перечитывает себя
с диска. При этом, у нас до следующего шага в памяти СТАРОЕ ЯДРО и
в системе СТАРЫЕ БИНАРНИКИ и БИБЛИОТЕКИ
5) Вот тут все и начинается: make installworld - поверх старых бинарников
и библиотек у нас пишутся новые, причем часть старых может находится
в памяти, вот почему советуют этот кусок UPGRADE'а делать в single-user
mode. Разумеется после этой команды, Операционка НЕ БУДЕТ нормально
работать, так как рушатся таблицы и кеши процессов и тд и тп, соответственно - нужно ПЕРЕГРУЖАТЬСЯ, чтобы перейти НА РАБОТУ НОВОГО ЯДРА
с новыми бинарниками и библиотеками.
Допустим мы производили upgrade 4.x -> 4.y, НО ПРИ ЭТОМ У НАС В СИСТЕМЕ
были старые-рабочие binaries от 2.x в формате aout или elf от 3.x, и мы
хотим чтобы они продолжали работать!!! В этом случае перед пунктом 1)
необходимо в /etc/make.conf добавить нужное из:
COMPAT1X= yes
COMPAT20= yes
COMPAT21= yes
COMPAT22= yes
COMPAT3X= yes
#COMPAT4X= yes
тогда у нас будут собраны старые библиотеки, необходимые для наших
старых бинарников.
Порты, ВСЕ чтобы собрано ранее - будет работать, но для оптимальности,
лучше потихоньку ВСЕ пересобрать, заодно и bugfix и security в более
свежих портах будет в норме.
cut--------------------
http://www.opennet.me/openforum/vsluhforumID1/37385.html