У меня Dell Mini9 под управлением Ubuntu 8.10. Однажды у меня появилась блестящая идея посмотреть, смогу ли я установить стек LAMP. У меня были проблемы с установкой MySQL 5.0. Я не помню ошибки, но с тех пор все попытки запустить update-manager, synaptic или apt-get заканчиваются ошибкой о mysql-server-5.0: «Пакет находится в очень плохом несовместимом состоянии».
Я пробовал apt-get remove mysql-server-5.0
и тоже, install
но без удачи. Оба сбоя с одинаковой ошибкой ниже. Как я могу это исправить?
$ sudo apt-get remove mysql-server-5.0 Чтение списков пакетов ... Готово Построение дерева зависимостей Чтение информации о состоянии ... Готово Следующие пакеты были установлены автоматически и больше не требуются: dhcdbd libisc32 Используйте «apt-get autoremove», чтобы удалить их. Следующие пакеты будут удалены: MySQL-сервер 5.0 0 обновлено, 0 вновь установлено, 1 для удаления и 164 не обновлено. 1 не полностью установлен или удален. После этой операции освободится 85,4 МБ дискового пространства. Вы хотите продолжить [Да / Нет]? dpkg: ошибка обработки mysql-server-5.0 (--remove): Пакет находится в очень плохом несовместимом состоянии - вы должны переустановите его перед попыткой удаления. При обработке возникли ошибки: MySQL-сервер 5.0 E: Подпроцесс / usr / bin / dpkg вернул код ошибки (1)
Ответы:
Ни один из других ответов не работал для меня на Маверике.
В моем случае я обнаружил, что это работает:
(заменив «flashplugin-nonfree» именем поврежденного пакета, и заменив «prerm» на тип сценария, который не удался - в моем случае это был «postrm», сценарий после удаления.)
И они говорят, что Ubuntu прост в использовании! ворчать ворчать
источник
У меня была точно такая же проблема с установкой MySQL. Вам нужно очистить пакет. Простое удаление пакета не удаляет файлы конфигурации, которые были с ним.
Также я собираюсь сослаться на mysql-server-5.0 , но понимаю, что есть пакет - обертка mysql-server, который всегда указывает на последнюю версию. т.е. если вы попросите установить mysql-server , apt-get должен сообщить вам, что это зависит от mysql-server-5.0 и установить оба. Если у вас есть пакет mysql-server в системе, вы должны убедиться, что он пропал, прежде чем пытаться переустановить.
Убедитесь, что сервер mysql (mysqld) не работает. Если это так, опустите его:
Проверьте, зависят ли какие-либо пакеты от mysql-server-5.0:
Если они это сделают, вам нужно будет использовать параметр --force для удаления.
Очистить пакет (включая опцию --force , в зависимости от # 2)
Убедитесь, что установочные файлы также очищены, запустив
Установите пакет сервера снова
Надеюсь, это должно исправить вашу проблему. Тем не менее, пакет все еще может быть поврежден, если вы внесли какие-либо изменения в файлы, полученные из пакета mysql-common .
mysql-common - это базовый пакет, используемый как клиентскими, так и серверными компонентами. Если что-то не работает, попробуйте переустановить этот пакет. Там определенно будут пакеты, которые зависят от этого; проверьте используя # 2 выше. Очистите mysql-сервер перед переустановкой mysql-common . Также не забудьте переустановить mysql-common , иначе ваша система будет сильно повреждена.
источник
Возможно, вы захотите
aptitude
попробовать, что лучше обрабатывает зависимости:источник
dpkg
's, так что я не думаю, чтоaptitude
будет обязательно лучше. Не поймите меня неправильно, я всеaptitude
кончилapt-get
, но в конце концов, они оба передают настоящую мелочьdpkg
(которую вы будете рады услышать, изначально реализованной в Perl).Пытаться
Если это другой пакет, который сломан, попробуйте
apt-get remove --force
этот пакет.источник
Имеющаяся там
dpkg
ошибка говорит о том, что проблема возникает, когдаdpkg
вы пытаетесь фактически удалить пакет. (В конце концов,apt-get
иSynaptic
и как рука от фактической работы вdpkg
.)Вы пытались сделать именно то, что говорится в сообщении, и сначала переустановить ?
Как бы глупо это не звучало, если
dpkg
задыхается во время процесса удаления (потому что какой-то файл, который он должен удалить, пропал в промежутке времени), то переустановка и последующее удаление могут иногда помочь. Убедитесь, чтоmysql
он не запущен, прежде чем пытаться установить или удалить его, как рекомендует Нагул .источник
dpkg -r --force-remove-reinstreq <package>
удаляет пакет, не проверяя, требует ли он переустановки.После этого вы сможете переустановить пакет с вашим предпочтительным менеджером пакетов.
источник
У меня была эта проблема с почтальоном. Удалил /etc/init.d/mailman с
починил это :)
источник