Должен ли я запускать 32-разрядные и 64-разрядные производственные приложения на 64-разрядном сервере Debian?
Мне нужно запустить 2 проприетарных приложения C++, одно из которых 64-разрядное, а другое 32-разрядное, на рабочем сервере Debian GNU/Linux.
Оба имеют много зависимостей для библиотек, предоставляемых debian. Вот несколько примеров:
Приложение A (64 бит) зависит от:
- MySQL (64 бит)
- libssl (64 бит)
- Libboost (64 бит)
- ...
Приложение B (32 бита) зависит от:
- libssl (32 бит)
- libboost (32 бит)
- ...
Если я установлю Debian Lenny 64 bit, я получу отличную ОС для запуска приложения A. Но для приложения B мне придется поддерживать (и обновлять) 32-битные библиотеки самостоятельно, создавая бэкпорт каждой из них для установки в /usr/lib32.
Есть ли другой способ решить эту проблему, о которой я не задумывался? Или это плохая идея, которую нельзя использовать на производственном сервере?
2 ответа
Одним из вариантов является сборка полной 32-битной установки для запуска в качестве среды chroot, в Debian есть хорошие инструменты для этого, например, я бы посмотрел на debootstrap
debootstrap --arch i386 gutsy /mnt/32bit_install http://ftp.us.debian.org/debian
Это нормальная ситуация. У Debian есть несколько замечательных инструкций, связанных с этой проблемой. Смотрите здесь Chrooting 32-битное приложение даст вам чистую 32-битную среду, чтобы играть и поддерживать должным образом.