куча лишний движений. причем действия эти описаны в рукокниге.
>cd /root && fetch ftp://ftp6.ua.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/8.0/8.0-RELEASE-i386-disc1.iso
нафига? слили git'ом сорцы перед апдейтом и все, сорцы лишнии не бывают да и частенько пакеты их требуют.
># reboot
руки надо отрубать факт
кстате теперь еще и compat7x надо ставить, и сразу после апдейта надо опять запускать апдейт, чтобы накатить патчи.
p.s.
после того как freebsd-update предлажил вручные редактировать все измененные конфиги в $EDITOR, запустил апдейт из сорцов в разы бвстрее вышло :)
Есть огромная разница по времени, скачать один большой файл или десяток тысяч маленьких. Если канал на мир нормальный, тогда разница незначительна, поэтому я и написал, что это для моего случая.
Никакой compat7x не надо ставить, зачем он, если ни одна софтина не зависит от либ 7-й ветки, потому что все собиралось в 6-ой, а потом вообще все было пересобрано под 8? Сервер уже неделю работают припеваючи, никаких проблем нет.
Мне полностью редактировать freebsd-update предложил только один конфиг, все остальные смержил сам, для нескольких показал, что он изменил, надо было только подтвердить, на слияние конфигов ушло минуты 2 максимум.
А при апдейте из сорцов значит конфиги мержить типа не надо? Сколько времени ушло на пересбор ядра и мира? И на каком железе?
у меня вчера какой-то порт не собирался без compat7x, у меня он предложит весь /etc/ мержить самому, причем в 99% отличие было в первых 2 строчках, в остальных эти строчки были на десяток строчек ниже. КОнфиги из сорцевт оже надо мержить, но на этом же сервере мержил только 2-3 конфига (правил periodic, dev.rules).
2хXeon, 2GB RAM, obj в мемори на момент компиляции ядра, потом на винте. пару часов все заняло вместе со скачиванием сорцев (кстате git качает сорцы быстрее). Вы кстате тоже сорцы скачали :)
для самообразования попробовал freebsd-update на одном из сервером файлы качались ооочень долго, сорцы скачать оказалось быстрее, кстате тоже с 6.2 скакал до 8.0 (кстате потерял контроль над сервером так как mpd не завелся, и забыл статический маршрут до себя добавить через резервный канал), а вот на другой машинке 7.2 -> 8.0 не прошло все так гладко с мерджингом.
для меня бинарный апдейт это для машин со слабым процем (аля домашнии роутеры).
p.s.
кто знает как включит altq не пересобирая ядро?
ALTQ может быть включен только путем компилирования ядра FreeBSD с соответствующими параметрами. ALTQ поддерживается не всеми существующими драйверами сетевых карт. Для просмотра списка поддерживаемых устройств в вашем релизе FreeBSD обратитесь к странице справочника altq(4). Следующие параметры включат ALTQ и добавят дополнительную функциональность.
Тогда бы пришлось сообщить о потере контроля над сервером владельцу, и он только через недельку-другую смог бы туда пойти. В этом и экстрим :)
Делалось не только ради спортивного интереса, это какой-никакой продакшн-сервер, но требования бесперебойности работы к нему намного меньше, нежели к другим моим серверам, поэтому я решил все попробовать на нем. Тем более что это единственный сервер, где до сих пор стояла 6.x, так давно уже везде 7.2.
Автору респект! По ssh обновлял систему неоднократно, в т.ч. и мажорные версии, но всегда через пересборку из исходников и не с таким разрывом в версиях (т.е. не через одну, как в статье 6 -> 8). Бинарным апдейтам как-то не доверяю — черт его знает, чего он там намутит… ;-) То ли дело — исходники… :-)
Во-первых, иногда таки действительно читаю. :-) Особливо некоторые драйверы или интересующие меня куски модулей/ядра. А иногда — о ужас! — я их даже под себя патчу (последний раз, например, ipfw nat — увеличивая у него буфер, чтобы большое количество редиректов держал). ;-)
Во-вторых, в процессе компилирования как минимум вскрываются те же ошибки с отсутствующими библиотеками и т.п. Результаты компилирования лежат себе тихонечко в отдельном каталоге и их всегда оттуда можно взять и в целом посмотреть, что произошло при installworld. А тут — накачалось чего-то, наапдейтилось само — черт его знает с каким результатом… Короче, стремно.
Понятное дело, что если места на диске мало, а машина старенькая-слабенькая, то из исходников собирать тяжко… Но все-таки бинарные апдейты и бинарные пакеты софта — это не bsd-way на мой взгляд. :-)
Ну, про других я не знаю, я про себя говорю… :-)
Лично я пакеты тоже использую — особенно, если пакет есть для последней версии порта и в порте не много всяких опций сборки…
Но с ядром пока стремно. :-)
Мне, кстати, всегда было интересно, в чем прелесть зависимости имени сетевого интерфейса от используемого драйвера? Для пущего красноглазия?
Получается, если у меня стоит к примеру pci-e intel, затем она внезапно выходит из строя, то без локального вмешательства админа (прям на месте или через kvm) в случае ее замены биороботом на, скажем, marvell, сервер не взлетит? + вдумчивый греп по конфигам с перебитием интерфейсов?
Я может не понимаю чего, но не головняк ли это?
Если вы не заметили, он там был в дауне целых 3 раза, с учетом что сервер грузится минут 5-10, то уже полчаса (хотя я так понимаю, там стоял простой десктоп, на который автору было плевать)
Я так понимаю, dewil под дауном имел ввиду длительную неработоспособность. В моем случае все веб-сервисы были недоступны извне 2 часа, я ведь написал, что все потушил перед началом обновления, потому что машина слабая, особенно винт, по современным меркам конечно. Стоял там не десктоп, а сервер поднимался для сайта внутрисетевого трекера, и находился он далеко от меня. По поводу продакшн или нет — просто на тот момент все равно трекер уже не работал из-за битой базы, в общем не буду повторяться, внимательно читаем статью :)
>Удаляем устаревшие либы
Вот этого я бы делать не советовал если много софта наставлено. Геморроя потом может вывалится просто немерено.
Таким же методом (тушение всех сервисов, кроме ssh) можно и из исходников обновлять, кстати. Делал не раз. А чтоб в случае проблем с новым ядром не напороться на неприятности есть nextboot.
действительно сила) я в таких случаях ставил рядом тачку с новенькой системой следующей ветки и тянул на неё всё что нужно со старой тачки а старую утилизировал, давно без KVM ничего не трогаю)
Бинарное обновление FreeBSD 6.2 до 8.0