notby.NET Logo

Обновление FreeBSD 14 до FreeBSD 14.1

На текущий момент у меня FreeBSD 14 и я решил обновится до FreeBSD 14.1, которая является последней версией на текущий момент. Обновление внутри одной ветки FreeBSD происходит быстрее и проще, так как не нужно переустанавливать все приложения и сервисы. Приступаем к обновлению до версии FreeBSD 14.1

Если FreeBSD 13, то производи обновление как описано в статье: Обновление FreeBSD 13.2 до FreeBSD 14. Только необходимо внести измерения в команде, чтобы получилось freebsd-update upgrade -r 14.1-RELEASE команда для запуска обновления.

1. Обновление установленных приложений

Так как обновление FreeBSD происходит внутри одной ветки с FreeBSD 14 до FreeBSD 14.1, то можно обновить все сервисы, библиотеки и приложения заранее.

Обновляем приложения через пакеты

pkg upgrade

Или обновляем через порты

portmaster -a

Статьи с подробным описанием процесса обновления всех приложений через порты или пакеты в FreeBSD.

2. Запуск обновления до FreeBSD 14.1

До запуска процесса обновления можно сменить текстовый редактор по умолчанию (vi) на другой. Например, сменяем на ee.

setenv EDITOR ee

Во время обновления, если понадобится ручное редактирование файла, будет вызыватся текстовый редактор ee.

Во время обновления может что-то пойти не так и будет утерян доступ к серверу через SSH. Например, если сервер использует не стандартное ядро, то после обновления будет GENERIC ядро. Если FreeBSD без модификаций, то все должно пройти безошибочно.

Запускаем процесс обновления до версии FreeBSD 14.1

freebsd-update upgrade -r 14.1-RELEASE

Установщик спросит разумно что будут установлены компоненты kernel/generic world/base, а компоненты debug и lib32 не будет установлены, отвечаем yes

Обновление до версии FreeBSD 14.1 используя команду “freebsd-update upgrade -r 14.1-RELEASE”. На вопрос Does this look reasonable? Ответ yes

Дожидаемся окончания процесса загрузки обновления.

Во время обновления автоматически могут не обновится конфигурационные файлы и их необходимо будет обновить вручную. Но такое маловероятно произойдет при обновлении внутри одной ветки и с файлами конфигурации по стандарту.

Установщик показывает какие изменения в файле /etc/ssh/sshd_config будут внесены (замена строки #VersionAddendum которая содержит версию FreeBSD) и если все корректно отвечаем yes.

Обновление до версии FreeBSD 14.1. Показаны какие изменения будут в файле /etc/ssh/sshd_config и задается вопрос “разумны такие изменения?“, ответ yes

Далее будет показан список файлов которые будут добавлены, изменены и удалены во время обновления. Для того чтобы их пролистать нажимаем Q на клавиатуре, и после списка будет выведено сообщение To install the downloaded upgrades, run "/usr/sbin/freebsd-update install". (Чтобы установить загруженные обновления, выполните команду "/usr/sbin/freebsd-update install".).

3. Установка обновления FreeBSD 14.1

Устанавливаем обновление FreeBSD 14.1

freebsd-update install

Процесс установки обновлений запущен, далее программа обновлений сообщит Please reboot and run "/usr/sbin/freebsd-update install" again to finish installing updates. (Пожалуйста, перезагрузитесь и запустите команду "/usr/sbin/freebsd-update install" снова, чтобы завершить установку обновлений.).

Обновление до версии FreeBSD 14.1. Написана команда “freebsd-update install“. Выведено сообщение “Please reboot and run "/usr/sbin/freebsd-update install" again to finish installing updates.“.

Перезагружаем сервер

shutdown -r now

Дожидаемся загрузки и запускаем команду

freebsd-update install
Обновление до версии FreeBSD 14.1 успешно завершено. Установщик не смог удалить каталог /var/db/portsnap/ и вывел соответствующие сообщение

У меня во время установки обновления было выведено сообщение rmdir: ///var/db/portsnap: Directory not empty. Portsnap устаревшая система обновления коллекции портов FreeBSD которая была удалена в 14 версии. Установщик не смог удалить каталог, удаляем каталог /var/db/portsnap/ вручную

rm -r /var/db/portsnap/

Обновление до версии FreeBSD 14.1 успешно произведено.

uname -v
FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC

Проверяем что все программы и сервисы работают корректно, ошибок после установки обновлений не появилось.

4. Установка исправлений безопасности

Сразу после обновления FreeBSD до новой версии нет смысла проверять новые исправления безопасности, так как во время процесса обновления системы были установлены все последнее исправления безопасности.

Спустя какое-то время периодически необходимо проверять и установлять исправления безопасности FreeBSD. Проверку наличия обновлений можно настроить по расписанию через crontab.

Запускаем установку исправлений безопасности FreeBSD 14.1

freebsd-update fetch install

Дожидаемся окончания процесса установки исправлений безопасности. Если во время обновления были затронуты файлы ядра FreeBSD, то необходимо будет перезагрузить сервер.