Инструкция по обновлению до FreeBSD 15.1-RELEASE
Аннотация
В данной заметке подробно описан порядок действий по обновлению существующих установок до FreeBSD 15.1-RELEASE.
Введение
В этом документе объясняется порядок обновления существующих установок 14.4-RELEASE или 15.0-RELEASE до 15.1-RELEASE. Системы, работающие под управлением более старых релизов, должны быть поэтапно обновлены до одного из этих релизов перед выполнением данного обновления.
Перед обновлением операционной системы создайте резервные копии всех файловых систем, ознакомьтесь с последними исправлениями для получения информации об известных проблемах и способах их обхода, а также с примечаниями к выпуску для получения сведений о существенных изменениях и несовместимостях.
Порядок выполнения бинарного обновления зависит от метода, используемого для управления операционной системой. Чтобы определить это, выполните следующую команду:
pkg which /usr/bin/uname
Если отображается сообщение /usr/bin/uname was not installed by a package, см. раздел Обновление с использованием наборов дистрибутива ниже.
Если отображается имя пакета, например FreeBSD-runtime-15.0, см. раздел Обновление с использованием пакетов базовой системы ниже.
Если выполняется обновление из исходных кодов, обратитесь к главе Руководства FreeBSD, посвящённой обновлению FreeBSD из исходных кодов.
Обновление с использованием наборов дистрибутива
Системы, развёрнутые с использованием наборов дистрибутива, обновляются с помощью freebsd-update(8). Системы, работающие под управлением 14.4-RELEASE или 15.0-RELEASE, могут быть обновлены следующим образом:
-
Установите все ожидающие патчи:
Всегда загружайте и устанавливайте все ожидающие патчи для текущей системы перед обновлением:
freebsd-update fetch freebsd-update install -
Обновите ядро
Загрузите и установите новое ядро:
freebsd-update upgrade -r 15.1-RELEASE freebsd-update installВ процессе freebsd-update(8) может запросить помощь в объединении конфигурационных файлов.
-
Перезагрузитесь в новое ядро
Перезагрузитесь в новое ядро перед установкой нового пользовательского окружения:
shutdown -r +10min "Rebooting for a kernel upgrade" -
Обновите пользовательское окружение
После перезагрузки снова выполните freebsd-update(8) для установки новых компонентов пользовательского окружения:
freebsd-update installfreebsd-update(8) может предложить пересобрать или переустановить все стороннее программное обеспечение из-за изменений в системных библиотеках. Следуйте этим инструкциям по мере необходимости.
TipПри обновлении с 14.4-RELEASE, если переустановка всего стороннего программного обеспечения невозможна, установите пакет misc/compat14x.
-
Удалите старые файлы
Снова выполните freebsd-update(8) для удаления устаревших файлов базовой системы:
freebsd-update install -
Обновите загрузчик
Чтобы определить, какой загрузчик необходимо обновить в вашей системе, выполните следующую команду:
sysctl machdep.bootmethodПродолжите в разделе Обновление загрузчика UEFI или Обновление загрузчика BIOS ниже.
Обновление с использованием пакетов базовой системы
Системы, развёрнутые с пакетной базовой системой, обновляются с помощью pkg(8). Системы, работающие под управлением 14.4-RELEASE или 15.0-RELEASE, могут быть обновлены следующим образом:
-
Создайте снимок текущей установки
Создайте рекурсивный снимок работающей системы с именем, содержащим текущую дату:
bectl create -r pre-15.1Загрузчик предоставляет меню для загрузки с этого снимка, если потребуется откат обновления.
-
Обновите менеджер пакетов
pkg upgrade -yr FreeBSD-ports pkg -
Обновите базовую систему
pkg -oABI=FreeBSD:15:$(uname -p) -oOSVERSION=1501000 upgrade -r FreeBSD-baseПосле обновления просмотрите все сообщения, выведенные
pkg(8). Некоторые пакеты могут требовать дополнительных шагов по настройке, например выполненияservice <name> setup. Следуйте этим инструкциям по мере необходимости. -
Обновите сторонние модули ядра
Сторонние модули ядра также должны быть обновлены вместе с базовой системой:
pkg upgrade -r FreeBSD-ports-kmodsЕсли установка не использует их, pkg(8) ответит соответствующим образом.
-
Проверьте наличие неудачных обновлений конфигурации
Если pkg(8) не может объединить обновления конфигурационных файлов, он установит новую конфигурацию как файл с расширением
.pkgnew. Проверьте их наличие с помощью следующей команды:find /etc /usr/local/etc -name '*.pkgnew' -lsЕсли они существуют, сравните их с развёрнутой версией (например,
diff /etc/rc.conf /etc/rc.conf.pkgnew) и объедините все необходимые изменения. -
Обновите загрузчик:
Чтобы определить, какой загрузчик необходимо обновить в вашей системе, выполните следующую команду:
sysctl machdep.bootmethodПродолжите в разделе Обновление загрузчика UEFI или Обновление загрузчика BIOS ниже.
Обновление загрузчика UEFI
-
Определение ESP
Определите системный раздел EFI (ESP), в котором находится загрузчик, выполнив следующую команду:
efibootmgr -vВывод должен быть похож на следующий:
+Boot0000* FreeBSD HD(1,GPT,f859c46d-19ee-4e40-8975-3ad1ab00ac09,0x800,0x82000)/File(\EFI\freebsd\loader.efi) nda0p1:/EFI/freebsd/loader.efi (null)Активная запись загрузчика помечена символом плюс (+). Отметьте расположение загрузчика, в данном случае
EFI/freebsd/loader.efiнаnda0p1, хотя в системах оно может различаться. -
Монтирование ESP
Если ESP ещё не смонтирован в /boot/efi, смонтируйте раздел, указанный в выводе
efibootmgr:mount_msdosfs /dev/nda0p1 /boot/efi -
Установка загрузчика
На системах AMD64 обновите загрузчик в настроенном и стандартном расположениях, выполнив следующие команды:
cp /boot/loader.efi /boot/efi/efi/freebsd/loader.efi cp /boot/loader.efi /boot/efi/efi/boot/bootx64.efiОбратите внимание, что в некоторых установках может отсутствовать
freebsd/loader.efi.Для систем AArch64 вместо этого выполните следующие команды:
cp /boot/loader.efi /boot/efi/efi/freebsd/loader.efi cp /boot/loader.efi /boot/efi/efi/boot/bootaa64.efiДля других архитектур действия различаются соответственно; при необходимости обратитесь к loader.efi(8).
-
Завершение
Перезагрузитесь после завершения обновления до FreeBSD 15.1-RELEASE:
shutdown -r +10min "Rebooting for a system upgrade"
Обновление загрузчика BIOS
Для систем, загружающихся через BIOS или UEFI CSM и использующих схему разделов GPT, обновление начального загрузчика является необязательным, если только не обновляется корневой пул ZFS (что не рекомендуется).
Обновление возможно только в том случае, если раздел freebsd-boot имеет размер не менее 180 КБ; теперь стандартным является 512 КБ.
-
Определение раздела freebsd-boot
Определите имя устройства и индекс раздела
freebsd-boot, выполнив следующую команду:gpart showВывод должен быть похож на следующий:
=> 34 246162605 ada0 GPT (224G) 34 1024 1 freebsd-boot (512K)Отметьте имя (
ada) и индекс (1) разделаfreebsd-boot. -
Обновление загрузчика
При использовании ZFS в BIOS обновите загрузочный код, выполнив следующую команду:
gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada0Где
1— это индекс разделаfreebsd-boot.Если загрузка выполняется с массива хранения, повторите этот шаг для всех дисков в пуле.
При использовании UFS в BIOS вместо этого выполните следующую команду:
gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada0 -
Завершение
Перезагрузитесь после завершения обновления до FreeBSD 15.1-RELEASE:
shutdown -r now
Последнее изменение: 16 июня 2026 г. от Vladlen Popolitov