Вопрос Не удалось устранить проблемы, у вас есть сломанные пакеты


После обновления с 10.04 по 12.04 я пытаюсь установить разные пакеты. Например, ia32-libs и skype (4.0).

При попытке установить их я получаю сообщение об ошибке «Невозможно исправить ошибки, вы получили сообщение об ошибках».

Вывод команд:

sudo apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

После выполнения этого:

sudo dpkg --configure -a
foo@foo:~$ sudo apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

178
2017-11-28 23:48


происхождения


Это может помочь, если вы показали нам команду, которую вы на самом деле пытаетесь (например, sudo apt-get install ia32-libs) и вывод этой команды. Кроме того, sudo apt-get dist-upgrade показать какие-либо доступные обновления? - thomasrutter
Я не знаю, что не так с вашим вопросом, я не вижу никакой реальной ошибки или той, которую вы описываете в своем названии. - Braiam
возможный дубликат Как разрешить неудовлетворенные зависимости? - Eliah Kagan
Связанный: E: Не удалось устранить проблемы, у вас были сломанные пакеты - Melebius


ответы:


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

Вы можете получить список фактический пакеты с:

dpkg --get-selections | grep hold

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

Другим методом устранения неполадок может быть использование aptitude, а не apt-get, чтобы попытаться установить пакет:

sudo aptitude install <packagename>

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

Иногда aptitude будет слишком стремиться к удалению или уменьшению большого количества пакетов для удовлетворения вашего запроса, и в этом случае повторная попытка с -f изменяет свои приоритеты и помогает придумать решения, которые включают удаление / понижение рейтинга меньшего количества пакетов, даже если это означает, что не все изменения, которые вы запросили, могут пойти дальше:

sudo aptitude -f install <packagename>

198
2017-11-29 01:58



Любая идея, как удалить пакет? :-) - Eugene van der Merwe
Это отдельный вопрос, - thomasrutter
Для меня была более полезной, чем apt-get, спасибо за подсказку. - szx
Следует отметить, что способность может облегчить больший ущерб вашей системе. Например, если apt-get не сможет установить что-либо из-за противоречивых зависимостей, он откажется. Тем не менее, aptitude может предложить идти вперед, но удалите целую кучу других пакетов, чтобы удовлетворить эти конфликты - или даже понизить пакеты. Вы просто должны знать, что он предлагает и продолжать, только если это хорошая идея. - thomasrutter
Пакеты «на удержании» не имеют никакого отношения к сообщению, просто чтобы избежать конфликта, удерживая их (не устанавливая, не обновляя, не понижая или не удаляя). - Braiam


Это случилось со мной. Все, что я сделал, было sudo apt-get update и это исправило мою проблему. Удачи.


24
2017-08-27 02:43





Я столкнулся с аналогичным сценарием относительно недостающих зависимостей. В моем случае я пытался установить завиток на ubuntu saucy salamander 13.10 ...

Ошибка указала, что для зависимости требуется более ранняя версия библиотеки curl3.

Я смог деградировать до более ранней версии, пытаясь установить завиток, используя aptitude.

Когда он отметил отсутствующую зависимость и причину (требуется более ранняя версия файла библиотеки), она дала мне несколько вариантов ответа ... г //N/Q

Y прекратили бы установку, N будет искать другой вариант, и Q просто уйдет и больше ничего не сделает, оставив сломанный пакет.

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

  • Я могу заново изучить файл библиотеки после установки, но, эй, пока все хорошо.

7
2018-03-02 06:53





У меня был подобный сценарий в новой версии 14.04, без файлов, перечисленных в dpkg --get-selections | grep hold, и без радости после sudo apt-get update,

Какие сделал исправить это для меня было просто

sudo apt-get autoremove

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


7
2017-07-27 13:41





Если бы та же проблема, я запустил эту команду проверки пакета из другого ответа (dpkg --get-selections | grep hold)  И пила

tomcat7                                         deinstall
tomcat7-common                                  install

поэтому я использовал "apt-get remove tomcat7-common"

Затем я смог установить Tomcat 6 (я удалял Tomcat 7 и устанавливал Tomcat 6, как и вы).


4
2017-10-03 11:03



Пакеты «на удержании» не имеют никакого отношения к сообщению, просто чтобы избежать конфликта, удерживая их (не устанавливая, не обновляя, не понижая или не удаляя) - Braiam
добавить очистку флага: apt-get remove --purge package - Sergio Abreu


Для меня ничего из этого не было, потому что моя система не обновлялась. я сделал

Home Key > Software Updater > Install 

и обновил мою систему; впоследствии я мог бы установить свой пакет обычно с помощью apt,


0
2018-05-25 14:01