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

1. Обновите списки пакетов
Возможно вам не удалось установить нужные пакеты потому что списки репозиториев устарели, и там ещё не было нужных пакетов. Для обновления списка пакетов выполните:
sudo apt update —fix-missing

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

3. Очистите лишние пакеты
Установке могут мешать лишние пакеты, которые больше не нужны в системе. Для их удаления выполните:
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, однако лучше этого не делать и найти путь решить проблему по другому, ручное редактирование подобных файлов может создать ещё больше проблем.
Похожие записи
Оцените статью
alt=»Creative Commons License» width=»» />
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .
Об авторе
Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.
10 комментариев к “Ошибка у вас зафиксированы сломанные пакеты”
Вот почему я использую Fedora с DNF, за 5 лет использования даже не припомню случаев некорректной работы DNF. APT в Дебиан подобных дистрибутивах это сплошное разочарование.
Если бы все так было просто с зависимостями, что их через форсе принудительно установить, то это был бы не Линукс. Ниче, что система после таких манипуляций не работает? После ваших советов, новичек «уложит» систему точно.
Согласен. С Fedora бубен уже покрылся пылью. Чего все с этой Ubunto’й носятся.
dzentoo? это у меня на матунту бубен плесенью покрылся.
А ты говоришь не о убунту, а Gnome3. Мне его нескончаемые проблемы неведомы, Gnome2 — до сих пор рулит
Ничего не помогло. Постоянно пишет, что сломаны пакеты. к примеру хочу установить: 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:
А что если даже после всех этих манипуляций он все равно устанавливать не хочет?
Вот вообще не помогло ничего. Ничего, собственно, и не произошло после всех этих команд.
libdvd у меня почему-то всегда такую ошибку вызывает после установки экстрасов
помогает только переустановка всех зеленых галочек в синаптике после поиска libdvd
Не знаю почему многим не помогло, но мне при ошибке «битые пакеты» — помогли первые две команды из статьи. А получил ошибку после установки системы Xubuntu с предложением подключиться к wi-fi во время установки (стандартный шаг установщика, при отказах прошлые разы все было норм, битые пакеты не появлялись).
Устанавливал Минт. Кодеки не загружались, потому что битые пакеты. Как здесь и написаны команды потыкал по буквам и всё с работало сразу. И пакеты, и потом кодеки загрузились. Сам ни разу не IT, умею только тыкать при установке ОС в «ОК.
Как исправить битые пакеты с помощью терминала/Центра приложений в Ubuntu/Linux Mint
Если вы не можете установить новые пакеты с помощью терминала в Ubuntu 13.04/12.10 или старше и получаете следующую ошибку:
(. ) Вы можете выполнить ‘apt-get -f install’ для исправления этих ошибок:
Вы можете попробовать различные типы решений, которые могут помочь восстановить базу данных пакетов из приведённых ниже:
Введите и выполните в терминале, эту команду, чтобы исправить битые пакеты:
sudo apt-get —fix-broken install
Если приведенная выше команда не помогла, попробуйте выполнить следующие:
sudo rm /var/lib/apt/lists/* -vf
sudo apt-get update
Вы также можете попробовать следующие команды:
sudo apt-get clean
sudo apt-get autoclean
sudo apt-get autoremove
И ещё:
sudo dpkg —configure -a
sudo apt-get update
Откройте Центр приложений Ubuntu и если вы увидите запрос на восстановление сломанных пакетов, просто нажмите на кнопку Исправить.
Apt fix broken install что это
Updated: May 11, 2020
The problem you’re facing is as follows. You tried to run a regular update on your Linux box, most likely an Ubuntu- or Debian-based system that uses apt as its package manager. After you updated the repo contents, you ran the dist-upgrade command, and soon hit an error. Apt was complaining about missing or broken dependencies, and suggested you re-run the command with —fix-broken or alike. However, this does not seem to help.
I encountered this issue a few weeks back on KDE neon. The problem really annoyed me, because without some expert knowledge, there’s no way out. You’re left with an unusable system that cannot be reliably updated. This is so brittle, and we’re in 2020, when one would expect some level of robustness from software. LELZ. I did praise neon in the past for its resilience, but then it went ahead and undid its own work. Anyway, let me show you how you can resolve this issue.
Problem in more detail
This is what you see on the command line:
dpkg: error processing archive /var/cache/apt/archives/calligraplan_1%3a3.2.2+p18.04+
git20191212.1837-0_amd64.deb (—unpack):
trying to overwrite ‘/usr/share/locale/ar/LC_MESSAGES/calligraplan.mo’, which is also in package calligra-data 1:3.1.0+p18.04+git20191222.0027-0
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/calligraplan_1%3a3.2.2+p18.04+
git20191212.1837-0_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
In my case, the wonky package was Calligra. I’m not sure why it was there in the first place, but hey, we need to fix this, right. So the standard procedure is to run apt with the —fix-broken option. Or perhaps, you could try with —ignore-missing , another valid option. Except you hit a cyclic dependency hell, and there’s no way out.
sudo apt —fix-broken install
Reading package lists. Done
Building dependency tree
Reading state information. Done
You might want to run ‘apt —fix-broken install’ to correct these.
The following packages have unmet dependencies:
calligra : Depends: calligraplan (>= 1:3.1.0+p18.04+git20191222.0027-0) but 1:3.1.0+p18.04+git20191119.0027-0 is installed
calligraplan : Depends: calligra-libs (= 1:3.1.0+p18.04+git20191119.0027-0) but 1:3.1.0+p18.04+git20191222.0027-0 is installed
E: Unmet dependencies. Try ‘apt —fix-broken install’ with no packages (or specify a solution).
At this point, you cannot really remove Calligra, because the package manager is already in an unstable state. The logical step would be to ignore this specific package, or any broken package, using the —ignore-missing option or alike, alas, this does not seem to work, either. So the system is borked.
Solution
The only way around this issue is to actually edit the status file of the package manager, and manually yank out any mention of the affected packages and their dependencies, so that apt can resume and install the healthy portion. Now, this is not a good thing, because you will be left with unpatched software — in some cases, this could be important, Internet-facing stuff, maybe even with a real vulnerability or two, or maybe software with bugs that manifest when you work (say one of the critical system libraries). But it does allow you to continue working, and maybe receive a healthy batch of updates sometime in the future.
What you need at this point is to open /var/lib/dpkg/status in a text editor as root. At this point, I hit another stupid issue, and that’s the fact you cannot «supposedly» launch Kate as root, because of would-be security vulnerabilities. Total and utter nonsense.
sudo kate /var/lib/dpkg/status
Executing Kate with sudo is not possible due to unfixable security vulnerabilities.
But you can sudo su -, and then run Kate as root, no problem. This is one of those «let’s find a problem to a solution» cases, because it has zero actual bearing on real work, and does not make any difference whatsoever, except to annoy users. As if you can’t just open a terminal window and delete stuff with sudo if you like.
Open the file. This is just a long list of packages that are going to be installed. Each package comes with a description, version, and any dependencies. For me, the solution was to look for any mention of the word calligra, and then just delete those package blocks from the status file. In general, this file illustrates the mess quite well, with all the different depends, recommends, breaks and whatnot sections.
Package: libzxingcore1
Status: install ok installed
Priority: optional
.
Version: 1.0.7-1+18.04+bionic+build2
Depends: libc6 (>= 2.14), libgcc1 (>= 1:3.4), libstdc++6 (>= 5.2)
.
Package: mokutil
Status: install ok installed
Priority: optional
.
Version: 0.3.0+1538710437.fb6250f-0ubuntu2
18.04.1
Depends: libc6 (>= 2.14), libefivar1 (>= 34), libssl1.1 (>= 1.1.0)
.
Package: libkf5itemviews-dev
Status: install ok installed
Priority: optional
.
Version: 5.65.0+p18.04+git20191222.0152-0
Replaces: libkf5itemviews-doc (<< 5.61.90-0)
Depends: libkf5itemviews5 (= 5.65.0+p18.04+git20191222.0152-0), qtbase5-dev (>= 5.8.0
)
Recommends: libkf5itemviews-doc (= 5.65.0+p18.04+git20191222.0152-0)
Breaks: kio-dev (<< 5.28), libkf5iconthemes-dev (<< 5.51), libkf5kcmutils-dev (<< 5.51), libkf5kio-dev (<< 5.51), libkf5xmlgui-dev (<< 5.51)
.
But our goal is simple — to delete conflicting entries and allow our system to work. Indeed, once I’ve completed this, I was able to re-run the apt package manager and complete the updates. Job done.
Conclusion
I am surprised and dismayed that we’re in a state where one badly packaged component can completely ruin the system state in Linux. And the thing is, there are many ways to prevent this, if only Linux was developed as a product and not as a series of fragmented functions by devs who don’t see the bigger picture of actual usage. For example, check that all packages are sane BEFORE running the installation. Auto-remove bad packages if they are identified. Prompt the user. Blacklist the bad component. Anything, something.
But this was an issue in 2000, and it’s still an issue in 2020, and this is why I’m mostly using Windows in my production setup, because suffering is not my middle name. If you find yourself apting on the command line, and things go south, then you may want to look at the status file. It will help you work around broken or missing dependencies, and allow you to update your box. On a sad but happy note, we’re done here.
Быстрый ответ: как исправить неработающие пакеты в Linux?
Это несколько быстрых и простых способов исправить возникшую у вас ошибку сломанных пакетов.
- Откройте свои источники. …
- Выберите параметр «Исправить поврежденные пакеты» в диспетчере пакетов Synaptic. …
- Если вы получили это сообщение об ошибке: Попробуйте ‘apt-get -f install’ без пакетов (или укажите решение) .
- Удалите сломанный пакет вручную.
Как удалить сломанный пакет?
- Найдите свой пакет в / var / lib / dpkg / info, например, используя: ls -l / var / lib / dpkg / info | grep
- Переместите папку пакета в другое место, как это было предложено в сообщении блога, о котором я упоминал ранее. …
- Выполните следующую команду: sudo dpkg –remove –force-remove-reinstreq
Как исправить сломанные синаптические пакеты?
Если обнаружены поврежденные пакеты, Synaptic не разрешит дальнейшие изменения в системе, пока все поврежденные пакеты не будут исправлены. Выберите в меню «Правка»> «Исправить поврежденные пакеты». Выберите «Применить отмеченные изменения» в меню «Правка» или нажмите Ctrl + P. Подтвердите сводку изменений и нажмите «Применить».
Что делает APT — fix broken install?
Apt-get — это инструмент управления пакетами на основе терминала, используемый для установки, обновления и удаления пакетов. Наряду с этими функциями он также имеет флаги, которые можно использовать для исправления отсутствующих зависимостей и сломанных пакетов.
Как исправить ошибку при установке?
Неисправный пакет исправлений Ubuntu (лучшее решение)
- sudo apt-get update – fix-missing.
- sudo dpkg –настроить -a.
- sudo apt-получить установку -f.
- Разблокировать dpkg — (сообщение / var / lib / dpkg / lock)
- sudo fuser -vki / var / lib / dpkg / lock.
- sudo dpkg –настроить -a.
Что такое удерживаемый пакет?
«На таможне» означает, что посылка, которую вы отправляете в страну назначения, находится у должностных лиц таможни страны-импортера. Эти государственные органы удерживают посылки до тех пор, пока они не убедятся, что их границу пересекают только разрешенные предметы, а налоги (пошлины и акцизы) уплачиваются за импорт.
Как очистить кеш apt-get?
Очистите кеш APT:
Команда clean очищает локальный репозиторий загруженных файлов пакета. Он удаляет все, кроме папки partials и файла блокировки из / var / cache / apt / archives /. Используйте apt-get clean для освобождения места на диске при необходимости или в рамках регулярного планового обслуживания.
Как исправить sudo apt-get update?
Ошибка несоответствия хеш-суммы
Эта ошибка может произойти, если загрузка последних репозиториев во время «apt-get update» была прервана, и последующее «apt-get update» не может возобновить прерванную выборку. В этом случае удалите содержимое в / var / lib / apt / lists перед повторной попыткой «apt-get update».
Как удалить DPKG?
Для Ubuntu правильный метод удаления пакетов через консоль:
- apt-get –-purge удалить skypeforlinux.
- dpkg –- удалить skypeforlinux.
- dpkg –r имя_пакета.deb.
- apt-get clean && apt-get autoremove. sudo apt-get -f install. …
- # apt-get update. #dpkg –-configure -a. …
- apt-get -u дист-обновление.
- apt-get remove –dry-run имя_пакета.
Что такое диспетчер пакетов Synaptic в Linux?
Synaptic Package Manager — это графический инструмент управления пакетами, основанный на APT. Он позволяет устанавливать, обновлять и удалять пакеты в удобном графическом интерфейсе. Synaptic служит графическим интерфейсом для APT и значительно упрощает процесс управления программным обеспечением, особенно если вы не знакомы с командной строкой.
Как решить проблему, связанную с неспособностью исправить проблемы с поврежденными пакетами?
Во-первых, убедитесь, что локальный кеш пакетов обновлен. Ваша система проверяет этот кеш на наличие доступных пакетов. Возможно (но не обязательно), что пакет зависимостей будет виден системой после обновления кеша. Попробуйте снова установить проблемный пакет и посмотрите, решит ли он проблему.
Как закрыть диспетчер пакетов Synaptic?
Используйте диспетчер пакетов Synaptic
- В диалоговом окне «Диспетчер пакетов Synaptic» выберите «История» в меню «Файл».
- Откроется диалоговое окно «История». …
- Чтобы закрыть диалоговое окно «История», нажмите кнопку «Закрыть».
- Чтобы закрыть диспетчер пакетов Synaptic, выберите «Выйти» в меню «Файл».
- Используйте окно терминала.
10 ночей. 2010 г.
Как вручную запустить dpkg configure a?
Запустите команду sudo dpkg –configure -a, и она должна исправиться сама. Если он не пытается запустить sudo apt-get install -f (для исправления поврежденных пакетов), а затем попробуйте снова запустить sudo dpkg –configure -a. Просто убедитесь, что у вас есть доступ в Интернет, чтобы вы могли загружать любые зависимости.
Как исправить ОС Ubuntu без ее переустановки?
Прежде всего, попробуйте войти в систему с живого компакт-диска и сделать резервную копию данных на внешнем диске. На всякий случай, если этот способ не сработал, можно еще сохранить свои данные и все переустановить! На экране входа в систему нажмите CTRL + ALT + F1, чтобы переключиться на tty1.
Как исправить неработающие пакеты в Debian?
Метод 1. Использование apt-get
(параметр -f является сокращением от fix-broken.) Прежде чем выполнять вторую, попробуйте проверить, решит ли первая команда вашу проблему. Дайте ему несколько минут, чтобы попытаться исправить любые обнаруженные ошибки. Если это сработает, попробуйте использовать пакет, который был сломан — скорее всего, сейчас он будет исправлен.