BSDPORTAL.RU
http://www.bsdportal.ru/

неудачное обновление с 9.3 на 10.3
http://www.bsdportal.ru/viewtopic.php?f=58&t=28278
Страница 1 из 2

Автор:  Reken [ Сб 18 мар, 2017 4:41 pm ]
Заголовок сообщения:  неудачное обновление с 9.3 на 10.3

Здравствуйте
Подскажите пожалуйста, как можно исправить следующее после обновления FreeBSD:
Код:
freebsd dovecot: pop3-login: shared object "libssl.so.6" not found
Shared object "libkrb5.so.10" not found required by fetchmail


Обновлялся по инструкции... Порты пересобирал через portupgrade

Автор:  spin [ Сб 18 мар, 2017 8:42 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

По какой инструкции делали обновление?
Похоже Вы либо не по "той" инструкции делали, либо где-то чего пропустили.
У меня была похожая проблема, когда не пересобрал все порты, а завершил установку ОС без этого.
После обновления все порты пересобирали?

Автор:  Reken [ Сб 18 мар, 2017 9:27 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

spin писал(а):
У меня была похожая проблема, когда не пересобрал все порты, а завершил установку ОС без этого.

Как устранили проблему?

Я делал так, правда не всё гладко прошло:
1) freebsd-update upgrade -r 10.0-RELEASE
2) Внес вручную изменения, где FreeBSD сам не смог отредактировать файл, далее опять freebsd-update install
3) Перезагрузился, и ещё запустил freebsd-update install
4) Далее portsnap fetch update, не сработал так перестал работать resolv... Убрал в resolv.conf внутренний адрес freebsd (на нем крутится named), после перезапустил freebsd, и после перезагрузки portsnap fetch update отработал успешно...
5) portupgrade -ra и тут вылезла ошибка....
Код:
===>  Applying FreeBSD patches for libevent-2.1.8
2 out of 3 hunks failed--saving rejects to evdns.c.rej

=> FreeBSD patch patch-evdns.c failed to apply cleanly.
*** Error code 1

Stop.
make[3]: stopped in /usr/ports/devel/libevent
*** Error code 1

Stop.
make[2]: stopped in /usr/ports/devel/libevent
*** Error code 1

Для решения, я удалил дерево портов, так как в ветке libevent какие то проблемы похоже были, далее portsnap fetch extract update. После в libevent выполнил make install clean, отработал успешно...
6) Повторно portupgrade -ra (Дособрались оставшиеся программы)
7) freebsd-update install (И тут опять ошибка:)
Код:
src component not installed, skiped
далее наругался на отсутствие каталогов в /var/namedb/
done

Как я понял, из-за отсутствия named. После я установил bind99 и настроил named. Named успешно работает...
8) Перезагрузился, попробовал ещё разок freebsd-update install
Но сервер наругался, сказал что нужно freebsd-update fetch install

Вот подробно и расписал, как я действовал...
P.S. после 6-го шага посыпалась ошибка
Код:
/etc/defaults/rc.conf: =======: not found

Исправил, заменив rc.conf на файл из /usr/share/examples/etc/defaults/rc.conf

Автор:  Reken [ Сб 18 мар, 2017 9:39 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

А может быть, что просто dovecot и fetchmail непересобрались?
Именно они не могут запуститься... Они ссылаются на то, что им нужны библиотеки libssl.so.6 и libkrb5.so.10

Как я понял это старые библиотеки...
Может как вариант пересобрать dovecot и fetchmail
Код:
зайти в порты в каталог этих программ
там make deinstall
а потом make install clean


P.S.
Пробовал так:
Код:
# ln -s /usr/lib/libkrb5.so.11 /usr/lib/libkrb5.so.10

Не помогло...

Автор:  Reken [ Вс 19 мар, 2017 10:14 am ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Я пересобрал fetchmail и dovecot
После чего они заработали...

Похоже не все пересобралось в момент установки...
И ещё у меня команда make config не отрабатывает, результат выдвет такой:
Код:
options unchanged

Это тоже из-за библиотек...

Подскажите как можно дообновиться?

Автор:  Reken [ Вс 19 мар, 2017 10:35 am ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

скорее всего make config не отрабатывает потому что не пересобрался dialog4ports

Команда portupgrade -f dialog4ports должна исправить это...

А вообще похоже всё из-за того, что во время всеобщей пересборки, нужно было указать ключ не -ra а нужно было -afrR

Как теперь можно понять, что пересобралось, а что нет?

Автор:  spin [ Пн 20 мар, 2017 6:52 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

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

У себя делал
Код:
portsnap fetch
portsnap extract
portmaster -arF

И разбираясь с каждой проблемой, когда "вылетает" сборка с ошибкой. Читайте внимательно, последние несколько десятков строк.
Попытка пересобрать проблемный порт через
Код:
make install

И повторный перезапуск:
Код:
portmaster -arF


Описал личный случай. Как у Вас не знаю
Старшие товарищи, пусть поправят меня, а то я насоветую тут.

Автор:  spin [ Пн 20 мар, 2017 8:00 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Вот кажись и ошибся, еще раз глянул man для portmaster
скорее всего должно быть вот так:
Код:
portmaster -aRf

Автор:  lavr [ Пн 20 мар, 2017 8:17 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Все проблемы от:
- недостатка знаний;
- недостатка опыта;
...

Обновление системы любой из способов:

1) правильно обновиться через сборку - описано в /usr/src/Makefile по шагам, единственно
что можно опустить, шаг reboot в середине процесса, в конце не выполнять
удаление старых библиотек:

# make delete-old-libs

после перезагрузки, в новой системе:
- либо сразу пересобрать все порты С УЧЕТОМ /usr/ports/UPDATING
- либо установить соответствующий compatXY, если перешли с 9'ки на 10'ку,
установить compat9x

# ls -la /usr/ports/misc/ | grep compat

После compat9x - можно make delete-old-libs и позже пересобрать С УЧЕТОМ /usr/ports/UPDATING

2) правильно выполнить freebsd-update - смержить или верно отредактировать
файлы которые будет предложено исправить by hands!, и freebsd-update

Если память не изменяет, freebsd-update - автоматом удаляет старые библиотеки
(то что в ручной сборке make delete-old-libs), посему, после перезагрузки,
установить compatXY для временной работы своего непересобранного ПО

апгрейд пакетов и портов, такой же как и в п1)

если не следовать /usr/ports/UPDATING, у portmaster и portupgrade может снести крышу.

Если удален pkg или проблемы с установкой - всегда можно использовать pkg-static,
собранный статикой, его всегда можно сохранить на всякий пожарный в /root/[bin|sbin]
как и svn собранный статикой и еще ряд полезных утилит.

Вот как бы и все, если этому не следовать, то придется собирать всевозможные
грабли с изменением названий портов и старых в локальной базе пакетов,
изменением default perl,php и тд и тп

Автор:  Reken [ Вт 21 мар, 2017 10:09 am ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Всем спасибо за советы...
В моем случае, была допущена ошибка во время пересборки всего установленно софта...
Я ввел ключ -ar , этого не достаточно, нужно пересобрать всё.... следовательно введу ключ -afrR

Команды на удаление старых библиотек, как я понял вводить не нужно, так как freebsd-update сам их удалил...

Автор:  Reken [ Вт 21 мар, 2017 3:01 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

А когда будет всё пересобираться... Лучше что бы пользователи не обращались к серваку?
У меня на серваке squid,exim,mysql,dovecot

Лучше что бы к этим программам не обращались в процессе пересборки?

Автор:  Reken [ Чт 23 мар, 2017 8:58 am ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Подскажите пожалуйста, правильно ли будет сделать так:
Пересобирать весь софт на неудачно обновленной FreeBSD, не особо хочется... Это будет долго, и пользователей придется отрывать от работы...
Я посмотрел через pkg дату установки всех пакетов... Около 100 пакетов не пересобрались... Всё остальное пересобрано (всё основное что требуется для работы пользователей, SQUID MYSQL EXIM и т.д.)
Так вот я думаю, может мне просто пересобрать, то что осталось? Допустим perl5 со всеми зависимыми и т.д.
portupgrade -frR perl5

Команда с ключом afrR будет слишком долго работать, да и обновит 50% что и так уже обновлено...

Автор:  fsx [ Чт 23 мар, 2017 11:47 am ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Попробуйте обновлять софт выборочно, может помочь (может с ключом -f и -r придется). Из этого списка:
Код:
pkg version -vl "<"


И читайте /usr/ports/UPDATING - проблемы изначально пошли из-за libevent, если бы выполнили пару инструкций из UPDATING, касаемых этого порта, всех остальных проблем, скорее всего, не было бы.

Автор:  Reken [ Чт 23 мар, 2017 12:27 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Спасибо за советы...

fsx писал(а):
проблемы изначально пошли из-за libevent

Может конечно и из-за этого, но основная причина это неверно указанный ключ... Нужно было с опцией f указать
fsx писал(а):
если бы выполнили пару инструкций из UPDATING, касаемых этого порта

Вы говорите про следующие указания в UDATING?
Код:
    # pkg set -n libevent2:libevent
    # pkg set -o devel/libevent2:devel/libevent

fsx писал(а):
pkg version -vl "<"

Если я правильно понимаю, эта команда покажет только софт который требует обновления, а мне нужно пересобрать софт который не пересобрался на 10.3
Я этот софт уже по датам установки нашел...
Код:
pkg query "%t %#d %n-%v" | sort

Автор:  AMDmi3 [ Чт 23 мар, 2017 1:46 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Reken писал(а):
Я этот софт уже по датам установки нашел...
Код:
pkg query "%t %#d %n-%v" | sort

Зачем, версия релиза указывается в пакете:
Код:
pkg query "%q %n-%v"

Автор:  fsx [ Чт 23 мар, 2017 2:53 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Reken писал(а):
Вы говорите про следующие указания в UDATING?
Код:
    # pkg set -n libevent2:libevent
    # pkg set -o devel/libevent2:devel/libevent



Да, вы ведь не только хотели пересобрать порты, но и дерево портов обновили вроде. Так эти команды надо было выполнить.

Автор:  Reken [ Чт 23 мар, 2017 3:07 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

AMDmi3 писал(а):
Зачем, версия релиза указывается в пакете:

Мне нужно не версию релиза посмотреть, а дату установки пакета... Если дата старее дня, когда я обновился на 10.3, значит порт не пересобирался... Ведь есть софт, который нужно не обновить, а просто пересобрать под FreeBSD 10.3

fsx писал(а):
Так эти команды надо было выполнить

Теперь уже получается незачем выполнять эти команды...Libevent уже установился...

Автор:  AMDmi3 [ Чт 23 мар, 2017 3:30 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Reken писал(а):
Мне нужно не версию релиза посмотреть, а дату установки пакета... Если дата старее дня, когда я обновился на 10.3, значит порт не пересобирался... Ведь есть софт, который нужно не обновить, а просто пересобрать под FreeBSD 10.3

Если речь об обновлении с 9.x то вам нужно смотреть именно версию релиза и пересобирать пакеты у которых она отлична от FreeBSD:10.

Автор:  Reken [ Чт 23 мар, 2017 3:47 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

AMDmi3 писал(а):
Если речь об обновлении с 9.x то вам нужно смотреть именно версию релиза и пересобирать пакеты у которых она отлична от FreeBSD:10.

Действительно, Вы правы...Спасибо
У меня по выводу команды 50 на 50, что то от FreeBSD 10 что то от FreeBSD 9...

Теперь вот думаю, как всё же правильнее поступить...

1 Вариант:
Запустить portupgrade -afrR . Но тут минус в том, что вообще всё будет пересобираться.

2 Вариант:
Пересобирать только те пакеты, которые остались от 9-ки, только с ключами -frR.

P.S. Возможно пересобирать софт, когда к нему обращаются пользователи (такой софт как SQUID EXIM MYSQL и т.д.)? Или когда пересобирается софт, нельзя что бы пользователи к нему обращались?

Автор:  ankor [ Чт 23 мар, 2017 4:30 pm ]
Заголовок сообщения:  Re: неудачное обновление с 9.3 на 10.3

Reken писал(а):
2 Вариант:
Пересобирать только те пакеты, которые остались от 9-ки, только с ключами -frR.

Попробуйте portmaster, на мой взгляд он лучше справляется.
Reken писал(а):
P.S. Возможно пересобирать софт, когда к нему обращаются пользователи (такой софт как SQUID EXIM MYSQL и т.д.)? Или когда пересобирается софт, нельзя что бы пользователи к нему обращались?

Можно работать, но юзверы будут плеваться.

Страница 1 из 2 Часовой пояс: UTC + 4 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/