Kali linux пакеты имеют неудовлетворенные зависимости

apt-get install не работает в kali linux

Darkcometrat

Member

Я решил поставить себе kali linux 2019.2 всё было нормально но потом я решил установить программу через apt-get install но у меня выводтся вот эта ошибка при любой установки пакета.

# apt-get install tor
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Некоторые пакеты не могут быть установлены. Возможно, то, что вы просите,
неосуществимо, или же вы используете нестабильную версию дистрибутива, где
запрошенные вами пакеты ещё не созданы или были удалены из Incoming.
Следующая информация, возможно, вам поможет:

Следующие пакеты имеют неудовлетворённые зависимости:
gsettings-desktop-schemas : Ломает: mutter (

Darkcometrat

Member

z3r0slid3

Цитата:
»
Одной из возможных причин неудовлетворенных зависимостей может быть поврежденная база данных пакетов, и / или некоторые пакеты не были установлены правильно. Чтобы решить эту проблему, нажмите Alt+ Ctrl+, T и введите в консоли

sudo apt-get clean
или

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

Одним из основных исправлений для решения проблем зависимостей — команда

sudo apt-get -f install
-f означает «исправить сломанный». Apt будет пытаться исправить нарушенные зависимости. Если вы вручную установили пакет с неудовлетворенными зависимостями, по возможности apt-get установите эти зависимости, в противном случае он может просто удалить установленный вами пакет, чтобы решить проблему.

sudo dpkg —configure -a
после выполните

sudo apt-get -f install
Если вывелось такая строка как

0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
То это значит, что ничего не удалось.

Следующее решение такое:

sudo apt-get -u dist-upgrade
Если он показывает какие-либо удержанные пакеты, лучше их устранить. Пакеты удерживаются из-за конфликтов зависимостей, которые apt не могут быть разрешены. Попробуйте эту команду для устранения конфликтов

sudo apt-get -o Debug:: pkgProblemResolver=yes dist-upgrade
Если он не может исправить конфликты, он завершится с:

0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.
Удалите задержанные пакеты по очереди, dist-upgrade каждый раз выполняя , пока не останется больше задержанных пакетов. Затем переустановите все необходимые пакеты. Обязательно используйте —dry-run опцию, чтобы вы были полностью проинформированы о последствиях:

sudo apt-get remove —dry-run имя-пакета
Поскольку удаление пакета, который вы пытаетесь установить, может быть не идеальным, вы можете также попытаться найти репозиторий, в котором есть пакеты, необходимые для удовлетворения зависимостей.

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

Читайте также:  Как установить windows 10 home вместо windows 10 корпоративная

Источник

Неудовлетворенные зависимости Ubuntu

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

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

Неудовлетворенные зависимости в Ubuntu

По английски наша ошибка ещё может писаться как the following packages have unmet dependencies. Она может возникнуть в нескольких случаях, давайте сначала рассмотрим основные из них:

  • Вы используете dpkg для установки deb пакета. Эта утилита не занимается установкой зависимостей. Вместо неё надо использовать apt install или потом просто установить недостающие зависимости с помощью apt, как это делается описано ниже;
  • Вы используете старую версию дистрибутива — в старых версиях могло что-то изменится в репозитории и часть пакетов была удалена или переименована. С LTS версиями такое случается редко, но с обычными релизами вполне может произойти;
  • Вы пытаетесь установить программу не от своего дистрибутива — несмотря на родство всех дистрибутивов семейства Debian, не желательно использовать программы из других дистрибутивов, так, как они могут требовать пакеты, которые в этом дистрибутиве называются по другому;
  • У вас установлен устаревший пакет, который не позволяет обновить некоторые зависимости — случается, когда в системе уже есть какой-нибудь пакет старый пакет, требующий старую версию библиотеки, а новая программа, которую вы собираетесь установить уже хочет более новую версию и не позволяет её обновить. Эта проблема не очень типична для Ubuntu, так как здесь большинство версий программ в репозиториях заморожено, но часто встречается при использовании дистрибутивов с системой роллинг релизов.

1. Обновление и исправление зависимостей

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

sudo apt update

sudo apt install -f

Эта команда установит зависимости, которые есть во официальных репозиториях (поможет при использовании dpkg) и если это не решит проблему, то удалит пакеты, для которых зависимости удовлетворить не удалось. Также после этого можно выполнить:

sudo dpkg —configure -a

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

sudo apt upgrade
sudo apt full-upgrade

Если причиной вашей проблемы стал устаревший пакет надо его удалить или придумать для него замену. Например, если у вас установлена старая версия php, могут возникнуть проблемы с установкой новой версии, потому что будут конфликтовать версии библиотек, от которых зависит программа. Однако можно найти PPA со специально подготовленной старой версией php, которая ни с кем конфликтовать не будет.

Читайте также:  How to burn windows iso to usb

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

2. Установка зависимостей

Дальше установка зависимостей Ubuntu. Следующий этап, если вы скачали пакет в интернете, например, от другого дистрибутива с таким же пакетным менеджером, можно попытаться установить таким же способом библиотеки, которые он просит. Это может сработать особенно, если вы пытаетесь установить программу из старой версии дистрибутива. Пакеты можно искать прямо в google или на сайте pkgs.org:

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

После загрузки пакета с сайта его можно установить через тот же dpkg:

sudo dpkg -i ffmpegthumbs_19.04.3-0ubuntu1

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

3. Удаление зависимостей

Если у вас есть скачанный пакет, и он говорит, что он зависит о версии библиотеки, которой в вашей системе нет, но вы уверены, что ему подойдет и другая версия, то можно просто убрать эту зависимость из пакета. Но для этого надо его перепаковать. Такая ситуация была когда-то с популярным менеджером Viber. Рассмотрим на примере того же вайбера.

Сначала распакуйте пакет в подпапку package командой:

dpkg-deb -x ./viber.deb package

Затем туда же извлеките метаданные пакета:

dpkg-deb —control viber.deb package/DEBIAN

В файле package/DEBIAN есть строчка Depends, где перечислены все библиотеки, от которых зависит пакет и их версии. Просто удалите проблемную библиотеку или измените её версию на ту, которая есть в системе.

Затем останется только собрать пакет обратно:

dpkg -b viber package.deb

И можете устанавливать, теперь с зависимостями будет всё верно:

sudo dpkg -i package.deb

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

4. Распаковать пакет

Следующий способ подойдет, если программа которую вы устанавливаете это библиотека, например, веб-драйвер для Selenium. Пакет можно распаковать и просто разложить исполняемые файлы из него по файловой системе в соответствии с папками внутри архива. Только желательно использовать не корневую файловую систему, а каталог /usr/local/ он как раз создан для этих целей.

5. Использовать snap пакеты

Самый простой способ обойти проблемы с зависимостями — использовать новый формат установщика программ, в котором программа содержит все зависимости в установочном архиве и они устанавливаются аналогично Windows в одну папку. Установка такой программы будет дольше, но зато такие там вы точно не получите проблем с зависимостями Ubuntu. Всё программы, которые поддерживают этот формат есть в центре приложений Ubuntu:

Читайте также:  All windows operating system requirements

Выводы

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

Источник

Неразрешенные зависимости. Поврежденная система пакетов

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

следующие пакеты имеют неудовлетворенные зависимости: linux-headers-3.13.0.67-generic: Depends:linux-headers-3.13.0.67 но он не установлен

Я не понял, в чем вопрос. Тебе же все написано, причем по-русски.

Почему у него пакет зависит от самого себя и для самого себя не смог разрешить зависимости? Лол.

Не сам от себя, читай вывод внимательнее.

Понял. Моя невнимательность.
Ну, тогда пусть установит linux-headers-3.13.0.67, а потом linux-headers-3.13.0.67-generic.

Тогда уж apt-get install -f , чтобы попытаться починить зависимости.

apt-get install -f пробовала, ничего не дает. При запуске в терминале имеем:

запускаю, потом терминал моргает и закрывается. Всё

Ядром слишком старое, это не ubuntu 16.04 и не debian9. Напиши название и версию дистрибутива. Попытайся удалить linux-headers-3.13.0.67-generic sudo apt-get remove linux-headers-3.13.0.67-generic , он нужен только при сборки модулей ядра, например при установки проприетарных дров от nvidia. Может у тебя в системе эта версия даже не используется, uname -r покажет версию ядра загруженной системы.

Не 16.04. Стояла по ряду причин старая 14.04.LTS Сейчас обновиться не дает, вот пыталась разобраться.

Версия ядра 3.13.0.66-generic При попытке удаления выходит:

$ sudo apt-get remove linux-headers-3.13.0.67-generic [sudo] password for poison: E: Работа dpkg прервана, вы должны вручную запустить «sudo dpkg —configure -a» для устранения проблемы. poison@poison:

$ sudo dpkg —configure -a dpkg: ошибка: не удалось создать новый файл «/var/lib/dpkg/status-new»: На устройстве кончилось место

Думаю тут все понятно. Для ясности скинь текущее положение дел на диске:

Источник

Kali Linux. Исправить зависимости

Удаление GNU\Linux из автозагрузки Kali Linux x64
Здравствуйте. Установил криво Kali Linux на диск С. Потом удалил все его файлы. Но в автозагрузке.

2 ОС Kali Linux
Доброго времени суток! Записал образ через RUFUS. Раздел как MBR и GPT пробовал. Не.

Kali linux
Какие принципиальные отличия между дефолт линукс и кали?

Kali Linux
После установки не происходит загрузки привычного окна «введите логин», да собственно так и.

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

Не устанавливается Kali Linux
Началось всё с того, что кто-то извне поменял пароль от рута на ноуте где стоял Kali Linux. Решил.

Kali linux и ubuntu
Стоял Windows 10, потом поставил Kali Linux как вторую систему, kali на другой хард, а grub на ssd.

Kali linux терминал
При установки програм через терминал вскакивает ошибка ‘E:’ , несколько раз обновил репозиторий но.

Kali linux на VMware 7
Всем привет, такая ситуация, установил через образ Кали на виртуальную машину, ввожу логин и.

Источник

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