Uno из наиболее распространенных проблем, которые обычно возникают в Ubuntu или любые его производные когда пользователь устанавливает пакеты deb, которые он загружает с какого-то веб-сайта, Это известная проблема с невыполненными зависимостями, она возникает из-за того, что для указанного пакета требуется определенная версия приложения, или он будет выпущен, и его нет в системе, или что менеджер пакетов не может найти правильные зависимые пакеты, необходимые для выполнения программы Ubuntu.
Хотя такого рода проблемы возникают все реже и реже, В связи с тем, что многие пользователи уже склонны предпочитать использование приложений Flatpak, AppImage или Snap, в дополнение к тому факту, что у них уже есть достойный каталог с самыми популярными приложениями, и все больше разработчиков продолжают добавлять свои приложения в этот тип формат.
Выявление проблемы
Первым шагом к решению этой досадной ошибки является определение проблемы, поскольку в общем, это обычно скачкообразно, когда мы пытаемся установить пакет или приложение из пакета deb или даже репозитория.
Эта ошибка сообщается нам из терминала, который сообщает нам, что определенные зависимости не могут быть выполнены. или в случае установки через программный центр Ubuntu просто не устанавливает приложение.
Здесь важно проверить, не пытаемся ли мы установить устаревший пакет. Что ж, возможно, есть более свежий пакет или проверьте репозиторий, на какую дату датируются пакеты и до какой версии доступна.
Если конфликтующий пакет уже установлен, при попытке запустить команду:
sudo apt update
o
sudo apt upgrade
Это проинформирует нас о конфликте и попросит нас выполнить команду для решения проблемы.
Применение первого решения
Самый прямой способ исправить ошибки Зависимость в Ubuntu от диспетчера пакетов по умолчанию, чтобы начать исправление, просто откройте терминал и выполните команду:
sudo apt install -f
При выполнении вышеуказанной команды Диспетчер пакетов Ubuntu попытается исправить проблемы зависимость, стоящая перед и он напечатает внесенные вами изменения.
Здесь важно учитывать изменения, которые вы печатаете поскольку, если он не разрешается в конфликте с зависимостями, он продолжит удаление конфликтующего пакета или пакетов и сообщит нам, какие зависимости конфликтуют с пакетом.
Таким же образом вы можете выбрать другое решение:
Второе решение, установка необходимых зависимостей
Принимая во внимание предыдущий шаг, на котором мы записываем пакеты или библиотеки, необходимые для решения ошибок зависимостей, здесь мы собираемся установить пакеты один за другим с терминала, или мы можем помочь себе с помощью Synaptic
Например, в терминале нам показывают что-то вроде этого:
"Error: Dependency is not satisfiable: libgtk-3-0 (>=3.16.2)"
Следует отметить, что Это указывает на то, что выпуск «libgtk 3.0» больше или равен версии «3.16.2». за то, что мы должныs в этом случае загрузите версию указанной библиотеки. Здесь важно учитывать, что для библиотек многие приложения зависят от одной или определенной версии, поэтому лично я не советую вам сюда прикладывать руку.
Чтобы найти конкретную версию, мы можем положиться на страница пакетов ubuntu (packages.ubuntu.com) чтобы проверить, какая это версия Ubuntu и в каком репозитории, поскольку очень часто некоторые из них не включены.
Здесь вы можете скачать и установить нужные вам пакеты.
Третий и последний вариант. При распаковке необходимо изменить зависимости и переупаковку.
Последний вариант по идее лучший вариант, поскольку обычно разработчики обычно указывают, что приложение работает с определенной версией выпуска, но они не принимают во внимание, что указанная библиотека может быть обновлена в течение нескольких дней или в тот момент, когда они выпускают свое приложение.
Итак, если они ограничивают работу приложения под определенной версией, Это тот, который вызывает конфликт.
Итак мы собираемся распаковать пакет deb и изменить зависимости к той версии, которая у нас есть в системе (поэтому было важно отметить, какие зависимости конфликтуют с конкретной версией).
Для этого мы наберем команду:
dpkg-deb -R “ruta-de-paquete-deb” “nombre-de-carpeta-que-tendra-los -archivos”
Например:
dpkg-deb -R gimp.deb Gimp
Мы собираемся получить доступ к папке и идем по маршруту "/ ДЕБИАН"
cd Gimp/DEBIAN
И мы собираемся редактировать файл "control" с нашим любимым редактором
sudo gedit control
Здесь мы будем искать строки, указывающие на зависимости с которыми у нас есть конфликты и мы собираемся их редактировать.
Например, мы найдем что-то вроде этого:
Package: XXXX Version: XXXX Depends: libgtk3-0 (>= 3.16.xx"
Мы собираемся перейти на ту версию, которая у нас есть. Сохраняем изменения и переупаковываем для переустановки с помощью:
dpkg-deb -b Gimp Gimp-new.deb
И для установки создается новый пакет deb.
Очень интересно о пакете deb. Я его не знал. Привет.
Какая проблема со сломанными зависимостями, по этой причине я отмечаю реализацию таких пакетов, как Snap и Flatpak (я выбираю первый), чтобы увидеть, начнем ли мы наконец стандартизировать и укрепить позиции на рабочем столе.
Я страдаю от этого в эти дни, и я пробовал следовать этим процедурам, но мало чего добился.
Я вовсе не говорю, что то, что читают, неправильно.
Это больше из-за незнания того, кто пишет в использовании linux, пользуюсь сравнительно недолго и у меня только форматирование и переустановка системы на все ответы.
Это как пытаться читать по-китайски. это почти облагается налогом для меня
Проблемы с зависимостями могут иметь множество факторов, и в значительной степени это происходит, как описано в статье, когда мы пытаемся установить пакет, который может быть устаревшим или иным образом совместим с другой версией Ubuntu или специально создан для этого. Конкретный дистрибутив (обычно для Debian).
Другой случай может быть, если вы примените инструкцию –force и примените более позднее подходящее обновление или обновление и измените некоторые библиотеки.
С другой стороны, также, когда пакеты конфликтуют со средами рабочего стола, в которых вы установили две или более среды, в которых их зависимости обычно одинаковы, и вы удалили любую из них, не дав инструкции сохранить зависимости.
Таких случаев много, но если вы захотите поделиться своей проблемой, мы сможем найти решение.
Привет.
Здравствуйте, у меня проблемы с битыми пакетами, первый вариант ничего не решает, второй вариант при поиске пакетов не отображаются ни пакеты, ни библиотеки для их установки вручную и так как я использую программу для обновления в Ubuntu 18.04, понятия не имею, откуда падает .deb для обновлений, если я сделаю случай 3, какое-либо решение? пожалуйста спасибо!!!
У меня проблема с zorin, при установке некоторых кодеков выдает ошибку, в терминале выдает строку ошибки:
/var/lib/dpkg/lock-интерфейс
Как я могу это решить, так как я новичок в этом