Linux установить пакет со всеми зависимостями

Как установить .deb файл с зависимостями

В основанных на Debian системах программные файлы, библиотеки исходный код упаковывается и распространяется как .deb файлы. Установка .deb файлов может быть сделана с помощью инструмента командной строки под названием dpkg. Тем не менее, типичный .deb пакет имеет зависимости (или обязательные пакеты), которые нужно предустановить для того, чтобы была возможность установить этот .deb пакет, и dpkg не может разрешить эти зависимости.

Например, если вы пробуете установить пакет под названием webmin используя dpkg на свежую Ubuntu, dpkg потерпит неудачу или проблем с зависимостями.

$ sudo dpkg -i webmin_1.620_all.deb dpkg: dependency problems prevent configuration of webmin: webmin depends on libnet-ssleay-perl; however: Package libnet-ssleay-perl is not installed. webmin depends on libauthen-pam-perl; however: Package libauthen-pam-perl is not installed. webmin depends on apt-show-versions; however: Package apt-show-versions is not installed. dpkg: error processing webmin (--install): dependency problems - leaving unconfigured Processing triggers for ureadahead . Errors were encountered while processing: webmin

Когда дело доходит до зависимостей .deb файлов, инструмент Linux под названием gdebi — это благословение. С gdebi вы можете установить .deb файлы с автоматическим решением неудовлетворённых зависимостей.

Утилита gdebi имеет два компонента gdebi для инструмента командной строки и gdebi-gtk с графическим интерфейсом. В зависимости от того, вы на настольном компьютере Linux или на «безголовом» сервере, вы можете установить только инструментом командной строки или полной графической версией.

Установка .deb файла с зависимостями на безголовый сервер

Для установки gdebi в консоли на Debian, Ubuntu или Linux Mint, проделайте следующее.

$ sudo apt-get install gdebi-core

Сейчас просто запустите gdebi с целевым .deb файлом для установки и обработки зависимостей. Любые обязательные пакеты будут установлены автоматически.

$ sudo gdebi webmin_1.620_all.deb

Установка .deb файла с зависимостями в среде рабочего стола

Вы можете также использовать консольный инструмент gdebi на в среде рабочего стола, или вы можете попробовать gdebi с графическим интерфейсом. Для этого установить gdebi как показано. GTK его интерфейса также будут установлены.

$ sudo apt-get install gdebi

Затем наберите эту команду для установки .deb файла.

$ sudo gdebi-gtk webmin_1.620_all.deb

Вы увидите графический интерфейс установщика пакетов, как показано на скриншоте ниже.

Читайте также:  Samsung m3870fw драйвер linux

Если есть какие-либо зависимости, статус в окне покажет вам эти зависимости и вы сможете проверить их кликнув на «Детали» как показано ниже.

Наконец, просто нажмите «Установить пакет» для процесса установки .deb.

Связанные статьи:

Источник

Как скачать пакеты DEB с зависимостями локально?

Загрузите пакеты deb локально

El уметь устанавливать приложения в Ubuntu, Linux Mint, а также на их производные существуют различные методы. Самый распространенный и известный — это центр распространения программного обеспечения, в котором мы можем найти большое количество приложений, готовых к установке.

Еще один из обычных методов, которые мы обычно используем, — с помощью терминала и другого один из самых популярных — установка из пакета deb.

В целом когда мы устанавливаем пакет deb, мы обычно не проверяем зависимости этого, так как это только чистый пакет и не включает все те пакеты или библиотеки, которые необходимы для его правильной работы.

Первый способ

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

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

Как загрузить пакеты deb с зависимостями локально?

к чтобы локально загрузить пакеты с зависимостями в Debian, Ubuntu и производных, вы можете использовать один из следующих методов.

Это самый простой и прямой метод.

Для этого просто выполните следующую команду, чтобы загрузить пакет со всеми зависимостями, не устанавливая их:

sudo apt-get install --download-only nombre-del-paquete

все загруженные файлы будут сохранены в папке /var / cache / apt / archives.

Теперь мы можем просто скопировать всю папку кеша на любой флеш-накопитель, чтобы позже использовать эти загруженные пакеты.

Читайте также:  Модем мегафон для linux

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

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

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

ubuntu_история

Второй метод

Другой способ сделать это — сначала загрузить зависимости нужной нам программы.

Следовательно, чтобы узнать список всех зависимостей пакета, мы должны выполнить следующую команду

sudo apt-cache depends nombre-del-paquete

Результат будет примерно таким:

nombre-del-paquete PreDepends: ….. Depends: xxx Depends: xxxx Conflicts: Breaks: update-manager-core Suggests: xxxx Suggests: xxxx Replaces: xxx

Сейчас нам просто нужно загрузить пакет с его зависимостями. Мы можем сделать это с помощью следующей команды:

for i in $(apt-cache depends python | grep -E 'Depends|Recommends|Suggests' | cut -d ':' -f 2,3 | sed -e s/''/''/); do sudo apt-get download $i 2>>errors.txt; done

Приведенная выше команда загрузит пакет вместе со всеми необходимыми зависимостями и сохранит их в текущем рабочем каталоге.

Эта команда также сохранит все ошибки в файле errors.txt, который мы можем просмотреть, если у нас возникла проблема и нам известна причина конфликта.

Как скачивать пакеты по архитектуре?

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

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

sudo dpkg --add-architecture i386*

TМы также можем скачать пакеты для ARM, а также включить архитектуруa в нашей системе, нам просто нужно включить архитектуру с:

sudo dpkg --add-architecture armhf

так же Мы можем проверить, какие архитектуры доступны в нашей системе:

sudo dpkg --print-foreign-architectures

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

for i in $(apt-cache depends python:i386 | grep -E 'Depends|Recommends|Suggests' | cut -d ':' -f 2,3 | sed -e s/''/''/); do sudo apt-get download $i 2>>errors.txt; done

После загрузки пакетов вместе с их зависимостями теперь просто скопируйте их на свой USB-накопитель и установите пакеты в любой системе.

Читайте также:  Связать две подсети linux

Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Полный путь к статье: Убунлог » Ubuntu » Учебники » Как скачать пакеты DEB с зависимостями локально?

3 комментариев, оставьте свой

Оставьте свой комментарий Отменить ответ

BuX сказал

Спасибо, что принесли нам руководство, я видел эту команду давным-давно на форуме Reddit, и она несколько раз спасала мне жизнь, однажды мне пришлось использовать ее с помощью живого компакт-диска, чтобы иметь возможность установить ее на сервер в текстовом режиме драйвер сетевой карты.

Омар Баутиста Гонсалес сказал

Большое спасибо! Это может помочь мне, потому что в том месте, где я живу (Доминиканская Республика), не всегда легко подключиться к Интернету. Таким образом, это руководство может помочь мне установить некоторые пакеты на разные компьютеры, если потребуется доступ в Интернет, просто перенеся эти пакеты на карту памяти USB или что-то в этом роде.

Максим сказал

Спасибо, я забыл реализовать архитектуру i386 на моем ubuntu mate, что необходимо, и я практически получил ошибку в bionic ubuntu, я думаю, что проблема

Источник

Оцените статью
Adblock
detector