Главная >> Инструкции >> Ошибка у вас зафиксированы сломанные пакеты

Ошибка у вас зафиксированы сломанные пакеты

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

В этой статье мы рассмотрим что делать с такой ошибкой, как её исправить, а также я дам ссылки на другие материалы на сайте, которые помогут справится с проблемой.


Содержание статьи

Как исправить у вас зафиксированы сломанные пакеты?

1. Обновите списки пакетов

Возможно вам не удалось установить нужные пакеты потому что списки репозиториев устарели, и там ещё не было нужных пакетов. Для обновления списка пакетов выполните:

sudo apt update --fix-missing

2. Установите битые пакеты

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

sudo apt install -f

3. Очистите лишние пакеты

Установке могут мешать лишние пакеты, которые больше не нужны в системе. Для их удаления выполните:

sudo apt clean

Затем:

sudo apt autoremove

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

sudo dpkg --remove -force --force-remove-reinstreq имя_пакета

4. Используйте dpkg

Вместо apt вы можете использовать команду dpkg чтобы посмотреть какие пакеты вызывают проблему. Просто выполните:

sudo dpkg --configure -a

Команда покажет проблемные пакеты, а потом вы сможете их удалить той же командой:

sudo dpkg --remove -force --force-remove-reinstreq имя_пакета

 

5. Разрешите зависимости

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

Выводы

В этой небольшой статье мы рассмотрели что делать если в вашей системе появились битые пакеты и как их исправить. Здесь решение проблемы очень сильно зависит от вашей ситуации, но здесь приведены основные варианты решения, которые должны помочь вернуть пакетный менеджер к работе. Иногда рекомендуют удалить пакет вручную из базы данных dpkg /var/lib/dpkg/status, однако лучше этого не делать и найти путь решить проблему по другому, ручное редактирование подобных файлов может создать ещё больше проблем.

Creative Commons License
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

15 комментариев к “Ошибка у вас зафиксированы сломанные пакеты”

  1. Вот почему я использую Fedora с DNF, за 5 лет использования даже не припомню случаев некорректной работы DNF. APT в Дебиан подобных дистрибутивах это сплошное разочарование.

    Ответить
  2. Если бы все так было просто с зависимостями, что их через форсе принудительно установить, то это был бы не Линукс. Ниче, что система после таких манипуляций не работает? После ваших советов, новичек "уложит" систему точно.

    Ответить
  3. dzentoo? это у меня на матунту бубен плесенью покрылся.
    А ты говоришь не о убунту, а Gnome3. Мне его нескончаемые проблемы неведомы, Gnome2 - до сих пор рулит

    Ответить
  4. Ничего не помогло. Постоянно пишет, что сломаны пакеты. к примеру хочу установить: apt-get install mariadb-server. Делаю как вы пишите.
    Следующие пакеты имеют неудовлетворённые зависимости:
    mariadb-server : Зависит: mariadb-server-10.1 (>= 1:10.1.29-6) но он не будет установлен
    E: Невозможно исправить ошибки: у вас зафиксированы сломанные пакеты.
    root@user-All-Series:~# sudo apt update --fix-missing
    Сущ:1 http://lt.archive.ubuntu.com/ubuntu bionic InRelease
    Чтение списков пакетов… Готово
    Построение дерева зависимостей
    Чтение информации о состоянии… Готово
    Все пакеты имеют последние версии.
    root@user-All-Series:~# sudo apt install -f
    Чтение списков пакетов… Готово
    Построение дерева зависимостей
    Чтение информации о состоянии… Готово
    Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
    root@user-All-Series:~# sudo apt clean
    root@user-All-Series:~# sudo apt autoremove
    Чтение списков пакетов… Готово
    Построение дерева зависимостей
    Чтение информации о состоянии… Готово
    Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
    root@user-All-Series:~#

    Ответить
  5. libdvd у меня почему-то всегда такую ошибку вызывает после установки экстрасов
    помогает только переустановка всех зеленых галочек в синаптике после поиска libdvd

    Ответить
  6. Не знаю почему многим не помогло, но мне при ошибке "битые пакеты" - помогли первые две команды из статьи. А получил ошибку после установки системы Xubuntu с предложением подключиться к wi-fi во время установки (стандартный шаг установщика, при отказах прошлые разы все было норм, битые пакеты не появлялись).

    Ответить
  7. Устанавливал Минт. Кодеки не загружались, потому что битые пакеты. Как здесь и написаны команды потыкал по буквам и всё с работало сразу. И пакеты, и потом кодеки загрузились. Сам ни разу не IT, умею только тыкать при установке ОС в "ОК.

    Ответить
  8. Это нормально что оно удалит пакеты libaperture-0-0 linux-headers-5.15.0-74 linux-headers-5.15.0-74-generic
    linux-image-5.15.0-74-generic linux-modules-5.15.0-74-generic
    linux-modules-extra-5.15.0-74-generic???

    Ответить
  9. Не помогло = ругается на предложенную команду:
    $ sudo dpkg --remove -force --force-remove-reinstreq winehq-stable
    dpkg: ошибка: несовместимые действия -f (--field) и -r (--remove)

    Ответить
  10. мне помогло /usr/share/doc/libelf1 удолить файлы в этом коталоге в рут отрыть папку как рут пользовательтоесть открыть как рут. и в синаптике исправить ошыбки!

    Ответить

Оставьте комментарий