В этой статье описано обновление системы FreeBSD 15: сначала — пакетов через pkg, затем — базовой системы и ядра с помощью freebsd-update.
1. Обновление установленных пакетов
Перед обновлением системы рекомендуется обновить каталог репозитория и все установленные пакеты:
root@srv:~ # pkg update Updating FreeBSD repository catalogue... FreeBSD repository is up to date. All repositories are up to date.
root@srv:~ # pkg upgrade -y The package management tool is not yet installed on your system. Do you want to fetch and install it now? [y/N]: y Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/FreeBSD:15:amd64/quarterly, please wait... Installing pkg-1.20.8... Extracting pkg-1.20.8: 100% Updating FreeBSD repository catalogue... FreeBSD repository update completed. XXXXX packages processed. All repositories are up to date. Your packages are up to date.
2. Обновление базовой системы и ядра
Для обновления самой операционной системы (включая ядро) используется утилита freebsd-update. Сначала загружаются патчи:
root@srv:~ # freebsd-version 15.0-RELEASE
root@srv:~ # freebsd-update fetch Looking up update.FreeBSD.org mirrors... 3 mirrors found. Fetching public key from update2.freebsd.org... done. Fetching metadata signature for 15.0-RELEASE from update2.freebsd.org... done. Fetching metadata index... done. Inspecting system... done. Preparing to download files... done. Fetching XXX patches..... done. Applying patches... done. The following files will be updated as part of updating to 15.0-RELEASE-pX: /bin/df /bin/freebsd-version /bin/mv ..... .....
Затем применяются загруженные обновления:
root@srv:~ # freebsd-update install Creating snapshot of existing boot environment... done. Installing updates... Restarting sshd after upgrade Starting sshd. Scanning /usr/share/certs/untrusted for certificates... Scanning /usr/share/certs/trusted for certificates... done.
Если обновлялось ядро, требуется перезагрузка:
root@srv:~ # reboot
root@srv:~ # freebsd-version 15.0-RELEASE
3. Обновление до новой минорной версии (например, до 15.1)
Чтобы перейти на следующую минорную версию FreeBSD 15, выполните:
root@srv:~ # freebsd-update upgrade -r 15.1-RELEASE Looking up update.FreeBSD.org mirrors... 3 mirrors found. Inspecting system... done. The following components of FreeBSD seem to be installed: kernel/generic world/base world/lib32 Does this look reasonable (y/n)? y Fetching metadata patches... done. Applying metadata patches... done. Inspecting system... done. ..... .....
После завершения загрузки обновлений примените их:
root@srv:~ # freebsd-update install Kernel updates have been installed. Please reboot and run "/usr/sbin/freebsd-update install" again to finish installing updates.
Выполните перезагрузку и повторно запустите установку обновлений:
root@srv:~ # reboot
root@srv:~ # freebsd-update install Installing updates... Restarting sshd after upgrade Starting sshd. Scanning certificates... done.
root@srv:~ # freebsd-version 15.1-RELEASE

