oio11: (Default)
[personal profile] oio11
Добавление/удаление 32/64-bit архитектур в Ubuntu Linux

Как добавить/удалить 32-bit/64-bit архитектуру в Ubuntu Linux, вы задавались данным вопросом? Решение есть.

Регулярно работая в Ubuntu Linux, я сталкиваюсь с тем, что для моей архитектуры попросту нет пакета приложения, который бы позволил установить нужное мне приложение под мою архитектуру, то есть в наше время как вы все уже должны знать(знаете), разработчики в большей мере уделяют основное внимание при создании ПО 64-bit архитектуре, для 32-bit такого внимания нет.

Так вот, например работая на компьютере с 32-bit архитектурой, вы хотите установить приложение которое не доступно для вашей архитектуры, но доступно для 64-bit, в данном случае есть выход. Конечно не всегда он срабатывает, но выручает часто.

Наведу пример, скачали мы пакет определенного приложения, пускай это будет pak-name-amd64.deb, вам нужно установить данный пакет в Ubuntu, вы попробуете конечно выполнить установку пакета подобным способом:

dpkg -i pak-name-amd64.deb
В ответ получите следующее сообщение:
pak-name-amd64.deb is for architecture amd64 ; the package cannot be built on this system
То есть нам сообщается, что этот пакет только под 64-bit архитектуру и мы не можем его установить при нашей 32-bit, что мы делаем в данном случае? Мы добавим в систему временно 64-bit архитектуру для установки пакета и после установки удалим чтобы это не мешало при дальнейшей работе с системой:
sudo dpkg --add-architecture amd64
sudo apt-get update
После выполнения данной команды мы добавили 64-bit архитектуру нам в систему, после попробуем выполнить установку пакета выше:
dpkg -i pak-name-amd64.deb
Вы увидите, что установка пошла, только сразу предупреждаю, не всегда все происходит гладко, часто данный процесс происходит с ошибками, ничего не трогаем и даем возможность приложению установиться до конца, после установки просто выполним команду:
sudo apt-get -f install
  • После вы увидите сообщение, что система нам предлагает установить пакеты которые не смогли установиться ранее из-за ошибок, просто жмем клавишу - Enter и установка пакетов должна пройти гладко(гарантий нет), у меня это происходило без ошибок.
В общем, установили мы приложение и вроде-бы все работает, не забываем удалить 64-bit архитектуру с системы которую мы ранее добавили, так как у нас архитектура 32-bit, выполним в терминале команду:
sudo dpkg --remove-architecture amd64
sudo apt-get update
  • На данном этапе мы решили вопрос установки приложения под 64-bit архитектуру. Аналогичное мы можем проделать и для приложений под 32-bit архитектуру если у нас основная 64-bit, делаем по тому же принципу.
Есть у нас условный пакет с названием - pak-name-i386.deb.
Добавим 32-bit архитектуру в систему:
sudo dpkg --add-architecture i386
sudo apt-get update
Добавили 32-bit архитектуру, далее установим наш вымышленный пакет:
sudo dpkg -i pak-name-i386.deb
Как говорил выше, если даже установка идет с ошибками, не останавливаем данный процесс, даем завершиться установке, а после в том же терминале выполняем команду:
sudo apt-get -f install
  • Данная команда проверит и предложит установить пакеты которые не были установлены из-за ошибок при нашей попытке установки приложения выше.
После данных манипуляций так же не забываем удалить 32-bit архитектуру если у вас основная 64-bit, выполним в терминале команду:
sudo dpkg --remove-architecture i386
sudo apt-get update
Вот и все, архитектуру удалили, можем пользоваться установленным приложением.
По примеру выше, мы добавляли 32-bit архитектуру, так вот это должно пригодиться пользователям которые на 64-bit архитектуре, но хотят установить приложение TeamViewer возникает подобное сообщение при попытке установки:
Выбор ранее не выбранного пакета teamviewer.
(Чтение базы данных … на данный момент установлено 315507 файлов и каталогов.)
Распаковывается пакет teamviewer (из файла ./teamviewer_amd64.deb) …
dpkg: зависимости пакетов не позволяют настроить пакет teamviewer:
teamviewer зависит от lib32asound2, однако:
Пакет lib32asound2 не установлен.
teamviewer зависит от lib32z1, однако:
Пакет lib32z1 не установлен.
teamviewer зависит от ia32-libs, однако:
Пакет ia32-libs не установлен.

dpkg: ошибка при обработке параметра teamviewer (--install):
проблемы зависимостей — оставляем не настроенным
При обработке следующих пакетов произошли ошибки:
teamviewer
На данном этапе, чтобы решить вопрос установки приложения TeamViewer, мы добавляем 32-bit архитектуру в 64-bit(ваша текущая), выполним команду:
sudo dpkg --add-architecture i386
sudo apt-get update
После установим пакеты которые не установились из-за несоответствия архитектуры, выполним команду:
sudo apt-get -f install
Соглашаемся установить пакеты и жмем клавишу Enter, после проверяем, что TeamViewer успешно установился, удалим 32-bit архитектуру:
sudo dpkg --remove-architecture i386
sudo apt-get update
Как писал выше по установке TeamViewer под 64-bit архитектуру, у меня вот 32-bit, я соответственно ставлю под свою архитектуру и далее мы встречаемся с ошибкой:
root@Hacker:~/Загрузки# dpkg -i teamviewer_10.0.46203_i386.deb
Выбор ранее не выбранного пакета teamviewer.
(Чтение базы данных … на данный момент установлено 243957 файлов и каталогов.)
Preparing to unpack teamviewer_10.0.46203_i386.deb ...
Unpacking teamviewer (10.0.46203) ...
dpkg: зависимости пакетов не позволяют настроить пакет teamviewer:
teamviewer зависит от libjpeg62, однако:
Пакет libjpeg62 не установлен.

dpkg: error processing package teamviewer (--install):
проблемы зависимостей — оставляем не настроенным
При обработке следующих пакетов произошли ошибки:
teamviewer
  • Что мы делаем в данном случае чтобы приложение подтянуло нужные ему пакеты и установилось до конца и у нас была возможность работать с приложением TeamViewer.
Достаточно в этой ситуации просто выполнить команду:
sudo apt-get -f install

устанавливаем зависимости при установке TeamViewer

  • Далее согласиться установить пакеты нажав на клавишу Enter. Как видим неустановленные пакеты подтянулись и приложение удачно установилось.

Так же если кому интересно, советовал бы посмотреть видео, так же узнаете некоторые дополнительные команды:



https://www.youtube.com/watch?v=3RhPvqyCQVE

На этом пожалуй все, приложение мы установили, как добавить и удалить нужные нам архитектуры обсудили, после уже практикуемся, пробуем, пользуемся материалом изложенным выше. Как говорил, нет никаких гарантий, что все приложения будут гладко устанавливаться и работать, некоторые устанавливаются без проблем и далее работают отлично, есть некоторые если и установил без ошибок, при клике на ярлык, а оно не запускается и так бывает все это побочные последствия несоответствия архитектуры под которую пишется приложение. Если у вас все же после прочтения материала выше остались вопросы или вы столкнулись с проблемой при добавлении архитектуры и установке пакета, спрашивайте в комментариях к материалу, постараюсь по возможности ответить каждому.


http://linuxsoid.com/add-del-architecture-32-64-bitubuntulinux

Date: 2015-10-15 11:37 am (UTC)
From: [identity profile] oio11.livejournal.com
dpkg --add-architecture amd64
apt-get download --no-upgrade
apt-get download -d network-manager:amd64 --no-upgrade

October 2025

S M T W T F S
   1234
567891011
12131415161718
19202122 232425
262728293031 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 4th, 2026 11:49 am
Powered by Dreamwidth Studios