Как установить.deb файл с зависимостями. Установка пакетов Ubuntu Ubuntu deb пакеты

Является их загрузка прямиком из репозиториев онлайн-магазина Cydia . Однако, не все знают об альтернативном способе инсталляции deb-расширений из магазина (Saurik). Разумеется, устанавливать твики можно только на взломанный iPhone, iPad или iPod Touch.

Вконтакте

Зачем же тогда нужен другой способ, спросите Вы. А вот зачем. Например, если нет постоянного доступа к Wi-Fi сети или само приложение Cydia отказывается запускаться или работает некорректно.

Причина может быть еще банальнее, в Cydia не добавлен репозиторий, в котором твик распространяется бесплатно, а в интернете давно «гуляет» вылеченная версия расширения в deb-формате.

Все установочные пакеты твиков имеют расширение «.deb «, только такие и не какие другие файлы можно установить данным способом. Обратите внимание, что иногда расширения запаковывают в архив и перед установкой их необходимо разархиваровать. Итак, чтобы установить deb-пакет при помощи ПК понадобится любой файловый менеджер или . Обе программы бесплатны и доступны как для Windows, так и для OS X. Скачанный на просторах интернета *.deb файл твика достаточно перенести в папку Cydia-Instalation или CydiaAppinstall (в зависимости от файлового менеджера). Искать её не нужно, каждая из программ содержит отдельную ссылку для этого пути в меню доступа к файловой системе. На всякий случай все же скажу, что путь к этой папке следующий: .
В эту папку можно скопировать сразу несколько необходимых deb-пакетов. Обратите внимание, что некоторые твики устанавливаются вместе с зависимостями (другими твиками), работать без которых они не будут. Иногда авторы раздачи deb файлов прикладывают их к раздаче или сохраняют в одном архиве, все они должны быть установлены вместе с расширением. После копирования достаточно перезагрузить iДевайс, при включении устройства твик установится. Бывают случаи, когда твик работает не совсем корректно, для устранения проблемы достаточно сделать респринг любым доступным способом.
Второй способ установки deb-пакетов позволяет вообще обойтись без компьютера. В этом случае необходимо иметь установленный файловый менеджер на устройстве. Кстати, это приложение яркий пример deb-приложения с большим количеством зависимостей при установке.
Достаточно в Safari нажать на ссылку для загрузки deb-файла и браузер сам предложит открыть его в iFile . Нажав на твике, Вы увидите всплывающее меню с функцией «Установить » («Install «), она и отвечает за инсталляцию расширения. После загрузки достаточно убедиться, что в последней строке выведенного на экран текста будет «O». Эта строка оповещает об ошибках при установке твика. В случае возникновения ошибки можно поступить по другому: скопировать deb-файл по пути /var/root/Media/Cydia/AutoInstall и перезагрузить iДевайс.

Приемы работы в Ubuntu.
Глава 6: Управление пакетами

Оригинал: "Ubuntu Hacks: Chapter 6 - Package Management"
Авторы: Кайл Ранкин, Джонатан Оксер, Билл Чайлдерс (Kyle Rankin, Jonathan Oxer, Bill Childers)
Дата публикации: June 2006
Перевод: Н.Ромоданов
Дата перевода: сентябрь 2010 г.

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

Управления пакетами в дистрибутивах, основанных на Debian, является очень мощным механизмом и экономит массу усилий, которые можно впустую потратить на поиск последних пакетов и отслеживания зависимостей. Возможностей автоматизированных средств, таких как apt-get , Synaptic и Adept, практически всегда хватает большинству пользователей, и вы должны, по мере возможности, пользоваться ими. Однако иногда возникают обстоятельства, когда вам может потребоваться непосредственно установить пакет .deb .

Предостережение. В Ubuntu используются автоматизированные средства установки пакетов по веской причине. С их помощью реализованы специальные средства защиты, обеспечивающих совместимость пакетов и наличие библиотек, если они необходимы пакетам. Если устанавливаете отдельно взятые файлы .deb (особенно те, которые не упакованы для конкретной версии Ubuntu), вы не только теряете всю массу этих преимуществ, вы также можете из-за несовместимости библиотек вывести из строя отдельные части системы, перезаписать файлы, от которых зависят другие программы Ubuntu, или добавить уникальные версии, которые усложнят обновление вашей системы в процессе ее эксплуатации. Перед тем, как устанавливать отдельный пакет .deb , особенно если вы новичок в Ubuntu, пожалуйста, изучите все другие возможности установки, в том числе использование репозитариев universe и multiverse [Совет # 60 ]. Вы создали свое собственное ядро "в стиле Ubuntu" Если вы с помощью утилиты make-kpkg откомпилировали из исходного кода свое собственное ядро, вы в итоге должны получить пакет .deb , в котором будет находиться двоичный код ядра, и файлы .deb для любого дополнительного модуля, которые вы, возможно, соберете (конкретные шаги этой процедуры описаны в разделе "Сборка ядер в стиле Ubuntu" [Совет # 78 ]). Вы откомпилировали свой собственный пакет из исходных кодов Ubuntu Как и при компиляции ядра, вы компилировали исходный код Ubuntu при помощи утилиты dpkg , и, в конечном счете, вы получили отдельный файл .deb , который вам нужно установить вручную. Вы хотите вернуться к старой версии программы Такая ситуация может возникнуть, в частности, в случае, если вы используете релиз Ubuntu, предназначенный для разработчиков. Иногда последних версиях релизов, предназначенных для разработчиков, имеются ошибки. В этим случае вам может потребоваться вернуться к предыдущей версии пакета. Один из самых простых способов сделать это состоит в нахождении более старой версии пакета .deb (возможно, в вашем локальном кэше пакетов в /var/cache/apt/archives/ ) и установке его вручную. Программа, которую вы хотите установить, имеет расширение.deb, но ее нет в репозитариях Ubuntu Могут возникнуть обстоятельства, при которых в репозитариях Ubuntu отсутствует пакет .deb , который вы хотите установить, поскольку это более новый пакет, чем тот, что предлагает Ubuntu, поскольку вы нашли более универсальный вариант файла .deb , или третья сторона предоставила файл .deb для Ubuntu, но еще не создала свой собственный репозитарий пакетов (например, как веб браузер Opera Web в его текущем варианте пакета).

Подсказка

Если вы нашли программу, упакованную в формате.deb, то в девяти случаях из десяти есть большая вероятность, что эта программа уже есть в одном из репозитариев Ubuntu. Подробности о дополнительных репозитариях, которые предоставляются Ubuntu и третьими сторонами, смотрите в разделе "Изменение списка репозитариев пакетов" [Совет # 60 ].

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

Установка файла.deb

Всякий раз, когда вам, независимо от причины, требуется установить файл .de b, нужно обратиться к утилите dpkg . Утилита dpkg является инструментом, который в дистрибутивах, базирующихся на Debian, используется для установки файлов .deb . (Даже когда вы пользуетесь автоматическими средствами управления пакетами, на самом деле за кулисами в системе для установки пакетов используется dpkg ). Если вы знакомы с инструментальным средством rpm , используемых в дистрибутивах, базирующихся на пакетах RPM, то обнаружите, что у dpkg похожий синтаксис. Чтобы установить из командной строки обычный файл .deb , наберите следующее:

Whiprush@ubuntu:~$ sudo dpkg -i packagename.deb

Замените packagename.deb на имя файла .deb , который вы хотите установить. Если у вас есть несколько файлов, которые вы хотите одновременно установить, вы можете в командной строке перечислить их один за другим

Whiprush@ubuntu:~$ sudo dpkg -i package1.deb package2.deb package3.deb

или используйте универсальный символ [Совет # 13 ], чтобы установить все файлы.deb, которые есть в текущем каталоге:

Whiprush@ubuntu:~$ sudo dpkg -i *.deb

Утилита dpkg также имеет параметр, задающий рекурсивное исполнение (-R). Если у вас есть директорий, заполненный файлами deb, вы можете установить их следующим образом:

Whiprush@ubuntu:~$ sudo dpkg -i -R /path/to/directory

и утилита dpkg будет рекурсивно искать и устанавливать все файлы .deb , которые находятся в этом директории и во всех его поддиректориях.

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

Предостережение

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

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

Whiprush@ubuntu:~$ dpkg --force-help

К числу наиболее полезных параметров относятся следующие:

Установка пакета, даже если он отмечен как hold .

Force-overwrite

Установка пакета, даже если он может переписать файлы из другого пакета.

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

Force-conflicts

Даже если пакет конфликтует с другим пакетом, в любом случае продолжить установку.

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

Whiprush@ubuntu:~$ sudo dpkg -i --force-overwrite packagename.deb

Удаление пакета

Иногда вам может потребоваться удалить отдельный пакет вручную. В dpkg есть параметры -r и -P , предназначенные для удаления пакета и удаления пакета с очисткой конфигурационных файлов, соответственно. Чтобы удалить пакет, введите:

Whiprush@ubuntu:~$ sudo dpkg -r packagename

Обратите внимание, что вы не указываете расширение .deb в имени файла, который вы, возможно, перед этим устанавливали, - только имя самого пакета. Когда указывается параметр -r , dpkg будет искать и удалять все файлы этого пакета, кроме конфигурационных файлов, которые будут оставлены на случай, если программа будет устанавливаться еще раз. Если вы хотите очистить систему от всех файлов, включая конфигурационные файлы, используйте параметр -P:

Whiprush@ubuntu:~$ sudo dpkg -P packagename

.deb — расширение имён файлов бинарных пакетов (бинарный-двоичный файл), предназначенные для распространения и установки программного обеспечения в ОС Debia n, и других, использующих систему управления пакетами dpkg , таких, например, как Ubuntu, Linux Mint .

Как правило в Ubuntu/Linux Mint все установочные .deb-пакеты приложений, загруженные пользователем, устанавливаются затем по умолчанию графическими программами, такими как Менеджер программ :


Либо GDebi :



Но в Менеджер программ не всегда можно установить бинарный пакет загруженный пользователем, потому что он не устанавливает необходимые зависимости для .deb-пакета .
А установка в GDebi не всегда срабатывает, несмотря на то, что GDebi подтягивает перед установкой пакета необходимые зависимости/библиотеки.

В этом случае .deb-пакет можно установить посредством терминала.

Давайте более подробно рассмотрим терминальный вариант установки .deb-пакета .
Это не сложно. Достаточно один раз повторить данную инструкцию, а затем вы будете выполнять установку .deb-пакетов в терминале "с закрытыми глазами".

Итак. Для примера я выбрал "безобидный" .deb-пакет для установки значков Suru , которые разрабатываются в настоящее время для Ubuntu 18.10 . А "безобидный" этот пакет потому, что даже если вы его установите в системы Ubuntu/Linux Mint и производные, то повредить он ни чему не может в системе.

1. Перейдите по следующей ссылке: https://ubuntu.pkgs.org/suru-icon-theme/all.deb.html и загрузите бинарный пакет, как показано на снимке:



2. Как правило, все загруженные файлы из интернета сохраняются в папке Загрузки файлового менеджера.


Теперь откройте терминал (Ctrl+Alt+T) и в терминале необходимо перейти в папку Загрузки .

Выполните в терминале команду ls , которая отобразит все папки в Домашнем каталоге :


Примечание . Команда ls (dir, vdir) — делает стандартный вывод содержимого каталогов.

Далее выполняем непосредственный переход в папку Загрузки . Для этого вводим в терминал команду cd (c hange d irectory - изменить директорию/папку), через пробел копипастим название папки, в которую хотим перейти и нажимаем клавишу Ввод :



3. После того как мы перешли в папку Загрузки , нам необходимо посмотреть её содержимое. Вновь введите и выполните (выполнить - нажать клавишу Ввод) команду ls .


Как видно на снимке, в терминале отобразился наш искомый .deb-файл с значками Suru .

4. Установка .deb-файла .

Для установки загруженного .deb-файла , необходимо в этом же терминале ввести команду sudo dpkg -i , через пробел скопипастить название файла и нажать клавишу Ввод :


Введите свой пароль и вновь нажмите Ввод для начала установки:


5. После нажатия клавиши Ввод , .deb-пакет будет установлен:


Примечание . Можно также устанавливать несколько пакетов за раз, передавая их все как аргументы команде sudo dpkg -i через пробел (sudo dpkg -i .deb-пакет1 .deb-пакет2 и так далее).

6. К сожалению, программа dpkg не умеет разрешать и скачивать необходимые зависимости из репозиториев. Если вы попали в такую ситуацию, когда терминал после выполнения команды sudo dpkg -i .deb-пакет сообщает о неудовлетворённых зависимостях, выполните в этом же терминале команду sudo apt install -f , которая используется для устранения сбоев в базе пакетов вызванных нарушенными зависимостями.

7. По окончании установки .deb-пакета с значками Suru , вы можете использовать их в своём дистрибутиве (Внешний вид/Тема - Значки).

Сегодня вот задумался над тем что же делать если доступа в интернет не будет, а понадобится установить какую-либо программу. Ведь программы в Linux Ubuntu устанавливаются из интернет-репозиториев. Кстати это работает и в Kubuntu, Lubuntu. Остальные не проверял.
А как взять необходимые для установки deb-пакеты? Если на компьютере ещё нет интернета, хотя бы программу для подключения к интернету, например ту же программу wvdial. Чтобы можно было подключить например мой модем в консоли. Хоть я и разобрался . Но а вдруг понадобится.
Для того чтобы получить список интернет адресов где находятся наши deb-пакеты я использую программу apt-get , в виде команды apt-get --print-uris --yes здесь --print-uris возвращает URL адреса на экран. Для вывода данной команды права суперпользователя ненужны, так что sudo вводить Вам не понадобится.

apt-get --print-uris --yes install wvdial

Но чтобы отсеить результаты и оставить одни URL-адреса. Я использую возможности grep совместно с cut , для того чтобы отсеить результаты вывода программы. Вместо wvdial вы можете ввести ту программу которую хотите установить.

apt-get --print-uris --yes install wvdial | grep ^\" | cut -d\" -f2

Теперь давайте, сделаем вывод в файл который затем сможем успешно скормить программе для загрузки наших deb-пакетов. Мой запрос в терминале стал выглядеть вот так.

apt-get --print-uris --yes install wvdial | grep ^\" | cut -d\" -f2 > Загрузка.txt

Теперь для того чтобы скачать все deb-пакеты мне достаточно будет использовать программу wget , о ней я писал . Достаточно будет выполнить

это файл который создался при выполнении команды заданной выше. Можете написать полный путь к этому файлу если он не находится в той папке где Вы открыли терминал.

Так же можно получить список адресов необходимых для обновления дистрибутива.

apt-get --print-uris --yes dist-upgrade | grep ^\" | cut -d\" -f2 > "обновления дистрибутива"

wget -i "обновления дистрибутива"


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

wget --directory-prefix=/путь/куда/скачиваем/файлы -i Загрузка.txt


wget --directory-prefix=/путь/куда/скачиваем/файлы -i "обновления дистрибутива"


Ну вот теперь остаётся лишь перенести скачанные deb-пакеты на компьютер без интернета и установить их. В моём случае я скачивал программу wvdial , а он в зависимостях вытянул четыре deb-пакета. Берём эти пакеты флешкой переносим на компьютер для которого скачивал файлы, и устанавливаем их при помощи команды.

Переходим в каталог со скачанными и перенесёнными deb-пакетами

cd /путь/к/ нашим/deb-пакетам


И устанавливаем наши пакеты.

sudo dpkg -i *deb


Вот по сути дела и все, программа wvdial установлена. Подобным образом можно выкачать совершенно любую программу в Linux Ubuntu, Kubuntu, Lubuntu для offline-установки. Может и в других дистрибутивах не знаю пробовал только эти.

В основанных на 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

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

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

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