Как исправить ошибку неудовлетворенных зависимостей в Ubuntu



Попробуйте наш инструмент устранения неполадок

ошибка Следующие пакеты имеют неудовлетворенные зависимости уже некоторое время беспокоит пользователей Ubuntu, и появляется все больше и больше сообщений об ошибке в различных версиях Ubuntu. Система управления пакетами APT проста в использовании, но в некоторых случаях, например при смешивании сторонних зависимостей, вы можете получить эту ошибку из apt-get.



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



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



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

  1. Нажмите одновременно Alt, Ctrl и T на клавиатуре, чтобы открыть Терминал.
  2. Печатать и нажмите Enter.
  3. Когда предыдущая команда завершит выполнение, введите sudo cp / var / lib / dpkg / status /var/lib/dpkg/status.original и снова нажмите Enter.

Метод 1: используйте параметр -f

Это самый простой способ, для которого нужно добавить всего две буквы к команде, которую вы вводите. Вместо того, чтобы использовать sudo apt-get install PACKAGENAME, где PACKAGENAME - это пакет, который вы пытаетесь установить с помощью системы apt, используйте sudo apt-get install -f . В -f Параметр попытается исправить систему, в которой нарушены зависимости, после чего вы сможете установить соответствующий пакет.

  1. Откройте Терминал нажав Ctrl, Alt и Т одновременно на клавиатуре.
  2. Печатать sudo apt-get install -f и нажмите Войти выполнить это.
  3. Когда это будет сделано, введите sudo dpkg –configure -a, Нажмите Войти запустить его и запустить команда из шага 2 еще раз.

Метод 2: используйте Aptitude

Способности это альтернатива apt-get который вы можете использовать как менеджер пакетов более высокого уровня. Вы можете использовать его, чтобы попробовать установить вместе с ним свой пакет, вместо apt-get, но сначала вам нужно установить способность.



  1. Одновременно нажмите Ctrl, Alt, и Т клавиши на клавиатуре, чтобы открыть
  2. Печатать sudo apt-get install aptitude и нажмите Войти для выполнения команды.
  3. Печатать sudo aptitude install PACKAGENAME, где PACKAGENAME - это пакет, который вы устанавливаете, и нажмите Войти выполнить это. Это попытается установить пакет через aptitude вместо apt-get, что потенциально должно исправить проблему неудовлетворенных зависимостей.

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

  1. Нажмите одновременно Все и F2 на вашем компьютере введите Свойства программного обеспечения-GTK и нажмите
  2. в Программное обеспечение Ubuntu вкладка, убедитесь, что все репозитории (основной, вселенная, ограниченная, мультивселенная) включены.
  3. Щелкните список серверов, где написано Скачать с, и выберите
  4. Нажмите Выберите лучший сервер.
  5. Нажмите Alt, Ctrl и Т одновременно, чтобы открыть Терминал, и введите sudo apt-get update, затем нажмите. Когда все будет готово, попробуйте снова установить программное обеспечение.

Метод 4: очистить базу данных пакетов

Поврежденная база данных пакетов является потенциальной причиной неудовлетворенных зависимостей, а также неправильной установки пакетов. Однако очистка базы данных пакетов может исправить это, и вы можете сделать это с помощью двух команд, которые я объясню ниже. Но прежде всего нажмите Ctrl, Alt и Т чтобы открыть Терминал, и не забудьте нажать Войти после команды, чтобы запустить ее.

  1. sudo apt-get clean очистит локальный репозиторий от всех полученных файлов пакетов (.deb). Он удалит все, кроме файлов блокировки, из / var / cache / apt / archives и / var / cache / apt / archives / partial /.
  2. sudo apt-get autoclean также очистит извлеченные файлы, но в отличие от предыдущей команды, эта удаляет только те пакеты, которые вы больше не можете загружать и которые практически бесполезны.

Метод 5. Удалите все удерживаемые пакеты

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

  1. Откройте Терминал нажав Ctrl, Alt и Т
  2. Печатать sudo apt-get -u dist-upgrade и нажмите. Если есть какие-либо задержанные пакеты, он покажет их, и вы можете их удалить.
  3. Сначала попробуйте запустить

sudo apt-get -o Debug :: pkgProblemResolver = yes dist-upgrade

и посмотрите, решит ли это проблему. Если он выходит с X не обновлен в конце, где X - количество удерживаемых пакетов, вам нужно будет удалить их по одному.

  1. Чтобы удалить удерживаемый пакет, используйте sudo apt-get remove –dry-run ИМЯ ПАКЕТА (PACKAGENAME - это пакет, который вы пытаетесь удалить) . В -прогон, репетиция параметр гарантирует, что вы будете информированы о том, что произойдет дальше. Когда вы удалили все пакеты, попробуйте установить тот, который изначально вызвал проблему, и посмотрите, что произойдет.

Метод 6: очистить / удалить / отключить PPA

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

Отключить означает, что пакеты, установленные из этого PPA, больше не будут получать обновления.

  1. Нажмите одновременно Все и F2, и беги Свойства программного обеспечения-GTK.
  2. Из Другое программное обеспечение На вкладке вы найдете две строки для каждого PPA, одна из которых предназначена для исходного кода, а другая - для скомпилированного пакета. Чтобы отключить PPA, вы должны снимите галочки с обеих строк.

Очистить означает, что все пакеты в выбранном PPA будут понижены до версии в официальных репозиториях, а также отключит PPA. Чтобы установить PPA Purge, вы можете использовать sudo apt-get install ppa-purge, но учитывая, что подходящий не работает, вы должны использовать эту команду в Терминале ( Alt, Ctrl и Т одновременно, то Войти бежать):

mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http: // mirror. pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb

Далее запустите sudo ppa-purge ppa: someppa / ppa чтобы очистить выбранный PPA. Однако, поскольку очистка PPA по-прежнему не удаляет PPA, вы можете использовать приведенные ниже команды, чтобы удалить PPA. Игнорируйте первый, если в ваши намерения не входит удаление установленного пакета.

  1. sudo apt-get autoremove –purge ИМЯ ПАКЕТА
  2. sudo add-apt-repository –remove ppa: someppa / ppa
  3. sudo apt-get autoclean

После этого вы сможете установить необходимый пакет.

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

5 минут на чтение