В Ubuntu 12.04 LTS x64 мы хотели бы удалить внешнюю архитектуру i386, с которой она поставляется, но я не вижу команды dpkg
, чтобы сделать это чисто.
В Застряв с Foreign-Architecture = i386 при использовании apt-get , пользователю рекомендуется просто удалить строку из /etc/dpkg/dpkg.cfg.d/multiarch
, я могу это сделать (или вообще удалить этот файл) но мне было интересно, есть ли более «подходящий» способ сделать это.
Причина, по которой мы хотим это сделать, заключается в том, что мы поддерживаем большое количество агентов непрерывной интеграции, использующих Puppet, и хотим придерживаться «чистых 64». Мы устанавливаем наши собственные пакеты Debian из нашего собственного поддерживаемого репозитория, и это не получится, если мы не предоставим версию пакета для i386. Я знаю, что можно переопределить архитектуру в конкретной конфигурации репозитория, но будет проще очистить архитектуру не-64 в целом.
Похоже, что комментарий Паутина решил вашу проблему.
Вы можете добавить опцию к определению источников Apt, которая ограничивает архитектуры этого источника:
deb [arch=amd64] ...
Для получения дополнительной информации см. Вики-страницу сообщества на мульти-архитектурном управлении пакетами .
Стандартным способом удаления архитектуры будет использование dpkg:
sudo dpkg --remove-architecture i386
Протестировано на Ubuntu 16.0.4 LTS.
Это также быстрее и проще, чем добавлять архитектуру после каждого deb ... в sources.list.