Мар 142013
 

ax2m
Понадобилось мне freebsd 8 до версии freebsd 9, все это делается из-за управлениями джайлами.
Информации взята из этой статьи, Удаленное обновление мира на FreeBSD.
Freebsd 9 добавили параметр rctl по управлению джайлами.
Создадим supfils для обновления исходников.

# cat /etc/supfils
*default host=cvsup4.ru.freebsd.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_9_1
*default delete use-rel-suffix
*default compress
src-all

запустим обновления

# csup -g -L 2 /etc/supfiles

Теперь нам понадобиться обновить исходники ядра.

# cd /usr/ports/devel/subversion && make install clean

У меня установка заняла примерно 15минут.
Теперь заберем исходники.

# svn checkout svn://svn.freebsd.org/base/stable/9 /usr/src

Для смены ветки системы, проделываем такое.

# svn switch svn://svn.freebsd.org/base/stable/10.1 /usr/src

После, обновления исходников можно делать так.

# svn update /usr/src/

Проверяем обновились ли исходники.

# cat /usr/src/sys/conf/newvers.sh | grep -A1 TYPE=
TYPE="FreeBSD"
REVISION="9.2"

Перед пересборкой мира и ядра, удалим не нужный мусор.

# cd /usr/src/ && rm -rf /usr/obj/

Теперь отредактируем системный файлы конфигураций, в которых укажим что мы хотим видите в системе, а что нет!
Вот мой /etc/make.conf, описывать опции не буду.
Полный список параметров .
Добавим в конфиг ядра.

options COMPAT_FREEBSD8 # Compatible with FreeBSD8
Добавим следующие к файлу.
# nano /usr/src/sys/conf/NOTES
# Enable FreeBSD8 compatibility syscalls
options 	COMPAT_FREEBSD8
# nano /usr/src/sys/conf/options
COMPAT_FREEBSD8	opt_compat.h

Теперь пересоберем мир.

# cd /usr/src && make -j6 buildworld

После пересобирем ядро.

# make -j6 buildkernel KERNCONF=MY_KERNEL

Установим ядро.

# make installkernel KERNCONF=MY_KERNEL

Если вы указали в ядре имя вашего ядра, то не обезательно указать переменную KERNCONF=MY_KERNEL при сборке ядра.
Перегружаемся в однопользовательский режим.
Я без перезагрузки делаю, просто коментирую, останавливаю сервисы указанные в rc.conf
Проверим конфигурации, устанавливаем конфигурационные файлы

# cd /usr/src && mergemaster -a -p

Установим мир.

# make installworld

обновим конфигурационные файлы.

# mergemaster

i — Установить новые конфигурационные файлы
d — Удалить временные конфигурационные файлы

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

# yes | make delete-old

Вот и все перезагружаемся и радуемся новой обновленной системе.
И кто говорил что это сложно!

  One Response to “FreeBSD 8 upgrade FreeBSD 9”

  1. […] Как пересобирать ядру описано тут Чуть не забыл, разрушаем форвординг пакетов. […]

 Leave a Reply

(required)

(required)

40 Запросов к базе. 0,422 Генерации страницы, 36MB Использование памяти.
Вы зашли с IP: 54.225.16.10