Страница 1 из 1

Доустановка ПО, несколько вопросов [FreeBSD 10.0]

Добавлено: 2015-07-14 8:14:41
Pegasus
День добрый.

Возникла у меня проблема с доустановкой ПО, чем-то похожа на http://forum.lissyara.su/viewtopic.php?f=53&t=43233, но только не так запущено.

Был сервак с Asterisk и всем необходимым софтом (из портов). Возникла новая задача и появилась необходимость доустановить софт, конкретно sox. Из пакета отказался ставится. Из портов тоже отказался с ошибкой типа порты-то обновлять надо. Обновил порты, теперь при установке sox он хочет много чего проапгрейдить (что логично) и грохнуть (этого я понять не могу).

Код: Выделить всё

Installed packages to be REMOVED:
        net-snmp-5.7.2_14
        asterisk11-11.10.2_1
        mpc-1.0.2
        gcc-4.7.3_1
        php55-iconv-5.5.13
        dahdi-2.4.0rc5_6
Вопросы:
1. Почему при установке sox предлагает грохнуть (а не обновить, например) указанные пакеты?
2. Можно ли при установке отказаться от удаления пакетов?
3. Чем это грозит?

ps Где почитать про жизненный цикл софта и Оси, как правильно устанавливать (порты и/или пакеты), как обновлять, как доустанавливать (без таких вот приколов)? (Хэндбук читал, практика своя и коллег показывает что всё не так просто.)

Доустановка ПО, несколько вопросов [FreeBSD 10.0]

Добавлено: 2015-07-14 11:10:50
f_andrey
Если было из портов, то лучше и обновлять/доустанавливать из портов. Хотя нынче мейнстрим это пакеты, либо официальные, либо свои собранные poudriere. Смешивать к сожалению не лучшая идея с кучей граблей, возможно использование одновременно нескольких репозиториев, но судя по тем же рассылкам, тоже периодически приводит к неведомым граблям.

1. что й то ему не нравится, предположительно какие нибудь опции/зависимости, pkg нынче весьма умный и своевольный, а вот диагностики не густо, если интересно то можно погонять pkg -o DEBUG_LEVEL=2 (до 4-х) но готовится что там тонны логов, чем больше уровень тем больше.
2. можно принудительно сделать что хочешь -f но сильно не рекомендуется, потом скорее всего аукнется.
3. да чем угодно, от того что не заработает, до того что в следующем обновлении прийдётся возится вручную ещё больше разруливая.

С документированностью этого процесса, нынче к сожалению не густо, так что только самостоятельно вникать и экспериментировать.

Доустановка ПО, несколько вопросов [FreeBSD 10.0]

Добавлено: 2015-07-14 12:00:28
guest
Pegasus писал(а):День добрый.

Возникла у меня проблема с доустановкой ПО, чем-то похожа на http://forum.lissyara.su/viewtopic.php?f=53&t=43233, но только не так запущено.

Был сервак с Asterisk и всем необходимым софтом (из портов). Возникла новая задача и появилась необходимость доустановить софт, конкретно sox. Из пакета отказался ставится. Из портов тоже отказался с ошибкой типа порты-то обновлять надо. Обновил порты, теперь при установке sox он хочет много чего проапгрейдить (что логично) и грохнуть (этого я понять не могу).

Код: Выделить всё

Installed packages to be REMOVED:
        net-snmp-5.7.2_14
        asterisk11-11.10.2_1
        mpc-1.0.2
        gcc-4.7.3_1
        php55-iconv-5.5.13
        dahdi-2.4.0rc5_6
Вопросы:
1. Почему при установке sox предлагает грохнуть (а не обновить, например) указанные пакеты?
2. Можно ли при установке отказаться от удаления пакетов?
3. Чем это грозит?

ps Где почитать про жизненный цикл софта и Оси, как правильно устанавливать (порты и/или пакеты), как обновлять, как доустанавливать (без таких вот приколов)? (Хэндбук читал, практика своя и коллег показывает что всё не так просто.)
Вероятно, Вы изначально выбрали неверную политику:

1) попробовали установить из пакетов (а они обновляются), соответственно более свежие версии
собраны с отличными зависимостями от Ваших (как минимум по версиям)
2) далее Вы решили собрать из портов - обновили их, и тут, что-то пошло не так...

Нужно было:
- оставить или сохранить Ваше старое дерево портов из которого Вы собирали ПО и ставить sox
из него (дерево можно было оставить или сохранить на _всякий_случай_)
- собрать и установить из него sox, для конвертации sound пофик какой версии sox
- после чего можно было проапгрейдить сам pkg

Другой вариант:
- обновление портов
- в этом случае, удобней и правильней установить portmaster или portupgrade (на выбор, последний
требует кучу зависимостей, а первый - просто скрипт)
- апгрейдить порты используя portmaster или portupgrade, предварительно прочитав:
# less /usr/src/UPDATES - изменения в портах, изменения defaults и тд и тп, какие предварительные
действия, возможно придется совершить

обычно, апгрейд дерева портов и апгрейд уже установленных портов через portmaster, производится
без проблем (разумеется, следует освоить portmaster)
---------------------------------------------------------------------------------------------------------------------------------
Про пакетный менеджер "pkg" aka pkgng и общий подход к смешанной установке ПО (пакеты+порты):
- установку из пакетов используют только после Install - устанавливают обычно инструментарий
и то что Вас устраивает в default'ной сборке
- далее, производится сборка и установка из портов всего что Вам нужно с ВАШИМИ ОПЦИЯМИ сборки

С ЭТОГО МОМЕНТА (что-то установили из портов) ЗАБЫВАЕТЕ ПРО УСТАНОВКУ ИЗ ПАКЕТОВ!

- после этого, устанавливаете портменеджер: portmaster или portupgrade
- время от времени можете производить апгрейд дерева портов
- и установку и сборку из портов - выбранным портменеджером: portmaster/portupgrade

либо, как было сказано - создаете свой репозиторий со своей машиной poudriere и используете
пакеты.

прим. Есть еще хороший метод, создаете виртуальную машину подобную вашему серверу,
стараетесь установить тот же софт и тех же версий, затем собираете sox - если все получилось,
создаете нужные пакеты и разворачиваете на реальном сервере. В таком подходе - много
вариантов...

Доустановка ПО, несколько вопросов [FreeBSD 10.0]

Добавлено: 2015-07-14 17:54:35
Pegasus
Господа, спасибо, очень помогли.