При попытке обновить библиотеки разработки Kerberos, почему я получаю ошибку "неудовлетворенные зависимости"?
Когда я обновляюсь, получаю эту ошибку и больше ничего не могу установить
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
krb5-multidev : Depends: libkrb5-3 (= 1.10+dfsg~beta1-2ubuntu0.2) but 1.10+dfsg~beta1-2ubuntu0.3 is installed
Depends: libk5crypto3 (= 1.10+dfsg~beta1-2ubuntu0.2) but 1.10+dfsg~beta1-2ubuntu0.3 is installed
Depends: libgssapi-krb5-2 (= 1.10+dfsg~beta1-2ubuntu0.2) but 1.10+dfsg~beta1-2ubuntu0.3 is installed
Depends: libgssrpc4 (= 1.10+dfsg~beta1-2ubuntu0.2) but 1.10+dfsg~beta1-2ubuntu0.3 is installed
Depends: libkadm5srv-mit8 (= 1.10+dfsg~beta1-2ubuntu0.2) but 1.10+dfsg~beta1-2ubuntu0.3 is installed
Depends: libkadm5clnt-mit8 (= 1.10+dfsg~beta1-2ubuntu0.2) but 1.10+dfsg~beta1-2ubuntu0.3 is installed
E: Unmet dependencies. Try using -f.
Я пытался бежать apt-get install -f но я все еще получаю ошибку неудовлетворенных зависимостей.
это apt-cache policy вывод:
(я не мог опубликовать его на многих гиперссылках, поэтому я вставил его)
3 ответа
Как я это исправил:
Я пошел к менеджеру пакетов Synaptic, чтобы починить сломанный пакет. Нажмите Правка → Исправить сломанные пакеты.
31 июля 2012 г. было выпущено обновление безопасности для пакетов Kerberos, чтобы устранить уязвимость системы безопасности. Это повлияло на номера версий Ubuntu из ubuntu0.2 в ubuntu0.3,
Возможно (но редко), что какое-то время libkrb5-dev / krb5-multidev пакеты не были обновлены, и поэтому имели старые зависимости ubuntu0.2 который был причиной вашей проблемы.
В любом случае, похоже, это было исправлено:
$ apt-cache show libkrb5-dev | grep Зависит Зависит от: krb5-multidev (= 1.10 + dfsg ~ beta1-2ubuntu 0.3)
$ apt-cache show krb5-multidev | grep Зависит Зависит от: libkrb5-3 (= 1.10+dfsg~beta1-2ubuntu0.3), libk5crypto3 (= 1.10+dfsg~beta1-2ubuntu0.3), libgssapi-krb5-2 (= 1.10+dfsg~beta1-2ubuntu0.3), libgssrpc4 (= 1.10+dfsg~beta1-2ubuntu0.3), libkadm5srv-mit8 (= 1.10+dfsg~beta1-2ubuntu0.3), libkadm5clnt-mit8 (= 1.10+dfsg~beta1-2ubuntu0.3), comerr-dev
Пожалуйста, попробуйте sudo apt-get update && sudo apt-get -f install чтобы попытаться это исправить. Если это не так, просто удалите libkrb5-dev пакет. Из смоделированного удаления в моей системе dev видно, что пакеты CUPS и QT dev также могут быть удалены (libqt3-mt-dev, libcups2-dev). А затем установить libkrb5-dev очередной раз.
Я бы посоветовал попытаться удалить проблемный пакет перед обновлением.
Во-первых, убедитесь, что удаление krb5-multidev не удалит ничего, что кажется жизненно важным.
sudo apt-get remove krb5-multidev --simulate
Просмотрите пакеты в разделе "Следующие пакеты будут удалены:". Если вы не уверены, важны ли они, не стесняйтесь опубликовать список здесь, чтобы мы могли его найти.
Предполагая, что ничего не выглядит жизненно важным, удалите krb5-multidev:
sudo apt-get remove krb5-multidev
Затем повторите попытку обновления. После обновления вы можете переустановить krb5-multidev.
ПРИМЕЧАНИЕ. Вероятно, существуют более элегантные методы решения этой проблемы. Это просто попытка обойти ошибку и выполнить обновление.