Поставил Debian, и столкнулся с такой проблемой, что программу из репозитория можно поставить лишь той версии, что в нем находится. Мне было необходимо поставить MySql 5.1. Я скачал deb пакеты, и установил через dpkg -i
Но возникли конфликты с зависимостями.
Суть вопроса. Какой linux с каким пакетным менеджером поможет решить вопросы с конфликтом зависимостей?
И можно ли установить несколько версий одной и той же программы, допустим MySql?
Используйте lxc-контейнеры для таких целей. MySQL 5.1 — ископаемое, поставьте в контейнер современную данной версии версию дистрибутива и там держите. Не раскатывайте на живых серверах ископаемые :)
Спасибо, выход хороший, но это все же костыль. Бывают проекты, которые надо поддерживать. И они зависимы от определенных версий.
Скажите, в gentoo с портежами же по идее таких проблем нет?
Это не костыль, а единственно правильный вариант. Такие вещи надо засовывать в контейнеры. В Gentoo вы можете сказать emerge какой версии поставить пакет и если ebuild есть, то он поставится, а выше замаскировать. Но не факт, что у вас MySQL 5.1 вообще соберется с остальным окружением, потому и посоветовал сразу lxc.
Эргил Осин: Эргил Осин: хорошо. Но как быть в продакшине? Испотльзовать lxc? Это правильный выбор? Или лучше поставить более старую версию debian с old stable веткой? И в ней установить нужной версии софт. Как скажется контейнер lxc на производительности и апдейте софта.
Игорь Александрович: накладные расходы на контейнеры колеблются в районе нуля и lxc используется в продакшене многими, в том числе и мной. Лучше поставить на сервер текущий stable, что бы были все обновления безопасности, а внутри поставить нужную вам версию в контейнере, закрытую от всех ветров.
Игорь Александрович: В Gentoo в портежах не держат ископаемые. Там можно найти, например, PHP 5.3, но ниже там уже не будет. Так что контейнеры - это действительно выход.