FreeBSD: обновление 8.2 RELEASE до 8.3 RELEASE и 9.0 до 9.2

Автор: | 15/05/2012
 

Если у вас нестандартное ядро – потребуется обновление из исходного кода:

Note: The freebsd-update only works with the GENERIC kernel. If any changes have been made to GENERIC or a custom kernel has been installed, freebsd-update will not complete -- failing in the former case and producing an error in the
latter.

На этой машине будет выполняться двоичное (бинарное) обновление с помощью freebsd-update.

Текущая версия системы:

# uname -a
FreeBSD ronin 8.2-RELEASE-p3 FreeBSD 8.2-RELEASE-p3

Приступим:

# freebsd-update upgrade -r 8.3-RELEASE

Ждать придется довольно долго – пока загрузятся все требуемые обновления.

После загрузки и проверки системы, установщик выдаст сообщение такого плана:

The following components of FreeBSD do not seem to be installed:

Does this look reasonable (y/n)?

Отвечаем “да” – y, жмем Enter и ждем продолжения загрузки.

В процессе система может сообщить следующее:

The following file could not be merged automatically: /etc/hosts
Press Enter to edit this file in vi and resolve the conflicts
manually…

Система не может сама обновить файл, и просит сделать это вручную. ОК, жмем Enter, в редакторе если надо – что-то меняем, сохраняем файл, идем дальше.

The following changes, which occurred between FreeBSD 8.2-RELEASE and
FreeBSD 8.3-RELEASE have been merged into /etc/group:
— current version
+++ new version
@@ -1,6 +1,6 @@
-# $FreeBSD: src/etc/group,v 1.35.10.1.6.1 2010/12/21 17:09:25 kensmith Exp $
+# $FreeBSD: src/etc/group,v 1.35.10.2.2.1 2012/03/03 06:15:13 kensmith Exp $
#
wheel:*:0:root,setevoy

www:*:80:
+hast:*:845:
nogroup:*:65533:
nobody:*:65534:
setevoy:*:1001:

Does this look reasonable (y/n)?

Тут система нам сообщает, что объединила файл /etc/group старой и новой версии, и выводит изменения, которые в него были внесены. Знаком + отмечена строка, которая была добавлена после слияния файлов: +hast:*:845:. Нажимаем y и снова Enter.

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

В конце, нам сообщают что:

The following files will be added as part of updating to 8.3-RELEASE-p1:

и выдается список файлов, которые будут добавлены в обновлении версии. Жмем q, выходим из просмотра списка, и вводим:

# freebsd-update install
Installing updates…
.

Теперь, собственно, начался процесс обновления самой системы.

Ждем сообщения:

Kernel updates have been installed.  Please reboot and run
“/usr/sbin/freebsd-update install” again to finish installing updates.

и отправляем систему в перезагрузку:

# shutdown -r now
Shutdown NOW!
shutdown: [pid 99865]

После перезагрузки запускаем обновление повторно:

# freebsd-update install
Installing updates… done.

Все, обновление успешно установлено. Проверим:

# uname -a
FreeBSD ronin 8.3-RELEASE FreeBSD 8.3-RELEASE

На всякий случай, можно ещё раз перезагрузить сервер и проверить поведение системы.

Для обновления:

# uname -isor
FreeBSD 9.0-RELEASE-p3 GENERIC

до:

# uname -isor
FreeBSD 9.2-RELEASE-p6 GENERIC

Процедура та же самая. Обновление прошло без проблем.