Категорії
Solaris

Использование нескольких версий приложений на одной ОС

Что делать, если на до на одной машине иметь несколько разных версий одного и того же приложения (например, python) и иметь возможность очень просто переключаться между разными версиями. Сразу скажу, что этот функционал должен поддерживаться самим приложением и не все приложения его поддерживают. И так, посмотрим список наших приложений и дефолтных версий:

# pkg mediator
MEDIATOR VER. SRC. VERSION IMPL. SRC. IMPLEMENTATION
perl     vendor    5.12    vendor     
php      system    5.4     system     
python   vendor    2.6     vendor     

А вот так можно посмотреть список всех доступных версий:

# pkg mediator -a
MEDIATOR VER. SRC. VERSION IMPL. SRC. IMPLEMENTATION
perl     vendor    5.12    vendor     
php      system    5.4     system     
python   vendor    2.6     vendor     
python   system    2.7     system     

Меняем на нужную версию и проверяем:

# pkg set-mediator -V 2.7 python
            Packages to update:  4
           Mediators to change:  1
       Create boot environment: No
Create backup boot environment: No

PHASE                                          ITEMS
Updating modified actions                      11/11
Updating image state                            Done 
Creating fast lookup database                   Done 
# pkg mediator
MEDIATOR VER. SRC. VERSION IMPL. SRC. IMPLEMENTATION
perl     vendor    5.12    vendor     
php      system    5.4     system     
python   local     2.7     system     

2 коментарі “Использование нескольких версий приложений на одной ОС”

Хм, неужели функционал сего медиатора сводится, не считая ведения внутренней бд версионных перестановок (что следует из листинга) просто к перестановкам симлинков (обычная технология в никсах) на выбранный релиз приложения? 🙂 /ну еще может быть правкам каких-нить адекватных приложениями глоб.констант да иконок приложений…/
Гм-хм (подумав немного), – сама идея “медиатора” (хотя скорее всего лишь “переключателя”) довольно интересная… но ведь по етой технологии, заюзанной в один и тот же момент времени, не обеспечишь два или более в параллель запущенных приложения, требующих разных версий скриптовых языков, – так чтобы они не конфликтовали, – не правда ли?
Вот коли б ето был настоящий медиатор (сиречь посредник), умел бы он запускать (скажем под лёгкой паравиртуализацией) прогу с нужной ей версией библиотек/языков… (Мечты-мечты…) 🙂

Он призван лишь быстро поменять дефолтную версию. В других осях вы бы это делали самостоятельно и скорее всего что-то точно пропустили бы.
Для одновременного запуска 2 программ с разными версиями используйте полные пути к нужным версиям + LD_PRELOAD для либ (если надо).

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff