Свое ядро

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
kharkov_max
капитан
Сообщения: 1811
Зарегистрирован: 2008-10-03 14:56:40

Свое ядро

Непрочитанное сообщение kharkov_max » 2015-02-17 11:14:35

День добрый.

Наблюдаю на freebsd10 Stable следующую странность
Собираю свое ядро

Код: Выделить всё

>> cat ./MYKERNEL
# Freebsd 10-Stable $

cpu<---><------>HAMMER
include><------>GENERIC
ident<-><------>MYKERNEL

#--------------------------------------
options><------>DEVICE_POLLING
options><------>HZ=1000
#--------------------------------------

options><------>IPFIREWALL
options><------>IPFIREWALL_VERBOSE
options><------>IPFIREWALL_VERBOSE_LIMIT=20
options><------>IPFIREWALL_NAT
options><------>LIBALIAS
options><------>DUMMYNET
options><------>ROUTETABLES=6
Хочу что бы к моим параметрам инклюдился стандартный конфиг ядра GENERIC
Пересобираю и инсталю ядро MYKERNEL, в результате uname -a показывает что ядро GENERIC

Делал по примеру конфига BHYVE.
На другом ПК все собирается и работает как нужно ...

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

guest
проходил мимо

Свое ядро

Непрочитанное сообщение guest » 2015-02-17 14:55:34

что-то делаете не так, в смысле собираете неверно...
лишняя опция:

cpu HAMMER

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

options DEVICE_POLLING
options HZ=1000

Аватара пользователя
kharkov_max
капитан
Сообщения: 1811
Зарегистрирован: 2008-10-03 14:56:40

Свое ядро

Непрочитанное сообщение kharkov_max » 2015-02-17 16:28:39

что-то делаете не так, в смысле собираете неверно...
лишняя опция:
Вот так делаю...

Код: Выделить всё

cd /usr/src && make buildkernel KERNCONF=MYKERNEL && make installkernel KERNCONF=MYKERNEL && reboot
Отправлено спустя 6 минут 19 секунд:
PS
На ПК работает gmirror

guest
проходил мимо

Свое ядро

Непрочитанное сообщение guest » 2015-02-17 16:59:07

kharkov_max писал(а):
что-то делаете не так, в смысле собираете неверно...
лишняя опция:
Вот так делаю...

Код: Выделить всё

cd /usr/src && make buildkernel KERNCONF=MYKERNEL && make installkernel KERNCONF=MYKERNEL && reboot
Отправлено спустя 6 минут 19 секунд:
PS
На ПК работает gmirror
фантастика, но так не бывает...

Аватара пользователя
kharkov_max
капитан
Сообщения: 1811
Зарегистрирован: 2008-10-03 14:56:40

Свое ядро

Непрочитанное сообщение kharkov_max » 2015-02-17 17:23:18

Да вот и я думаю что не бывает ...
Собирается без ошибок ...

Аватара пользователя
f_andrey
майор
Сообщения: 2651
Зарегистрирован: 2007-12-26 1:22:58
Откуда: СПб
Контактная информация:

Свое ядро

Непрочитанное сообщение f_andrey » 2015-02-17 18:16:30

Ну так собери полный лог сборки и установки и посмотри что там творится то
Если ваша тема перенесена, то смотри http://forum.lissyara.su/viewtopic.php?f=1&t=32308

guest
проходил мимо

Свое ядро

Непрочитанное сообщение guest » 2015-02-17 18:58:12

kharkov_max писал(а):Да вот и я думаю что не бывает ...
Собирается без ошибок ...
легко проверяется:

Код: Выделить всё

# cp sys/amd64/conf/GENERIC  sys/amd64/conf/GENERIC.orig
- редактируем sys/amd64/conf/GENERIC, меняем:

ident GENERIC
на
ident TESTGENERIC

далее как обычно, если все верно делаете, тогда по вашей технологии должно собраться ядро у которого
ident будет TESTGENERIC, либо Вы найдете что делаете не так или в чем тонкость.

Аватара пользователя
wien
сержант
Сообщения: 151
Зарегистрирован: 2014-06-26 18:38:44
Откуда: DafaultCity
Контактная информация:

Свое ядро

Непрочитанное сообщение wien » 2015-02-19 17:35:46

guest писал(а): ненужные, и в большинстве случаяев, порочные опции:

options DEVICE_POLLING
options HZ=1000
Почему? Очень многие статьи по сборке ядра рекомендуют эти опции, в т.ч. есть у лисы отдельная статья об этом.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35288
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Свое ядро

Непрочитанное сообщение Alex Keda » 2015-02-19 18:12:35

Потому что почти 10 лет прошло с тех пор
Убей их всех! Бог потом рассортирует...

Аватара пользователя
wien
сержант
Сообщения: 151
Зарегистрирован: 2014-06-26 18:38:44
Откуда: DafaultCity
Контактная информация:

Свое ядро

Непрочитанное сообщение wien » 2015-02-19 18:29:50

Alex Keda писал(а):Потому что почти 10 лет прошло с тех пор
Спустя десять лет оно стало работать хуже? Или есть другие причины?

snorlov
подполковник
Сообщения: 3844
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Свое ядро

Непрочитанное сообщение snorlov » 2015-02-19 23:27:40

Конечно есть, раньше ядро было монолитное и имелся смысл грузить только то, что надо было и имелось в наличии, сейчас же ядро модульное и если у вас нет, например 3com905 и стоит соответствующая device ... в конфиге ядра, то драйвер для этой карты будет загружен, после чего он скажет что нет железа для него и выгружен. Простейший пример опции для ipfw, которых нет в generic, но которые могут быть задействованы при загрузки ядра generic простейшим указанием загрузки соответствующих модулей. Единственно для чего имеет смысл сейчас пересобирать ядро, так это под конкретный процессор и то, если у вас сильно нагруженная машина, в практике если этого нет то разница в производительности единицы процентов...

Аватара пользователя
wien
сержант
Сообщения: 151
Зарегистрирован: 2014-06-26 18:38:44
Откуда: DafaultCity
Контактная информация:

Свое ядро

Непрочитанное сообщение wien » 2015-02-20 16:34:56

snorlov писал(а):Конечно есть, раньше ядро было монолитное и имелся смысл грузить только то, что надо было и имелось в наличии, сейчас же ядро модульное и если у вас нет, например 3com905 и стоит соответствующая device ... в конфиге ядра, то драйвер для этой карты будет загружен, после чего он скажет что нет железа для него и выгружен. Простейший пример опции для ipfw, которых нет в generic, но которые могут быть задействованы при загрузки ядра generic простейшим указанием загрузки соответствующих модулей. Единственно для чего имеет смысл сейчас пересобирать ядро, так это под конкретный процессор и то, если у вас сильно нагруженная машина, в практике если этого нет то разница в производительности единицы процентов...
Благодарю за исчерпывающий ответ!
Так вот почему у меня после апгрейда с 9.2 на 9.3 ядро стало дженерик и необходимые модули подгрузились автоматически, как например ipfw...
Всех с наступающим праздником, Уважаемые :drinks:

Аватара пользователя
kharkov_max
капитан
Сообщения: 1811
Зарегистрирован: 2008-10-03 14:56:40

Свое ядро

Непрочитанное сообщение kharkov_max » 2015-02-25 11:04:03

Вернулся к вопросу.

В GENERIC поставил ident MYGENERIC, в моем конфиге стоит ident MYKERNEL, пересобираю и инсталю ядро MYKERNEL, перезагружаю сервер и вижу опять uname -a показывает GENERIC это как ?

В системе работает GMIRROR, может он как то подгружает при старте старое ядро ?

Аватара пользователя
wien
сержант
Сообщения: 151
Зарегистрирован: 2014-06-26 18:38:44
Откуда: DafaultCity
Контактная информация:

Свое ядро

Непрочитанное сообщение wien » 2015-02-25 11:13:10

Похоже что-то поменялось в выводе команды uname. Ответ уже содержится у тебя в вопросе: В GENERIC поставил ident MYGENERIC.
Я тоже скопировал GENERIC, переименовал в ROUTER5.0, смотрим:

Код: Выделить всё

root@eng102:/usr/home/alex # uname -a
FreeBSD eng102.gateway 9.3-RELEASE-p8 FreeBSD 9.3-RELEASE-p8 #0: Wed Feb 18 00:32:59 MSK 2015     root@eng102.gateway:/usr/obj/usr/src/sys/ROUTER5.0  i386

Код: Выделить всё

root@eng102:/usr/home/alex # cat /usr/src/sys/i386/conf/ROUTER5.0 | grep ident
ident           VPNROUTER
Так что похоже по uname показывает именно название файла из которого ядро лепим, хотя казалось бы должно называться VPNROUTER.

Аватара пользователя
kharkov_max
капитан
Сообщения: 1811
Зарегистрирован: 2008-10-03 14:56:40

Свое ядро

Непрочитанное сообщение kharkov_max » 2015-02-25 11:25:48

Дело в том что на другой системе все работает как нужно )))
Так же собрано с include ...

Аватара пользователя
kharkov_max
капитан
Сообщения: 1811
Зарегистрирован: 2008-10-03 14:56:40

Свое ядро

Непрочитанное сообщение kharkov_max » 2015-03-02 7:54:45

В этой системе был поднят gmirror, система была тестовой (на виртуалке).
После очередной пересборки мира, и нескольких поочередных отключений дисков перестало грузится.

Не стал разбираться, поднял новую VM пересобрал свое ядро с include и все работает как нужно...
Видимо как то криво gmirror работал.

guest
проходил мимо

Свое ядро

Непрочитанное сообщение guest » 2015-03-02 12:54:21

kharkov_max писал(а):В этой системе был поднят gmirror, система была тестовой (на виртуалке).
После очередной пересборки мира, и нескольких поочередных отключений дисков перестало грузится.

Не стал разбираться, поднял новую VM пересобрал свое ядро с include и все работает как нужно...
Видимо как то криво gmirror работал.
видимо, не "криво gmirror работал", а руки кривые, без обид.

Аватара пользователя
kharkov_max
капитан
Сообщения: 1811
Зарегистрирован: 2008-10-03 14:56:40

Свое ядро

Непрочитанное сообщение kharkov_max » 2015-03-02 13:09:06

видимо, не "криво gmirror работал", а руки кривые, без обид.
Не было времени ковыряться, перестивить тестовую систему и поднастроить вопрос 2х часов

levitan
рядовой
Сообщения: 12
Зарегистрирован: 2012-01-04 1:43:39

Свое ядро

Непрочитанное сообщение levitan » 2015-03-05 16:32:54

wien писал(а):Похоже что-то поменялось в выводе команды uname. Ответ уже содержится у тебя в вопросе: В GENERIC поставил ident MYGENERIC.
Я тоже скопировал GENERIC, переименовал в ROUTER5.0, смотрим:

Код: Выделить всё

root@eng102:/usr/home/alex # uname -a
FreeBSD eng102.gateway 9.3-RELEASE-p8 FreeBSD 9.3-RELEASE-p8 #0: Wed Feb 18 00:32:59 MSK 2015     root@eng102.gateway:/usr/obj/usr/src/sys/ROUTER5.0  i386

Код: Выделить всё

root@eng102:/usr/home/alex # cat /usr/src/sys/i386/conf/ROUTER5.0 | grep ident
ident           VPNROUTER
Так что похоже по uname показывает именно название файла из которого ядро лепим, хотя казалось бы должно называться VPNROUTER.
и все-таки такое поведение системы нормальное или нет?
у меня такая же шляпа.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35288
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Свое ядро

Непрочитанное сообщение Alex Keda » 2015-03-05 17:29:10

Правильно показывает.

Идент одинаковый может быть, а файл - он файл
Убей их всех! Бог потом рассортирует...

levitan
рядовой
Сообщения: 12
Зарегистрирован: 2012-01-04 1:43:39

Свое ядро

Непрочитанное сообщение levitan » 2015-03-06 9:13:29

Благодарю за ответ, я было дело хотел систему обновлять, думал баг.