У меня тонкий VPS под управлением Ubuntu 14.04 с автоматическими обновлениями безопасности. Он заполнил раздел / boot множеством обновлений ядра. Я пытаюсь удалить старые, но у меня возникает ошибка «неудовлетворенных» зависимостей, требующая исправить другой пакет, прежде чем я смогу продолжить. К сожалению, неудовлетворенная зависимость хочет установить новое ядро в раздел, который заполнен на 100%.
$ sudo apt-get remove [an old linux-image* package]
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
linux-image-extra-3.13.0-88-generic : Depends: linux-image-3.13.0-88-generic but it is not going to be installed
linux-image-generic : Depends: linux-image-3.13.0-88-generic but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
Когда раздел заполнен, я не могу apt-get -f install
что-нибудь поправить. Есть ли способ сказать apt-get
чтобы не проверять наличие неудовлетворенных зависимостей в базе данных, которые не имеют ничего общего с пакетами, которые мне нужно удалить? Освободив место, я смогу решить и сломанные пакеты.
Мое альтернативное решение - вручную освободить место, переместив некоторые ядра в сторону (чтобы /kernels
), исправьте проблему зависимости, удалите некоторые пакеты ядра и переместите /kernels/*
назад, если я не могу проинструктировать apt-get
сотрудничать иначе.
РЕДАКТИРОВАТЬ
Я попытался apt-get -f remove PACKAGENAME
, но произошла ошибка деп. Но apt-get -f autoremove
проигнорировал проблемы деп. Без -f autoremove выдает ошибку dep. С его помощью нашлись ядра на удаление и он над этим работает. Итак, хотя моя непосредственная проблема решена, я все же хотел бы знать, apt-get -f remove PACKAGENAME
может иметь такую же способность игнорировать несвязанные проблемы зависимостей.
dpkg --remove
ДЕЙСТВИТЕЛЬНО удаляет пакеты, не жалуясь на неудачную установку. Это даст вам место на диске apt-get -f autoremove