Переход к предыдущей публикации Роемся в конфигах Пересборка ядра FreeBSD Переход к следущей публикации
 
Я хочу добавить Daemony`s Live RSS ленту в Google Reader Я хочу добавить Daemony`s Live RSS ленту в Яндекс.Лента Я хочу получать RSS ленту Daemony`s Live Blog по электронной почте Я хочу добавить Daemony`s Live RSS ленту в My Yahoo Я хочу добавить Daemony`s Live RSS ленту в My MSN
студия Геннадия Циколия продвижение сайтов Волгоград т. 8 (8442) 982598

 

Добавить комментарий

Обновление системы FreeBSD 6.2 до версии 6.3

# uname-a
  FreeBSD daemony.home 6.3-RELEASE FreeBSD 6.3-RELEASE #0: Tue Jan 29 17:32:13 EET 2008
  root@daemony.home:/usr/obj/usr/src/sys/DAEMONY  i386

Обновление FreeBSD 6.2 до 6.3

Обсудить тему на форуме

Обновил на домашнем сервере операционную систему. Думаю, стоит черкнуть по этому поводу пару строк в блоге. На самом деле, сложностей никаких нет. Самое главное, для успокоения души, сделать все необходимые бекапы. Мало ли… Вдруг что-то пойдет не так.

Начнем с того, что обновим все дополнительные пакеты, установленные в системе. Сделать это можно посредством программы portupgrade. После того как все обновили, приступим к созданию бекапных копий. Как это делается написано в статье о переносе FreeBSD на другой жесткий диск.. Когда бекап системы окончен и сохранен в надежном месте, займемся обновлением исходных кодов системы. Для этого воспользуемся утилитой CVSup. Подробно об использовании CVSup можно почитать здесь.

Создаем supfile приблизительно такого вида:

daemony# cat /root/cvsup/src-all
#
# FreeBSD system source supfile by Daemony
#
  *default host=cvsup7.ua.FreeBSD.org
  *default base=/var/db
  *default prefix=/usr
  *default release=cvs tag=RELENG_6_3_0_RELEASE
  *default delete use-rel-suffix
  *default compress
  src-all

И далее запускаем процесс обновления исходных кодов.

daemony# cvsup -g -L 2 /root/cvsup/src-all
Parsing supfile “/root/cvsup/src-all”
Connecting to cvsup7.ua.FreeBSD.org
Connected to cvsup7.ua.FreeBSD.org
Server software version: SNAP_16_1h
Negotiating file attribute support
Exchanging collection information
Establishing multiplexed-mode data connection
Running
…

и процесс пошел. После того, как увидим сообщение “Успешно завершено”, можно приступить к самому главному. Кстати, если это не критично, можно перед началом процесса обновления отключить все дополнительно используемые сервисы, такие как web сервер, почта, прокси и так далее. Как правило, от этого выигрываем в экономии системных ресурсов. Я обычно тоже отключаб все, кроме того, что необходимо для работы системы и удаленного доступа к ней.

Запускаем процесс компиляции системы:

daemony# cd /usr/src
daemony# make buildworld
daemony# make buildkernel KERNCONF=MYKERNEL
daemony# make installkernel KERNCONF=MYKERNEL
daemony# shutdown -p now

Процесс комиляции системы и ядра (процессор AMD Athlon(tm) XP 1900+ [1595.47-MHz 686-class CPU]) занял у меня чуть меньше двух часов. А после этого пришлось подключить к серверной машинке клавиатуру и монитор, для того, чтобы можно было запуститься в однопользовательском режиме.

Включаем машину. При появлении загрузчика с вариантами нажимаем циферку “6″ и в командную строку вводим:

boot -s

Система загружается и после того, как вылезет приглашение командной оболочки, перемонтируем корневую файловую систему в режиме чтения/записи и смонтируем остальные, потому что по-умолчанию монтируется только / да и то в режиме read-only.

# /sbin/mount -rwu /dev/ad0s1a /
# /sbin/mount -a -F /etc/fstab

Последней командой монтируются все файловые системы, прописанные в файле /etc/fstab. После этого необходимо выполнить:

# /usr/sbin/mergemaster -p
# /usr/bin/make installworld
# /usr/sbin/mergemaster
# /sbin/shutdown -r now

Процесс инсталяции “мира” прошел за 10 минут. Проверяем, что поменялось в системе, где и какие нужно внести изменения в конфиги после выполнения команды mergemaster (обратите внимание на папку /var/tmp/temproot). Эта команда сравнивает существующие конфигурационные файлы с теми, которые собирается установить. Обо всех различиях программа сообщает на экране. В начале сообщения указывается имя файла, в котором есть различия от “стандарта”, а ниже собственно сами различия. “Минусом” помечаются строки, которые будут удалены, а “плюсом” - которые будут добавлены. Программа предлагает варианты действий со стороны пользователя:

  • d - оставить существующий файл без изменений, а новый удалить
  • i - установить новый файл, переписав старый
  • m - построчно сравнить существующий и новый файлы
  • v - просмотреть различия в файлах еще раз

Чаще всего можно нажимать “i”, но это может обернуться тем, что Вы потеряете свои конфиги, точнее вместо своих конфигов получите дефолтные. Потому, если не уверены в отношении какого-либо файла, нажимайте “m”. В этом режиме программа покажет Вам построчно оба файла: слева будет показана версия старого файла, справа - нового. При нажатии на Enter, программа спросит о действии:

  • l - использовать файл с левой стороны
  • r - использовать файл с правой стороны

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

  • i - установить получившийся файл
  • r - повторить сравнение снова
  • v - просмотреть получившийся файл

Бывает также, что с новой версией операционной системы появляются новые файлы, которых до этого не существовало. В таком случае программа предлагает только два варианта:

  • d - удалить новый файл и оставить старый
  • i - установить новый файл, удалив старый

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

Напоследок, стоит произвести “чистку” - удалить старые неактуальные более файлы и библиотеки:

daemony# make delete-old
>>> Removing old files (only deletes safe to delete libs)
 remove /usr/share/info/bzip2.info.gz? y
 remove /usr/share/examples/netgraph/bluetooth/rc.bluetooth? y
 remove /usr/share/man/man4/kame.4.gz? y
 remove /usr/share/man/man3/archive_write_prepare.3.gz? y
 remove /usr/share/man/man4/uhidev.4.gz? y
 remove /etc/periodic/weekly/120.clean-kvmdb? y
 remove /usr/include/c++/3.4/ext/demangle.h? y
 remove /usr/share/man/cat3/archive_write_prepare.3.gz? y
 remove /usr/share/man/cat4/kame.4.gz? y
 remove /usr/share/man/cat4/uhidev.4.gz? y
>>> Old files removed
>>> Removing old directories
>>> Old directories removed
To remove old libraries run ‘make delete-old-libs’.

И дальше:

daemony# make delete-old-libs
>>> Removing old libraries
Please be sure no application still uses those libraries, else you
can not start such an application. Consult UPDATING for more
information regarding how to cope with the removal/revision bump
of a specific library.

  remove /lib/libc.so.5? y
  remove /lib/libcrypto.so.3? y
  remove /lib/libz.so.2? y
  remove /usr/lib/librpcsvc.so.2? y
  remove /usr/lib/libssl.so.3? y
>>> Old libraries removed

Вот и все. Перезагружаемся. Все получилось? Не вылезло никаких граблей? Поздравляю! :wink: Вы обновили свою FreeBSD систему до версии 6.3.

 

Ключевые слова


| | | | | | | | | | | | | | |
 

Публикации по теме

Четверг, 31 января, 2008 13:18:25 EET

Подпишись на RSS ленту и будь в курсе обновлений

Я хочу добавить Daemony`s Live RSS ленту в Google Reader Я хочу добавить Daemony`s Live RSS ленту в Яндекс.Лента Я хочу получать RSS ленту Daemony`s Live Blog по электронной почте Я хочу добавить Daemony`s Live RSS ленту в My Yahoo Я хочу добавить Daemony`s Live RSS ленту в My MSN

Я хочу подписаться на Daemony`s Live RSS ленту комментариев к записям

Добавить комментарий

Быстрая вставка HTML тегов

Подсказки:
  • Для вставки фрагментов кода используйте "быстрый" тег <PRE></PRE>.
  • Для цитирования фрагментов текста используйте "Цитата".
  • Поддерживаются также другие HTML теги.

Поля, помеченные красной "звездочкой" обязательны к заполнению.