Страница 1 из 2
Обновление FreeBSD...
Добавлено: 2009-06-04 21:20:56
vvn
Доброго времени суток.
Прошу помощи опытных пользователей FreeBSD!
Опишите процедуру обновления и отличия между обновлением FreeBSD в пределах одной ветки (x.a>x.b) и обновлением между ветками (x.e>y.c).
Заранее спасибо.
PS: Очень важны различия в процедуре и если можно то дайте объяснение - почему именно так нужно делать.
Re: Обновление FreeBSD...
Добавлено: 2009-06-04 22:33:32
alex3
http://www.lissyara.su/?id=1161
да и хендбук можно почитать...вообще про обновление написано в любой книге по фре
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 1:34:10
Sadok123
хендбук, такое впечатление, не обновлялся с "пятерки"
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 1:40:47
Sadok123
vvn писал(а):Доброго времени суток.
Прошу помощи опытных пользователей FreeBSD!
Опишите процедуру обновления и отличия между обновлением FreeBSD в пределах одной ветки (x.a>x.b) и обновлением между ветками (x.e>y.c).
Заранее спасибо.
PS: Очень важны различия в процедуре и если можно то дайте объяснение - почему именно так нужно делать.
между ветками в /usr/src/UPDATING нарисовано. теоретически с 6 на 7, и с 7 на 8 можно просто переехать, обновив сорцы, так же, как и в пределах ветки:
1. Пересборка базовой системы и ядра
а) cd /usr/src
б) rm -rf /usr/obj/*
в) make buildworld
г) make buildkernel KERNCONF=_YOUR_KERN_
2. Установка базовой системы и ядра
а) Перезагрузиться в однопользовательский режим
б) /sbin/fsck -p
в) /sbin/mount -u /
г) /sbin/mount -a
д) cd /usr/src/
е) make installkernel KERNCONF=_YOUR_KERN_
ж) /usr/sbin/mergemaster -p
з) make installworld
и) /usr/sbin/mergemaster
к) /sbin/reboot
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 7:01:23
paix
Sadok123, ты так когда нибудь делал на удаленных системах? еще и без ipkvm ?
курите хендбук и будет счастье!
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 9:18:43
Sadok123
paix писал(а):Sadok123, ты так когда нибудь делал на удаленных системах? еще и без ipkvm ?

легко. однопользовательский режим - это для точного следования докам

. можно и без него.
на сегодняшний день ситуация такова, что если мир и ядро собрались нормально, то удаленная система заведется с вероятностью 99,9%
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 11:44:14
paix
Sadok123 писал(а):
на сегодняшний день ситуация такова, что если мир и ядро собрались нормально, то удаленная система заведется с вероятностью 99,9%
а вот тут ты не прав.
Нюансов вылазит вагон и тележка, и практика это подтверждает. Особенно при мажорных апдейтах.
PS. люди, юзайте GENERIC!!!
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 12:40:08
Raven2000
Вот грамотное удаленное обновление и вообще обновление:
Код: Выделить всё
# cd /usr/obj ;chflags -R noschg * ;rm -rf *
# cd /usr/src
# make -j4 buildworld
# make -j4 buildkernel KERNCONF=GENERIC
# make installkernel KERNCONF=GENERIC
При удаленном обновлении.
1) Ставим только генерик (если все ок после обновы то дальше сами ставьте другое ядро)
2) Пропускаем однопользовательский решим
НО
2.1) В rc.conf вырубаем ВСЕ лишние сервисы ну кроме ssh

2.2) ребут и продолжение
Код: Выделить всё
# vi /etc/rc.conf # вырубаем лишние сервисы
# shutdown -r now
Код: Выделить всё
# /sbin/mount -u /
# /sbin/mount -a
# csh
# su
# mergemaster -p
# cd /usr/src
# make installworld
# make delete-old
# mergemaster -cv (c-контекстный diffs вместо унифицированного)
# shutdown -r now
# cd /usr/src/
# make delete-old-libs
# uname -a
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 12:56:33
paix
Raven2000 вырубать сервисы не обязательно. Если не делать delete-old-libs, то сервисы будут работать, даже после мажорного апдейта (6х -> 7х).
Это все можно сделать и позже, постепенно. Но сделать обязательно нужно.
Сингл мод также часто роскошное излишество.
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 13:02:20
Raven2000
paix писал(а):Raven2000 вырубать сервисы не обязательно. Если не делать delete-old-libs, то сервисы будут работать, даже после мажорного апдейта (6х -> 7х).
Это все можно сделать и позже, постепенно. Но сделать обязательно нужно.
Сингл мод также часто роскошное излишество.
Вот ты мне скажи почему разработчики при обновлении рекомендуют уйти в сингле мод?
А делать delete-old-libs рекомендуется что было все по полкам без каши. И лучше сделать это тут и сейчас чем забыть\забить\тп и потом поиметь (возможные) проблемы. Согласен?
Синг мод это не излишество это практика.
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 14:20:03
Alex Keda
сервисы лучше вырубать.
сам поимел граблю недавнона простом обновлении с 7.1->7.2
после ребута в течение 30 секунд система пеерставла отвечать. вообще намертво висла.
оаказалось из-за расзной работы с tty - ком-портами
там висела hylafax на двух консолях - одна была, а второй не было.
на 7.1 всё работало, а на 7.2 система вешалась на второй попытке подключения к несуществующему терминалу...
не на первой причём, а на второй!
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 16:08:41
paix
ниразу не делал обновления через сингмод.
Вырубать сервисы, пожалуй хорошая привычка, чем плохоя. Но у меня с этим еще небыло связано глюков.
В любом случае, делать make delete old libs нужно если ты четко знаеш что это, и что за собой повлечет и готов к этому.
Форумы пестрят сообщениями, "обновился и все сломалось, че делать как быть?"
Из своей практики имел глюки совершенно в непредсказуемых местах.
Один из последних недавних приколов - 7ка не завелась, только из-за того что был загружен миррор модуль, а самого рейда небыло.
Меня порядком это все достало, поэтому и стараюсь сейчас только GENERIC и неплохо бы оттестить схему с бинарными обновлениями.
Разработчики советуют сингл мод дабы перестраховаться. В реальной жизни, особенно когда у вас нет айпиквма, это неприемлимо. Поэтому я считаю что на этот вариант лучше и не расчитывать.
Re: Обновление FreeBSD...
Добавлено: 2009-06-06 16:13:22
paix
lissyara писал(а):сервисы лучше вырубать.
сам поимел граблю недавнона простом обновлении с 7.1->7.2
после ребута в течение 30 секунд система пеерставла отвечать. вообще намертво висла.
оаказалось из-за расзной работы с tty - ком-портами
там висела hylafax на двух консолях - одна была, а второй не было.
на 7.1 всё работало, а на 7.2 система вешалась на второй попытке подключения к несуществующему терминалу...
не на первой причём, а на второй!
когда user level third party applications вешают кернел, это очень очень плохо.
отключение сервисов - попытка предугадать возможные кастыли...
Re: Обновление FreeBSD...
Добавлено: 2009-06-13 18:45:29
john26
У меня масштабный вопрос по обновлению:
Имеется release 7.2
1. Стоит ли его обновлять до stable или сделать freebsd-update fetch/install?
2. И если стоит обновлять до stable, то нужно делать пересборку мира/ядра?
3. Нужно ли потом будет пересобирать все установленные порты?
4. Возможно ли забэкапить текущую систему (кроме как dump/restore)?
Re: Обновление FreeBSD...
Добавлено: 2009-06-13 21:50:24
zg
john26 писал(а):1. Стоит ли его обновлять до stable или сделать freebsd-update fetch/install?
релиз по определению стабильнее чем стэйбл, если сервак боевой, смысла нет.
john26 писал(а):2. И если стоит обновлять до stable, то нужно делать пересборку мира/ядра?
гм.. а в чём тогда суть обновления? -))) если мир и ядро не пересобирать, то ничего и не обвится.
john26 писал(а):4. Возможно ли забэкапить текущую систему (кроме как dump/restore)?
смотря что считать бэкапом... В принципе при правильной работе данные теряются редко.
Re: Обновление FreeBSD...
Добавлено: 2009-06-13 22:13:31
john26
zg Благодарю за ответ.
"сервак" не "боевой" - десктоп домашний. Хотелось бы еще по 3-му пункту получить ответ (ибо портов более 540).
И еще: обновлять только ядро имеет смысл, или без пересборки мира - неэффективно?
Re: Обновление FreeBSD...
Добавлено: 2009-06-14 6:51:01
zg
john26 писал(а):И еще: обновлять только ядро имеет смысл, или без пересборки мира - неэффективно?
обычно в UPDATE пишут, что и в какой последовательности нужно обновить. Но если не пишут, то на мой взгляд правильней, когда после обновления сырцов мир пересобирается вместе с ядром. Правда каждый день пересобирать мир тоже не стоит.
john26 писал(а):3. Нужно ли потом будет пересобирать все установленные порты?
если переход был между больших веток (скажем с 7.0 -> 7.2 или 6.4 -> 7.2), то да, надо. А если к примеру с релиза на стейбл, то не обязательно. В большенстве случаев это описано в UPDATE, а иногда определяется опытным путём, если приложение не заработает после обновления.
john26 писал(а):(ибо портов более 540)
мой опыт сидения на фре подсказывает, что если появилось огромное желаение обновить фрю, кеды и все порты, при том что всё работает, то лучше сходить на улицу, погулять и скушать вкусный пирожок...

может пройдёт

Re: Обновление FreeBSD...
Добавлено: 2009-06-14 10:17:14
john26
Если стоит release-7.2, и я хочу лишь ядро обновить - чезез csup нужно качать RELENG_7_2 или RELENG_7 ?
Re: Обновление FreeBSD...
Добавлено: 2009-06-14 11:03:20
zg
john26 писал(а):Если стоит release-7.2, и я хочу лишь ядро обновить - чезез csup нужно качать RELENG_7_2 или RELENG_7 ?
лучше RELENG_7_2, чтобы рассинхронизации мира и ядра не было
Re: Обновление FreeBSD...
Добавлено: 2009-06-14 11:07:25
john26
zg писал(а):john26 писал(а):Если стоит release-7.2, и я хочу лишь ядро обновить - чезез csup нужно качать RELENG_7_2 или RELENG_7 ?
лучше RELENG_7_2, чтобы рассинхронизации мира и ядра не было
То-есть, в ядро от RELENG_7_2 уже будут включены патчи, вышедшие после релиза - правильно? или патчи надо отдельно ставить?
Re: Обновление FreeBSD...
Добавлено: 2009-06-14 13:46:41
zg
john26 писал(а):То-есть, в ядро от RELENG_7_2 уже будут включены патчи, вышедшие после релиза - правильно?
ядро будет от последней стабильной версии 7.2. Если реленг будет просто 7, то ядро запросто может обновиться до 7.3 или 7.4, то есть до последней версии седьмой ветки, что приведёт к рассинхронизации. Понятние патчей это немного другое, они могут и не включаться в основную систему. Тут надо рассылку читать и список последних изменений.
Но в любом случае, если версия ядра сменится, то после пересборки uname это покажет.
Re: Обновление FreeBSD...
Добавлено: 2009-06-14 19:02:35
john26
Было так: "7.2-RELEASE #0"
Сделал так: csup -> RELENG_7_2 написло что 3 файла проапгрейдило (2 в ядре, 1 в мире).
Затем make build/install получил "7.2-RELEASE-p1 #0"
Огромное спасибо zg за устранение пробелов в теории.
Re: Обновление FreeBSD...
Добавлено: 2009-06-14 21:39:20
zg
john26 писал(а):получил "7.2-RELEASE-p1 #0"
гуд
john26 писал(а):написло что 3 файла проапгрейдило (2 в ядре, 1 в мире).
можно попробовать ещё собрать тот кусочек мира, где файл обновился, если он не тянет за собой весь мир.
Re: Обновление FreeBSD...
Добавлено: 2009-06-14 23:05:15
john26
Прочитал про тот файлик, что в "мире" остался на сайте фри -
http://security.freebsd.org/advisories/ ... 1.ntpd.asc
Код: Выделить всё
# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/usr.sbin/ntp/ntpd
# make obj && make depend && make && make install
# /etc/rc.d/ntpd restart
Чисто теоретически, только этот демон должен пересобраться, если я провильно понимаю. На днях, как будет время, попробую.
Re: Обновление FreeBSD...
Добавлено: 2009-06-15 9:36:17
vvn
Насколько я понял, основное отличие в обновлении между ветками x.c > y.d от обновления x.a > x.b состоит в том, что после обновления между ветками нужно удалять старые библиотеки, но это может привести к нестабильности работы некоторых установленных пакетов?
