Когда я сталкиваюсь с подобными ситуациями, я обычно избегаю диспетчера пакетов, особенно если было бы неловко что-то сломать, например, производственный сервер. Вместо этого я бы пошел в Activestate и загрузил их двоичный пакет:
https://www.activestate.com/activepython/downloads/
Это устанавливается путем запуска сценария, который помещает все в папку и не затрагивает системные файлы. Фактически, вам даже не нужны права root для его настройки. Затем я меняю имя двоичного файла на что-то вроде apy26, добавляю эту папку в конец PATH и начинаю кодирование. Если вы устанавливаете пакеты с помощью apy26 setup.py install
или если вы используете virtualenv и easyinstall, то у вас есть настолько гибкая среда Python, насколько вам нужно, без использования стандартного системного Python.
Изменения ... Недавно я проделал некоторую работу по созданию переносимого двоичного файла Python для Linux, который должен работать в любом дистрибутиве без внешних зависимостей. Это означает, что любые двоичные разделяемые библиотеки, необходимые для переносимого модуля Python, являются частью сборки, включены в архив и установлены в структуре частных каталогов Python. Таким образом, вы можете установить Python для своего приложения, не вмешиваясь в установленный системой Python.
На моем сайте github есть сценарий сборки, который был тщательно протестирован на Ubuntu Lucid 10.04 LTS как при 32-разрядной, так и при 64-разрядной установке. Я также построил его на Debian Etch, но это было довольно давно, и я не могу гарантировать, что я что-то не изменил. Самый простой способ сделать это - просто поместить выбранный вами Ubuntu Lucid на виртуальную машину, проверить скрипт с помощью git clone git://github.com/wavetossed/pybuild.git
и затем запустить скрипт.
После того, как вы его собрали, используйте тарбол в любом последнем дистрибутиве Linux. Есть одна небольшая проблема с перемещением его в каталог, кроме того, /data1/packages/python272
что вам нужно запустить включенный, patchelf
чтобы установить путь интерпретатора ДО того, как вы переместите каталог. Это влияет на любые двоичные файлы в/data1/packages/python272/bin
Все это основано на сборке с помощью RUNPATH и копировании зависимых разделяемых библиотек. Несмотря на то, что сценарий находится в нескольких файлах, на самом деле это один длинный сценарий оболочки, организованный в стиле каталогов /etc/rc.d.