Убунту как исправить битые пакеты

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

Во время установки программ с помощью пакетного менеджера 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 при копировании материала ссылка на источник обязательна .

Об авторе

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.

Если вы активный пользователь Linux, то наверняка встречались с тем, что некоторые пакеты так сказать ломаются. Это может быть вызвано по разным причинам, некорректно установленный пакет, какие-то ошибки во время установки и многое другое. Что в свою очередь может сказаться и на самом менеджере пакетов “apt-get”, и как итог, возможно что дойдет даже то того, что вы не сможете обновляться или устанавливать программное обеспечения. Данная статья поможет вам решить вопрос со сломанными пакетами в Debian / Ubuntu, а так же их производными. Так как сломанные пакеты могут возникать по разным причинам, существует несколько способов для решения этой задачи, но, не все они могут сработать, тут все зависит от конкретного случая.

P.S. Желательно точно знать какой пакет у вас сломан, так как это поможет вам выбрать один из способом решения задачи.

Чиним сломанные пакеты с apt-get

Первый вариант, который может помочь починить сломанные пакеты имеется в самом менеджере пакетов apt, и для починки сломанных пакетов достаточно ввести две команды:

sudo apt-get update --fix-missing
sudo apt-get install -f

сломанные пакеты в Debian Ubuntu 1

Этот способ поможет для решения уже установленных в вашей системе пакетов, который по каким то причинам сломались. После выполнения первой команды необходимо убедиться, что она исправила ошибки, а затем переходить к введению второй команды. Возможно, что для исправления сломанных пакетов понадобиться несколько минут:

Чиним сломанные пакеты с apt-get и dpkg

Но, что делать если пакет сломался во время установки? Можно попробовать выполнить команды из первого примера, если они не сработают, переходим к использованию apt-get и dpkg, для этого первым делом используем dpkg для настройки пакетов. А затем выполняем очистку apt-get:

sudo dpkg --configure -a
sudo apt-get clean
sudo apt-get update

сломанные пакеты в Debian Ubuntu 2

В некоторых ситуациях может понадобиться удалить файл блокировки, после удаления файла блокировки, снова выполните предыдущие команды:

sudo rm /var/lib/apt/lists/lock

Принудительное удаление пакета с помощью apt-get и dpkg

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

sudo apt-get remove и название пакета

Если же вам не удалось удалить пакет, переходим к кардинальным мерам, для принудительного пакеты введите команду:

sudo dpkg --remove --force-remove-reinstreq и название пакеты

Затем выполните очистку и обновление пакетов:

sudo apt-get clean && sudo apt-get update

Заключение

Если вы не знаете про менеджеры пакетов apt-get и dpkg, на WIKI имеется статьи, первая про apt, вторая статья про dpkg. В редких ситуациях, выше приведенных мер может быть недостаточно для исправления сломанных пакетов. В этом случае, может понадобиться ручная сборка и удаление сломанных пакетов, правда, имеется риск повредить работоспособность всей системы, что в свою очередь может вывести ее из строя. В этом случае, если вы делали резервные копии вашей системы можно откатиться работоспособной версии системы. Сделать резервную копию вашей системы можно при помощи Timeshift или Deja Dup, последняя имеется в дистрибутиве Ubuntu. Но, чаще всего удается отделаться малой кровью когда появляются сломанные пакеты, и выше приведенных мер достаточно для исправления сломанных пактов.

А на этом сегодня все. Надеюсь данная статья будет вам полезна.
Журнал Cyber-X

  • Печать

Страницы: 1 2 [3] 4  Все   Вниз

Тема: wineу вас отложены (held) битые пакеты.  (Прочитано 107476 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
lin_user

зачем ппа?

Затем, что там свежая версия 1.7.*, а не протухшая из официальных реп.


Пользователь решил продолжить мысль 20 Ноября 2014, 16:49:03:


Поставьте Ubuntu 14.04 — она в софте посвежее будет.

« Последнее редактирование: 20 Ноября 2014, 16:49:03 от lin_user »


Оффлайн
Aleksandru

Вы можете попробовать различные типы решений, которые могут помочь восстановить базу данных пакетов из приведённых ниже:
Совет 1

Введите и выполните в терминале,  эту команду, чтобы исправить битые пакеты:
sudo apt-get —fix-broken install

Совет 2
Если приведенная выше команда не помогла, попробуйте выполнить следующие:
sudo rm /var/lib/apt/lists/* -vf 
sudo apt-get update

Совет 3
Вы также можете попробовать следующие команды:
sudo apt-get clean
sudo apt-get autoclean
sudo apt-get autoremove

Совет 4
И ещё:
sudo dpkg —configure -a
sudo apt-get update

У вас synaptic установлен? В консоли: sudo synaptic

Intel Core i3-3240 3.40GHz, GeForce GT 1030, MSI H61M-P20, 8GB RAM, KINGSTON SV300S37A240G, Kubuntu 20.04


Оффлайн
leon49333

dns@dns-Inspiron-3542:~$ sudo synaptic
sudo: synaptic: команда не найдена
dns@dns-Inspiron-3542:~$


Оффлайн
victor00000

dns@dns-Inspiron-3542:~$ ls /etc/apt/so*t.d/*
/etc/apt/sources.list.d/bumblebee-stable-precise.list
/etc/apt/sources.list.d/bumblebee-stable-precise.list.save
/etc/apt/sources.list.d/google-chrome.list
/etc/apt/sources.list.d/google-chrome.list.save
/etc/apt/sources.list.d/precise-dell.list
/etc/apt/sources.list.d/precise-dell.list.save
/etc/apt/sources.list.d/precise-oem-sp1.list
/etc/apt/sources.list.d/precise-oem-sp1.list.save
/etc/apt/sources.list.d/steam.list
/etc/apt/sources.list.d/steam.list.save
/etc/apt/sources.list.d/ubuntu-wine-ppa-precise.list
/etc/apt/sources.list.d/ubuntu-wine-ppa-precise.list.save
/etc/apt/sources.list.d/xorg-edgers-ppa-precise.list
/etc/apt/sources.list.d/xorg-edgers-ppa-precise.list.save
dns@dns-Inspiron-3542:~$

это значит я их отключил??????????


Пользователь решил продолжить мысль [time]20 Ноябрь 2014, 17:03:55[/time]:


ппа


Пользователь решил продолжить мысль [time]20 Ноябрь 2014, 15:04:50[/time]:


теперь вот это вводить?
sudo apt-get autoremove
sudo apt-get install wine

всего ппа надо?


Оффлайн
leon49333

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


Пользователь решил продолжить мысль 20 Ноября 2014, 17:57:29:


dns@dns-Inspiron-3542:~$ sudo apt-get autoremove
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
dns@dns-Inspiron-3542:~$ sudo apt-get install wine
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Некоторые пакеты невозможно установить. Возможно, вы просите невозможного,
или же используете нестабильную версию дистрибутива, где запрошенные вами
пакеты ещё не созданы или были удалены из Incoming.
Следующая информация, возможно, поможет вам:

Пакеты, имеющие неудовлетворённые зависимости:
 wine : Зависит: wine1.4 но он не будет установлен
E: Невозможно исправить ошибки, у вас отложены (held) битые пакеты.
dns@dns-Inspiron-3542:~$

вот что получилось

« Последнее редактирование: 20 Ноября 2014, 17:57:29 от leon49333 »


Оффлайн
lin_user

Переустановите 14.04 и начните заново, почитывая инструкции.


Оффлайн
leon49333


Оффлайн
victor00000

leon49333,
ппа случай разные библиотеки или apt-get старый версия.
я не знаю, тебя важнее игра стеам /etc/apt/sources.list.d/steam.list или другие.


Оффлайн
leon49333

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


Оффлайн
dj—alex

так для доты 2 вине не нужен. она официально портирована на Steam
и бесплатная


Оффлайн
.human

попробуй так сначала
sudo dpkg —add-architecture i386
а потом
dpkg —configure -a


Оффлайн
chaevara

если проблема с held- пакетами не решена пробуем:

$ sudo apt-get install aptitude
$ sudo aptitude install имя_проги_в_данном_случае_wine

$ sudo apt-get dist-upgrade. Никогда еще Штирлиц не был так близок к провалу…


Оффлайн
NikolasKrr

Начал устанавливать Wine выскочила та же проблемя, после долгих мутарств переустановил ОС и о чудо на голую 14.04 программа легла без сучка и задоринки. Затем настроил систему.
После мне потребовалось установить Gimp и тот же самый текст мне вышел
E: Невозможно исправить ошибки, у вас отложены (held) битые пакеты.
в Центре приложений целую кучу зависимостей высветил.
Но с системой всё в порядке, я же её меньше суток назад установил.
Короче с горем пополам я нашёл причину этой проблемы — это прокладка между компом и стулом. Нужно внимательно подходить к тому что пишут в интернете. Дело в том, что я нуб в ubuntu и, как многие нубы, умею пользоваться поисковиком, а там можно спросить у гугла или яндекса о первичной настройке ОС. Так вот, в одном или нескольких из таких мануалов описана рекомендация, чтобы выбрать наилучший сервер для обновления. Это и была причина того, что система не хотела устанавливать программы. Так что нужно просто всё вернуть как было и выбрать сервер Российская Федерация.


Оффлайн
[ld]

Такая же история была и не только с вайном. Дело не только в сервере, а просто в том что надо включать обновления, обновлять репозиторий в синаптике и все тогда идет, хотя в предыдущих релизах такой заморочки не было.


Оффлайн
vvv2win


  • Печать

Страницы: 1 2 [3] 4  Все   Вверх

Природа того, как работает Ubuntu Linux, означает, что иногда при его использовании вы будете загружать файлы пакета DEB из Интернета для установки. Обычно загрузка этих типов пакетов не вызывает никаких проблем, поскольку разработчики регулярно обновляют свои файлы DEB для удовлетворения потребностей новых выпусков операционной системы Ubuntu. Однако иногда пакеты DEB годами обходятся без обновлений, и когда пользователи устанавливают их, могут произойти поломки. Эти сбои также возникают, когда пользователи удаляют необходимые пакеты, которые должны оставаться в системе. Вот как исправить неработающие пакеты в Ubuntu.

Примечание: хотя это руководство сосредоточено на Ubuntu Linux, содержащаяся в нем информация применима к другим операционным системам Linux, основанным на Ubuntu, таким как Linux Mint, Elementary OS, Zorin OS и многим другим производным. Не стесняйтесь следовать инструкциям, изложенным в этом посте!

Установите диспетчер пакетов Synaptic

Ubuntu Linux больше не поставляется с предустановленным менеджером пакетов Synaptic. Тот факт, что это больше не программа по умолчанию, очень жаль, поскольку в Synaptic есть встроенные способы исправления сломанных пакетов.

Чтобы установить Synaptic, откройте окно терминала, нажав Ctrl + Alt + T или Ctrl + Shift + T на клавиатуре. Затем, когда окно командной строки откроется и будет готово к использованию, запустите команду обновления, чтобы проверить Ubuntu на наличие обновлений программного обеспечения или ожидающих исправлений.

sudo apt update

Следуя команде обновления, установите все программные исправления в свою систему Ubuntu Linux с помощью команды обновления. Обязательно используйте переключатель «y», чтобы автоматически принять приглашение.

sudo apt update -y

После завершения обновления вы сможете быстро установить диспетчер пакетов Synaptic в любой версии Ubuntu Linux с помощью приведенной ниже команды apt install.

sudo apt install synaptic -y

Не хотите использовать Терминал? Обновите свою систему с помощью инструмента обновления Ubuntu (обычно его можно найти, выполнив поиск по запросу «Обновление» в меню приложения). Затем, когда все будет обновлено, откройте Центр программного обеспечения Ubuntu и щелкните поле поиска, чтобы найти приложение Synaptics.

Поиск неработающих пакетов с помощью Synaptic

Процесс поиска битых пакетов в Synaptic начинается с запуска приложения. На ПК с Ubuntu Linux нажмите клавишу Windows, введите «Synaptic» и откройте приложение со значком коричневого поля.

После запуска приложения система запросит пароль. Причина, по которой он запрашивает пароль, заключается в том, что Synaptic должен работать с привилегиями системного уровня. В поле пароля введите пароль для текущего пользователя и нажмите Enter, чтобы принять его.

Открыв Synaptic, щелкните синий значок поиска рядом с полем «Свойства». Оттуда введите точное имя пакета (или пакетов), который, как вы знаете, сломался. Затем нажмите кнопку «Поиск», чтобы начать поиск на вашем ПК с Linux.

Если ваши условия поиска точны, сломанные пакеты на вашем ПК с Ubuntu будут отображаться в столбце «S» с красным квадратом.

Сортировать по сломанным

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

Чтобы отфильтровать неработающие пакеты в Synaptic на Ubuntu, найдите кнопку «Пользовательские фильтры» в нижней левой части экрана и щелкните по ней. Выбор «Пользовательские фильтры» приведет вас к окну с несколькими различными вариантами сортировки пакетов. Просмотрите параметры сортировки и выберите фильтр «Сломанный», чтобы выявить все сломанные, нерабочие пакеты, установленные в Ubuntu.

Исправьте неработающие пакеты с помощью Synaptic

Избавиться от сломанных пакетов в Ubuntu с помощью Synaptic невероятно просто благодаря кнопке «Исправить сломанные пакеты». Почему? Он решает все проблемы, и пользователю не нужно заниматься ни одной из них! Это здорово!

Чтобы исправить любые неработающие пакеты, которые могут появиться на вашем ПК с Ubuntu Linux, убедитесь, что Synaptic открыт. Затем щелкните мышью по меню «Правка». В меню «Правка» найдите параметр «Исправить поврежденные пакеты» и щелкните его мышью.

При выборе опции «Исправить поврежденные пакеты» Synaptic автоматически определит, почему пакеты не работают в вашей системе Ubuntu, и предложит изменения, такие как их удаление, исправление отсутствующих файлов или повторная установка ранее удаленных подпакетов, которые вызвали ошибку. поломка.

После того, как Synaptic закончит предлагать изменения, вернитесь в раздел «Сломанный» под «Пользовательскими фильтрами», и вы заметите, что все неработающие пакеты теперь имеют зеленые значки состояния.

Завершите процесс восстановления пакета на своем ПК с Ubuntu, нажав кнопку «Применить» в Synaptic. Позвольте ему восстановить сломанные пакеты. Когда процесс будет завершен, закройте Synaptic, и все должно вернуться в нормальное состояние на Ubuntu!

Broken packages need repairing or the software won’t run. Here’s how to find the broken packages and fix them in Linux.

fix-broken-packages-linux

Package managers on Linux allow you to control the installation and removal of packages. In addition to that, package managers also help you find broken packages on your system and reinstall them to fix various issues associated with Linux packages.

If you are unaware of which commands to use to find and fix broken packages in Linux, then this guide is for you. We will briefly discuss broken packages, how you can check if your system contains broken packages, and how to reinstall them properly.

What Are Broken Packages?

When you install a new package in Linux, your system’s package manager is in charge of the whole installation process. These package managers have built-in methods to handle exceptions and errors. But sometimes, in case of unexpected issues, the installation halts and the complete package isn’t installed. Such packages are called broken packages in Linux.

Package managers like APT do not allow the further installation of packages if it finds a broken package on the system. In such a situation, repairing the broken package is the only option.

How to Find and Fix Broken Packages

Every package manager handles different types of packages. For example, DNF and YUM work with the Red Hat Package Manager (RPM) to download and install RPM packages. Similarly, APT acts as a frontend wrapper for the base dpkg software on Debian-based distributions.

Reinstalling Broken Packages on Ubuntu and Debian

APT is the default package manager that comes preinstalled on every Debian-based distribution. Apart from APT, Debian and Ubuntu users can download and install packages manually using dpkg as well.

The steps mentioned below will also work if you want to fix broken packages on Kali Linux, since after all, Kali is a Debian-based distro.

To fix broken packages on Debian-based distributions using APT:

  1. Open the terminal by pressing Ctrl + Alt + T on your keyboard and enter:
     sudo apt --fix-missing update 
  2. Update your system’s package list from the available sources:
     sudo apt update 
  3. Now, force the installation of the broken packages using the -f flag. APT will automatically search for broken packages on your system and reinstall them from the official repository.
     sudo apt install -f 

If the aforementioned steps do not work for you, you can try to solve the issue using dpkg.

  1. Force dpkg to reconfigure all the pending packages that are already unpacked but need to undergo configuration. The -a flag in the command stands for All.
     sudo dpkg --configure -a 
  2. Pipe grep with dpkg to get a list of all the packages marked as Required by dpkg.
     sudo dpkg -l | grep ^..r 
  3. Use the —remove flag to delete all the broken packages.
     sudo dpkg --remove --force-remove-reinstreq 
  4. Clean up the package cache and install scripts using apt clean.
     sudo apt clean 
  5. Now, update your system’s package lists using the following command:
     sudo apt update 

Fix Broken Packages on Fedora/CentOS and RHEL

Although YUM and DNF are great when it comes to managing broken packages automatically, sometimes problems do arise as there are thousands of packages installed on a Linux system. In such situations, you can use RPM (the base package manager for Fedora and CentOS) to fix such issues quickly.

  1. Verify all the packages on your system using the -V flag.
     sudo rpm -Va 
  2. You will see a long list containing all the installed packages on your system.
  3. Reinstall the package that you think might be causing the broken package issue.
     sudo dnf --refresh reinstall packagename 

The above steps are highly inconvenient—identifying which package is causing the problem from a list of hundreds is tiresome. Although RPM is a powerful package manager and you will rarely run into such issues, knowing how to fix these problems is still important in case you bump into a similar situation in the near future.

Managing Packages on Linux Distributions

Package managers on Linux are capable of handling most of the issues including failed installations. But sometimes, various problems occur that can only be solved intuitively. The solution to fixing broken packages comprises several steps—identifying the broken package, reinstalling it, and updating the system’s package list.

There are countless Linux distributions available on the internet that are worth trying, but deep down, each one of them has a similar foundation. Desktop environments set each distribution apart by providing a unique user experience. Choosing an ideal desktop environment that suits your taste should be your priority if you have finally decided to go ahead with Linux.

Broken packages need repairing or the software won’t run. Here’s how to find the broken packages and fix them in Linux.

fix-broken-packages-linux

Package managers on Linux allow you to control the installation and removal of packages. In addition to that, package managers also help you find broken packages on your system and reinstall them to fix various issues associated with Linux packages.

If you are unaware of which commands to use to find and fix broken packages in Linux, then this guide is for you. We will briefly discuss broken packages, how you can check if your system contains broken packages, and how to reinstall them properly.

What Are Broken Packages?

When you install a new package in Linux, your system’s package manager is in charge of the whole installation process. These package managers have built-in methods to handle exceptions and errors. But sometimes, in case of unexpected issues, the installation halts and the complete package isn’t installed. Such packages are called broken packages in Linux.

Package managers like APT do not allow the further installation of packages if it finds a broken package on the system. In such a situation, repairing the broken package is the only option.

How to Find and Fix Broken Packages

Every package manager handles different types of packages. For example, DNF and YUM work with the Red Hat Package Manager (RPM) to download and install RPM packages. Similarly, APT acts as a frontend wrapper for the base dpkg software on Debian-based distributions.

Reinstalling Broken Packages on Ubuntu and Debian

APT is the default package manager that comes preinstalled on every Debian-based distribution. Apart from APT, Debian and Ubuntu users can download and install packages manually using dpkg as well.

The steps mentioned below will also work if you want to fix broken packages on Kali Linux, since after all, Kali is a Debian-based distro.

To fix broken packages on Debian-based distributions using APT:

  1. Open the terminal by pressing Ctrl + Alt + T on your keyboard and enter:
     sudo apt --fix-missing update 
  2. Update your system’s package list from the available sources:
     sudo apt update 
  3. Now, force the installation of the broken packages using the -f flag. APT will automatically search for broken packages on your system and reinstall them from the official repository.
     sudo apt install -f 

If the aforementioned steps do not work for you, you can try to solve the issue using dpkg.

  1. Force dpkg to reconfigure all the pending packages that are already unpacked but need to undergo configuration. The -a flag in the command stands for All.
     sudo dpkg --configure -a 
  2. Pipe grep with dpkg to get a list of all the packages marked as Required by dpkg.
     sudo dpkg -l | grep ^..r 
  3. Use the —remove flag to delete all the broken packages.
     sudo dpkg --remove --force-remove-reinstreq 
  4. Clean up the package cache and install scripts using apt clean.
     sudo apt clean 
  5. Now, update your system’s package lists using the following command:
     sudo apt update 

Fix Broken Packages on Fedora/CentOS and RHEL

Although YUM and DNF are great when it comes to managing broken packages automatically, sometimes problems do arise as there are thousands of packages installed on a Linux system. In such situations, you can use RPM (the base package manager for Fedora and CentOS) to fix such issues quickly.

  1. Verify all the packages on your system using the -V flag.
     sudo rpm -Va 
  2. You will see a long list containing all the installed packages on your system.
  3. Reinstall the package that you think might be causing the broken package issue.
     sudo dnf --refresh reinstall packagename 

The above steps are highly inconvenient—identifying which package is causing the problem from a list of hundreds is tiresome. Although RPM is a powerful package manager and you will rarely run into such issues, knowing how to fix these problems is still important in case you bump into a similar situation in the near future.

Managing Packages on Linux Distributions

Package managers on Linux are capable of handling most of the issues including failed installations. But sometimes, various problems occur that can only be solved intuitively. The solution to fixing broken packages comprises several steps—identifying the broken package, reinstalling it, and updating the system’s package list.

There are countless Linux distributions available on the internet that are worth trying, but deep down, each one of them has a similar foundation. Desktop environments set each distribution apart by providing a unique user experience. Choosing an ideal desktop environment that suits your taste should be your priority if you have finally decided to go ahead with Linux.

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

В этой статье мы рассмотрим несколько способов исправления ваших сломанных пакетов как на Ubuntu 16.04, так и на Debian 9. Поскольку эта проблема может возникнуть по нескольким причинам, существует несколько решений, некоторые из которых могут работать или не работать на вашем компьютере, Поэтому лучше всего увидеть, какой пакет сломался и почему, что поможет вам решить, какой метод следует выполнять в первую очередь.

Способ 1: Использование apt-get

Чаще всего, сломанный пакет, который сломался после его установки, можно относительно легко исправить, благодаря встроенному инструменту внутри apt-get. Выполняя следующие команды, вы попытаетесь исправить любые поврежденные пакеты, установленные в вашей системе:

sudo apt-get update --fix-missing
sudo apt-get install -f

(опция -f не подходит для исправления ошибок).

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

Способ 2. Использование dpkg и apt-get

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

sudo dpkg --configure -a

sudo apt-get clean

sudo apt-get update

После этого проверьте, исправлен ли пакет. Если этого не произошло, вам может потребоваться удалить файлы блокировки. Файлы блокировки используются для хранения ресурсов для определенных программ – это помогает предотвратить доступ к другим программам одновременно. Это можно сделать, просто удалив список блокировки:

sudo rm /var/lib/apt/lists/lock

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

Способ 3: Использование dpkg для принудительного удаления

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

Сначала вы можете попробовать удалить проблемный пакет с помощью apt-get, введя следующую команду:

sudo apt-get remove

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

В зависимости от ошибок, возникающих при попытке удалить пакет в обычном режиме, вы можете определить разбитый пакет, используя dpkg и grep:

dpkg -l | grep ^ .. r

Эта команда перечисляет все пакеты, затем grep перечисляет любые результаты, содержащие флаг «r» в третьем поле, что означает «требуется восстановить» (требуется переустановка). Если появится сломанный пакет, вы сможете его удалить.

Выполните следующую команду, чтобы принудительно удалить пакет с вашего устройства. Не забудьте ввести свой пароль, чтобы разрешить удаление. Замените имя сломанной упаковки.

sudo dpkg --remove --force-remove-reinstreq

Как только это будет сделано, очистите и обновите apt-get:

sudo apt-get clean

sudo apt-get update

После этого попробуйте установить пакет с нуля. Он должен нормально устанавливаться.

Другие решения

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Понравилась статья? Поделить с друзьями:
  • Убунту во время чтения архива произошла ошибка
  • Убрир произошла неизвестная ошибка мы уже работаем над ее устранением
  • Убрир как изменить номер телефона
  • Убрать ошибку подушки безопасности фиат альбеа
  • Убрать ошибку подушки безопасности ssangyong actyon