Страница 1 из 1
Система загружается со старого ядра, после установки нового?
Добавлено: 2010-09-29 14:28:37
Lexxxxx
Доброго дня!
Встал вопрос обновления OS FreeBSD 7.2 до 7.3.
Все делал стандартно (уже 2-3 раза подряд):
Код: Выделить всё
+ make buildworld
make kernel KERNCONF=YOUR_KERNEL_HERE
<reboot in single user>
mergemaster -p
make installworld
make delete-old
mergemaster
<reboot>
И каждый раз система загружается со старого ядра, которое было собрано Oct 28 01:17:13 NOVT 2009:
Код: Выделить всё
sysctl -a | grep -i kern
kern.ostype: FreeBSD
kern.osrelease: 7.2-RELEASE
kern.osrevision: 199506
kern.version: FreeBSD 7.2-RELEASE #1: Wed Oct 28 01:17:13 NOVT 2009
Уже отдельно делал make clean несколько раз и make cleandepend.
Все в пустую. И ядро отдельно пересобирал (и GENERIC и свое кастомное).
Файлы в директории обновляются (по дате смотрю), результат все один:
Код: Выделить всё
sysctl -a | grep -i kernel
kern.bootfile: /boot/kernel/kernel
kern.module_path: /boot/kernel;/boot/module
На сервере разваленный GMIRROR с одним диском в статусе degraded. Может ли это быть тому причиной?
Или сервер скомпрометировали? И может стоит какой "зверек", который блочит?
rkhunter ругается на новые биннарники, которые появились после установки "мира". Никакой подозрительной активности не замечал.
В чем может быть причина?
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 14:33:45
Neus
make installkernel пробовал делать?
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 14:40:33
Lexxxxx
Да... пробовал и по старинке:
Код: Выделить всё
cd src/sys/${arch}/conf
config KERNEL_NAME_HERE
cd ../compile/KERNEL_NAME_HERE
make depend
make
make install
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 14:54:18
Гость
YOUR_KERNEL_HERE переименуйте в имя в верхнем регистре без всяких подчеркиваний
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 15:00:55
Lexxxxx
LOL))) Ну естественно, там я указывал название своего ядра. Без этого ничего не получилось бы

Эти строки взяты из /usr/src/UPDATE
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 15:03:15
vadim64
Neus писал(а):make installkernel пробовал делать?
товарисч имел ввиду что вы херово делали либо херово описали что делали.
handbook писал(а):
Building a Kernel
Change to the /usr/src directory:
# cd /usr/src
Compile the kernel:
# make buildkernel KERNCONF=MYKERNEL
Install the new kernel:
# make installkernel KERNCONF=MYKERNEL
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 15:14:36
Lexxxxx
Может плохо объяснил... вот:
Код: Выделить всё
# head /root/00.make.installkernel
Script started on Wed Sep 29 10:27:51 2010
root@ns2:>make installkernel KERNCONF=MOE_YADRO
--------------------------------------------------------------
>>> Installing kernel
--------------------------------------------------------------
cd /usr/obj/usr/src/sys/MOE_YADRO; MAKEOBJDIRPREFIX=/usr/obj MACHINE_ARCH=amd64 MACHINE=amd64 CPUTYPE= GROFF_BIN_PATH=/usr/obj/usr/src/tmp/legacy/usr/bin GROFF_FONT_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/groff_font GROFF_TMAC_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/tmac PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr/sbin:/usr/bin make KERNEL=kernel install
thiskernel=`sysctl -n kern.bootfile` ; if [ ! "`dirname "$thiskernel"`" -ef /boot/kernel ] ; then chflags -R noschg /boot/kernel ; rm -rf /boot/kernel ; else if [ -d /boot/kernel.old ] ; then chflags -R noschg /boot/kernel.old ; rm -rf /boot/kernel.old ; fi ; mv /boot/kernel /boot/kernel.old ; sysctl kern.bootfile=/boot/kernel.old/"`basename "$thiskernel"`" ; fi
kern.bootfile: /boot/kernel/kernel -> /boot/kernel.old/kernel
mkdir -p /boot/kernel
install -p -m 555 -o root -g wheel kernel /boot/kernel
пропускаем ~1500 строк вывода.... и концовка:
Код: Выделить всё
tail /root/00.make.installkernel
===> zlib (install)
install -o root -g wheel -m 555 zlib.ko /boot/kernel
install -o root -g wheel -m 555 zlib.ko.symbols /boot/kernel
===> zyd (install)
install -o root -g wheel -m 555 if_zyd.ko /boot/kernel
install -o root -g wheel -m 555 if_zyd.ko.symbols /boot/kernel
kldxref /boot/kernel
root@***:>exit
Script done on Wed Sep 29 10:30:06 2010
Есть еще:
Код: Выделить всё
# ls -l | grep 00.make
-rw-r--r-- 1 root wheel 2479197 Sep 29 10:26 00.make.buildkernel
-rw-r--r-- 1 root wheel 19123856 Sep 29 00:49 00.make.buildworld
-rw-r--r-- 1 root wheel 82108 Sep 29 10:30 00.make.installkernel
-rw-r--r-- 1 root wheel 1125600 Sep 29 17:44 00.make.installworld
Какой показать?
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 15:17:52
vadim64

сурово
пожалуйста, ядро переименуте в MOEYADRO и попробуйте делать не скриптами а как я цитировал хэндбук в предыдущем посте
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 15:21:14
Lexxxxx
Кстати:
Код: Выделить всё
# in all cases
make kernel KERNCONF=GENERIC
# this makes and installs the new kernel
# but copies the current kernel to /boot/kernel.old
# before doing so
# you will also see the following
make buildkernel KERNCONF=GENERIC
make installkernel KERNCONF=GENERIC
# the above two command have exactly the same effect as
# make kernel KERNCONF=GENERIC
# if you like typing two lines use the above method
http://www.zytrax.com/tech/survival/freebsd-update.html
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 15:22:25
Lexxxxx
vadim64 писал(а):
сурово
пожалуйста, ядро переименуте в MOEYADRO и попробуйте делать не скриптами а как я цитировал хэндбук в предыдущем посте
Да, я уже заменил в исходном тексте название ядра, дабы не светить его по определенным соображениям.
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 15:32:53
vadim64
чувак, харош уже. ещё раз говорят, делай по хэндбуку
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 19:21:12
Lexxxxx
Удалил весь /usr/src
Обновил через cvsup
Код: Выделить всё
# cd /usr/src
# make buildkernel KERNCONF=MYKERNEL
# make installkernel KERNCONF=MYKERNEL
на выходе, после ребута:
Код: Выделить всё
# uname -a
.... FreeBSD 7.2-RELEASE #1: Wed Oct 28 01:17:13 NOVT 2009 ....
Еще будут версии?
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 19:39:24
Гость
версий мульен
но для этого нужно фоум превращать в чат
по делу вы бы и сами ручкми и глазками проверили все файлы
начиная от того какое ядро в итоге собирается до момента когда вы его установили
и перегрузили и проверили какое загрузилось
инедт по файлу всегда рулят да?
кстати такая тема уже на форуме была, не помню чем закончилась - потому что не интересно было следить за ней
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 19:53:44
Lexxxxx
Гость писал(а):инедт по файлу всегда рулят да?
Не уверен, что я правильно понял, о чем речь?
Может полный реинстал? Или разбирать до конца? (понятно дело мне решать....)
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 19:58:41
Гость
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 20:38:52
Гость
да даже одного md5 хватит что бы понять какое ядро собирается и какое инсталлируется
и уж какое грузится
а потом уже выяснять где рога ростут
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 21:01:21
Lexxxxx
Хм.... я правильно понимаю, что правильно сравнил... и ядра разные?
Код: Выделить всё
uname -a
FreeBSD secrethostname.ru 7.2-RELEASE FreeBSD 7.2-RELEASE #1: Wed Oct 28 01:17:13 NOVT 2009 root@secrethostname.ru:/usr/src/sys/amd64/compile/SECRETYADRONAME amd64
вот:
Код: Выделить всё
# md5 /boot/kernel/kernel && md5 /usr/src/sys/amd64/compile/SECRETYADRONAME/kernel
MD5 (/boot/kernel/kernel) = 19cda8d15278b94b8d33cbbb58d0e4c3
MD5 (/usr/src/sys/amd64/compile/SECRETYADRONAME/kernel) = 0cb7f9012cfbf69bc41dda882df609ec
Достаточно корректно вручную скопировать /usr/src/sys/amd64/compile/SECRETYADRONAME/kernel в /boot/kernel?
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-29 21:21:56
Гость
ну если вы уверены что именно то ядро что надо
потому что на этапе make installkernel оно там еще может стрипнуться
а так в принципе никто не мешает его вообще в / кинуть
а потом в бутлоадере сделать unload kernel load kernel_new
м?
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-30 12:09:12
Lexxxxx
Кажется, я нашел в чем причина. Как не странно, набор команд здесь не причем!
Приблизился к решению, но появилась другая загвоздка:
1. Закинул в /boot/kernel.live ядро от FreeBSD 7.3 с Live FS ISO
2. Попытка загрузить ядро не увенчалась успехом, загрузчик его просто не видел!
3. в бутлоадере посмотрел список доступных ядер, а его там просто нет! Там всего их три: kernel, kernel.old и kernel-generic.
....
UPDATED!
....
Господа, моя конечно вина Не сообразил сразу! НО! В самом начале, с первом топике я написал:
На сервере разваленный GMIRROR с одним диском в статусе degraded. Может ли это быть тому причиной?
Так вот... система работала на втором диске, т.е. /dev/ad1, а диск, который болтался был /dev/ad0. Он присутствовал физически и содержал в на себе разделы! Рейд развалился до пересборки системы и ядра!
А теперь вопрос, с какого диска система грузилась? Ну конечно же с /dev/ad0, который содержал на себе /boot со старым ядром.
А все дискусии и носотыкания-в-хандбук увели меня только в сторону.
Благодарю Гостя с его постами от 2010-09-30 1:21:56, 2010-09-30 0:38:52
Именно они помогли докопаться до истины.
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-09-30 12:10:45
Lexxxxx
Ура!
Код: Выделить всё
# uname -a
FreeBSD ***.****.ru 7.3-STABLE FreeBSD 7.3-STABLE #1: Thu Sep 30 19:11:42 NOVST 2010 root@:/usr/obj/usr/src/sys/MOYESUPERYADRO amd64
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-10-01 11:27:57
manefesto
подозреваю CSUP конфиг был кривой
Re: Система загружается со старого ядра, после установки нов
Добавлено: 2010-10-01 11:49:44
Lexxxxx
Последние два поста читали? Проблема решена проблема была в том, что система грузилась со старого /boot