Citrix ICA Client (Receiver) 13 имеет много зависимостей i386, поэтому я не могу установить на моем amd64 (64-битном) Debian Linux. Как я могу сделать эту работу?
3 ответа
Это было очень трудно исправить, поэтому я отвечаю на свой вопрос. Большая задолженность остальным, кто писал в блоге о различных компонентах этого исправления!
В этом ответе предполагается, что вы используете архитектуру Debian amd64
. Также предполагается, что ваша установка Debian уже поддерживает многоархивную архитектуру. (Это за пределами этого вопроса.)
- Загрузите установщик Citrix ICA Client (Receive) 13: http://www.citrix.com/downloads/citrix-receiver/linux/
- Обязательно выберите 64-битный установщик
.deb
- Пример имени файла:
icaclient_13.0.0.256735_amd64.deb
- Обязательно выберите 64-битный установщик
dpkg --add-architecture i386
apt-get install ia32-libs ia32-libs-i386 libglib2.0-0:i386 libgtk2.0-0:i386
- Это установит почти двести зависимых пакетов. Будьте очень терпеливы.
dpkg --force-all --install icaclient_13.0.0.256735_amd64.deb
- Не обращайте внимания на предупреждения об отсутствующих зависимостях:
lib32asound2
иnspluginwrapper
. Установка будет работать без этих библиотек.
- Не обращайте внимания на предупреждения об отсутствующих зависимостях:
- Проверьте, что нет отсутствующих зависимостей:
ldd /opt/Citrix/ICAClient/wfica
- Если вы видите
not found
в выводе:- Удалите клиент Citrix ICA:
apt-get remove icaclient
- Установите недостающие пакеты. (Это может быть немного сложно, так как Debian не всегда имеет отношение 1: 1 между именами в выводе
ldd
и именами пакетов.) - Переустановите клиент Citrix ICA:
dpkg --force-all --install icaclient_13.0.0.256735_amd64.deb
- Удалите клиент Citrix ICA:
- Если вы видите
- Не забудьте скопировать CACerts из Mozilla. Коллекция по умолчанию от Citrix жалкая.
cp --verbose /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/
- Если вы используете KDE, отредактируйте приложение ассоциации файлов
application/x-ica
.- Добавить новое приложение:
/opt/Citrix/ICAClient/wfica.sh
- Добавить новое приложение:
- На данный момент лучше использовать Firefox /Iceweasel для входа на удаленные серверы Citrix. Google Chrome требует сначала загрузить файл
launch.ica
, а затем запустить его. Для Firefox /Iceweasel это без проблем, и эти приложения автоматически учитывают ассоциации файлов KDE.
Каждый раз, когда вам понадобится добавить несвязанные пакеты Debian в будущем, вы будете вынуждены:
- Удалить пакет
icaclient
:apt-get remove icaclient
- Установите другие пакеты
- Переустановите пакет
icaclient
(используя файл.deb
из Citrix).dpkg --force-all --install icaclient_13.0.0.256735_amd64.deb
- Перепишите CACerts из Mozilla.
cp --verbose /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/
Какая боль.
Наконец, вы можете вносить постоянные изменения в ваш пакет .deb
. Читайте больше здесь: Как я могу исправить плохой коммерческий пакет deb?
У меня также были некоторые проблемы с отсутствующими зависимостями, однако решение, которое я нашел, немного проще, чем ваше (спасибо linuxquestions.org):
Скачайте squeezy nspluginwrapper по ссылке:
Скачать Citrix icaclient по ссылке:
Добавьте опцию 32-битной архитектуры
$ sudo dpkg --add-architecture i386 $ sudo apt-get update
Установите загрузчик nspluginwrapper, загруженный на шаге 1
$ sudo dpkg -i nspluginwrapper_1.3.0-1_amd64.deb $ sudo apt-get -f install
установить клиент Citrix ica
$ sudo dpkg -i icaclient_13.0.0.256735_amd64.deb
Запустите другую установку apt-get -f, чтобы получить последние отсутствующие библиотеки и, наконец, установите клиент
$ sudo apt-get -f install
Когда вы запустите Citrix, появится сообщение об отсутствии сертификатов. Если вы используете Firefox (iceweasel), вы можете порадовать Citrix, добавив символическую ссылку к сертификатам Firefox:
$ sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts
Я следовал вашим инструкциям до момента установки файла icaclient_13.0.0.256735_amd64.deb. Вместо того чтобы использовать терминал, я открыл файл deb с помощью gdebi, и он работал оттуда. Мне не пришлось заставлять его игнорировать отсутствующие зависимости.