2

Время от времени я запускаю freebsd-update в моей системе FreeBSD 9.0. У меня установлено и работает собственное ядро, и, согласно совету из документации FreeBSD (Обновление Freebsd (раздел 25.2.2)), я храню копию GENERIC в /boot/GENERIC

Примечание. Рекомендуется всегда сохранять копию ядра GENERIC в /boot/GENERIC . Это будет полезно при диагностике различных проблем и при обновлении версий с использованием freebsd-update, как описано в разделе 25.2.3.

Когда появляются обновления, я получаю следующее сообщение от freebsd-update:

Следующие файлы будут обновлены как часть обновления до 9.0-RELEASE-p4: /boot/kernel/kernel

И freebsd-update наверняка перезаписывает мое (кастомное) ядро GENERIC в процессе обновления. Это нарушает мне удаленный доступ к машине, потому что для работы в сети нужны вещи из моего собственного ядра ...

Я полагаю, что проблема в том, что FreeBSD или freebsd-update не распознают мое собственное ядро как пользовательское, но считают, что оно GENERIC . Вопрос: почему? И как я могу это изменить?

Я нашел следующий пост, объясняющий, как установить ядро GENERIC в /boot, и мне интересно, поможет ли это. Процедура там объяснена

#cd $PlaceWhereTheISOIsMounted/8.0-RELEASE/kernels/
# ./install.sh GENERIC

"зарегистрировать" как-нибудь, что GENERIC находится в /boot/GENERIC вместо /boot/kernel/?


Кстати: да, машина загружает ядро GENERIC после установки freebsd-update на serverfault - та же проблема (там не решена, увлеклась).


ОБНОВЛЕНИЕ Другие люди сталкиваются с той же проблемой: как не допустить, чтобы freebsd-update удаляло пользовательское ядро?


ОБНОВЛЕНИЕ2 Согласно списку рассылки FreeBSD подсказка в документации о хранении копии GENERIC вокруг не помогает / не работает (больше). Смотрите патчи freebsd-update custom / boot / kernel / kernel, которые не должны

1 ответ1

1

Цитата из справочника:

Только ядро GENERIC может быть автоматически обновлено с помощью freebsd-update.

Если вам нужен сетевой драйвер, который не встроен в ядро GENERIC, посмотрите, доступен ли он как модуль, и загрузите его автоматически из /boot/loader.conf . Тогда вы можете придерживаться GENERIC.

Если это не сработает, вам, вероятно, придется делать сборку из исходного кода.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .