Задать вопрос
@slavabars
Веб программист

Как запретить pkg обновлять пакет?

Добрый день, обновляю php и нужно поставить mod_php. Но pkg тянет за собой apache24, который мне не нужен, т.к. есть свои тонкие настройки.
В портах можно было выставлять версию apache, как это сделать в pkg?

New packages to be INSTALLED:
mod_php56: 5.6.11
apache24: 2.4.12
  • Вопрос задан
  • 254 просмотра
Подписаться 2 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 3
greyhard
@greyhard
Программист, автолюбитель
Из документации к pkg

lock
used to lock packages against reinstallation, modification or deletion.

Попробуйте сделать Lock на уже установленный апач
Ответ написан
@kelevra
в родном репозитории лежат прекомпилированные пакеты с опциями по умолчанию. эти опции для mod_php, в частности, указывают ему компилироваться для apache 2.4. поэтому, даже если вы поставите из родного репозитория mod_php, то он, скорее всего, не заработает с apache 2.2.

для того, чтобы поставить из репозитория mod_php, который будет скомпилировать для apache 2.2 вам необходимо сделать свой репозиторий и прописать его в конфигурации pkg. если обновление нужно в единственном экземпляре, то проще поставить из портов.

ps. mpm_itk это глючный и дырявый костыль. с разными владельцами лучше всего запускать несколько копий апача через профили в /etc/rc.conf:
apache22limits_enable="YES"
apache22_profiles="mnx torrent forum retracker"

apache22_mnx_enable="YES"
apache22_mnx_configfile="/usr/local/etc/apache22/profiles/mnx.conf"

apache22_torrent_enable="YES"
apache22_torrent_configfile="/usr/local/etc/apache22/profiles/torrent.conf"

apache22_forum_enable="YES"
apache22_forum_configfile="/usr/local/etc/apache22/profiles/forum.conf"

apache22_retracker_enable="YES"
apache22_retracker_configfile="/usr/local/etc/apache22/profiles/retracker.conf"

при этом service apache22 start запустит 4 копии httpd с разными конфигами. разумеется, все они должны быть на разных портах.
Ответ написан
@slavabars Автор вопроса
Веб программист
Т.к. мой вопрос средствами pkg решить не удалось, сделал иначе.
Скачал порты с гита, в файле /usr/ports/Mk/bsd.default-versions.mk изменил строчку с APACHE_DEFAULT?= 2.4
Установил bmake, перелинковал make на bmake и собрал mod_php56
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы