Я создаю веб-приложение, и мне нужно проверить, установлены ли ia32-libs . Это должна быть команда не sudo, так как она будет выполняться www-data . Может ли кто-нибудь помочь мне? Я попытался перечислить пакеты в aptitude и dpkg без удачи.

PS: я на дистрибутивах на основе Debian.

2 ответа2

0

Вы можете запросить статус пакета с помощью следующей командной строки (без корневых привилегий):

dpkg --get-selections ia32-libs

Если пакет установлен, вы получите следующий результат (например, Ubuntu Precise):

ia32-libs                                       install

в противном случае вы получите что-то другое (фактический ответ зависит от ваших настроек локали).

Тем не менее, на последних версиях Debian и Ubuntus ia32-libs был превращен в переходный пакет в пользу настоящего многоархивного решения. Вы можете запросить вашу текущую архитектуру с

dpkg-architecture

который на х64 будет иметь строчку

DEB_HOST_ARCH=amd64

и вы можете проверить, включена ли поддержка i386, с помощью следующей команды:

dpkg --print-foreign-architectures

Ответ будет включать в себя i386 если есть необходимые библиотеки архитектуры.

Чтобы добавить архитектуру, нужно запустить

dpkg --add-architecture i386
0

Несколько способов сделать это:

dpkg -l | grep ia32-libs

dpkg --get-selections | grep ia32-libs

Вы получите список пакетов, установленных против запроса. Если ничего не возвращается, у вас нет пакета.

Источник: Debian Wiki

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .