Linux удалить пакеты с ошибками

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

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Creative Commons License

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

Об авторе

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

I can not remove broken package. Use the following command:
sudo apt-get -f install
but I get the following response:

Preparing to unpack .../nodejs_0.10.28-1chl1~trusty1_amd64.deb ...
Unpacking nodejs (0.10.28-1chl1~trusty1) over (0.10.25~dfsg2-2ubuntu1) ...
dpkg: error processing archive /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb (--unpack):
 trying to overwrite '/usr/share/man/man1/node.1.gz', which is also in package nodejs-legacy 0.10.25~dfsg2-2ubuntu1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Processing triggers for man-db (2.6.7.1-1) ...
Errors were encountered while processing:
 /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

I tried various commands like

 2015  sudo apt-get clean
 2020  sudo dpkg --configure -a
 2023  sudo apt-get autoremove
 2034  sudo apt-get upgrade && sudo apt-get -f install

But I did not get any result. I can not install synaptic. Any ideas how can I remove the broken package ?

asked Sep 17, 2014 at 9:21

Krasimir's user avatar

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

I can not remove broken package. Use the following command:
sudo apt-get -f install
but I get the following response:

Preparing to unpack .../nodejs_0.10.28-1chl1~trusty1_amd64.deb ...
Unpacking nodejs (0.10.28-1chl1~trusty1) over (0.10.25~dfsg2-2ubuntu1) ...
dpkg: error processing archive /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb (--unpack):
 trying to overwrite '/usr/share/man/man1/node.1.gz', which is also in package nodejs-legacy 0.10.25~dfsg2-2ubuntu1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Processing triggers for man-db (2.6.7.1-1) ...
Errors were encountered while processing:
 /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

I tried various commands like

 2015  sudo apt-get clean
 2020  sudo dpkg --configure -a
 2023  sudo apt-get autoremove
 2034  sudo apt-get upgrade && sudo apt-get -f install

But I did not get any result. I can not install synaptic. Any ideas how can I remove the broken package ?

asked Sep 17, 2014 at 9:21

Krasimir's user avatar

1

run this command to remove broken packages in ubuntu.

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

after removing package update your system with command

sudo apt-get update

restart system after successfully updation.

answered May 6, 2015 at 8:53

premal's user avatar

premalpremal

1,6832 gold badges13 silver badges8 bronze badges

6

Open your terminal and use following command

sudo dpkg --purge nodejs-legacy
sudo apt-get install -f

It should solve your problem.

answered Sep 17, 2014 at 12:41

g_p's user avatar

g_pg_p

18k6 gold badges56 silver badges68 bronze badges

I’ve found that:

sudo dpkg --remove --force-remove-reinstreq <packagename>

Works best. If it gives you an error that it won’t remove a package because it is depended on by another package, remove that other package as well. You’ll have to repeat this step several times and then reinstall your deleted packages.

The force-remove-reinstreq is THE «nuclear option» of deleting a package. It only fails if there is another package depending on the one you’re about to delete — Again, in that case, deleted the depending package too.

muru's user avatar

muru

191k52 gold badges468 silver badges719 bronze badges

answered Mar 29, 2016 at 17:30

Bryan Wilcutt's user avatar

7

This fixed my problem:

sudo dpkg -i --force-overwrite /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb

Eliah Kagan's user avatar

Eliah Kagan

116k54 gold badges314 silver badges489 bronze badges

answered Sep 17, 2014 at 10:06

Krasimir's user avatar

KrasimirKrasimir

1,0731 gold badge8 silver badges10 bronze badges

1

NOTE: The following command will remove the installation and removal scripts including the list files. It won’t remove the package, nor it will fix anything, it will just make dpkg forget about the error message.

rm /var/lib/dpkg/info/<package_name>.*

example:

rm /var/lib/dpkg/info/elasticsearch.*

Error404's user avatar

Error404

6,6451 gold badge25 silver badges50 bronze badges

answered Feb 3, 2020 at 13:21

buycanna.io's user avatar

buycanna.iobuycanna.io

2012 silver badges5 bronze badges

2

If you have a broken dependency (which I have encountered with openjdk), you will want to purge the package and force it to skip over dependency problems:

sudo dpkg -P --force-depends package_name

I found the answer on another forum

Mikey T.K.'s user avatar

Mikey T.K.

4731 gold badge4 silver badges19 bronze badges

answered Jan 18, 2020 at 3:32

2

None of the above worked for me. Eventually I edited /var/lib/dpkg/status
and removed the packages from there.

However, I would not advise this. It’s just an option if all else fails.

NotTheDr01ds's user avatar

NotTheDr01ds

14.2k5 gold badges47 silver badges73 bronze badges

answered Feb 19, 2018 at 12:48

BonifatiusK's user avatar

BonifatiusKBonifatiusK

2313 silver badges2 bronze badges

1

Here’s one:

update your package list like this

 sudo apt-get update

then cleanup any partial packages

 sudo apt-get autoclean

Now clean the apt cache

 sudo apt-get clean

Now remove any unnecessary dependancies

 sudo apt-get autoremove

from the command above, you can identify any broken packages and forcefully remove it like this

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

Finally mopup any other packages with dependacies

 sudo apt-get -f install 

Tell me how it goes.

Tarek Kalaji's user avatar

answered Sep 17, 2014 at 13:02

Zuko's user avatar

ZukoZuko

1,23711 silver badges12 bronze badges

4

Open your terminal , and paste these line after line

sudo rm -rf  /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb
sudo apt-get autoclean
sudo apt-get update
sudo apt-get upgrade

then try again

answered Sep 17, 2014 at 9:59

Raja G's user avatar

Raja GRaja G

99.8k103 gold badges252 silver badges328 bronze badges

The same error repeats If we do apt-get clean and apt-get -f install unless we remove the junk data from /var/lib/dpkg/status file in Ubuntu.

Suppose we need to remove apache broken package. Initially we have to open the status file and search for the package apache. Remove the entire package description and save the status file. Then try using apt-get -f install and apt-get clean.

d a i s y's user avatar

d a i s y

5,3919 gold badges40 silver badges59 bronze badges

answered Feb 1, 2017 at 7:00

user649305's user avatar

None of the above worked for me

I used sudo aptitude.

It found the error immediately and offered options. You select and it fixes it.

answered Jul 18, 2017 at 12:45

Aryeh Beitz's user avatar

1

I had a problem with broken kodi package. I opened synaptic package manager and used the «broken» filter to locate the package and marked it for complete removal. It worked like a champ.

answered May 12, 2017 at 23:48

Joe's user avatar

  1. query all the packages that are installed today or yesterday
    awk -v foo=$(date '+%Y-%m-%d') -v bar=$(date -d "yesterday" '+%Y-%m-%d') '($1==foo || $1==bar) && $3~/^install$/ { print $4 }' /var/log/dpkg.log
  2. wine-qqintl:i386 caused the problem, so I remove the package
    sudo dpkg -r wine-qqintl:i386

  3. done.

answered Oct 20, 2016 at 3:05

Ming Zhanghui's user avatar

1

Как профессиональному пользователю Linux, мне приходится устанавливать, тестировать и удалять тонны пакетов на своих системах Ubuntu, Fedora и Arch.

Установка и удаление пакетов просты, но если вы столкнетесь с проблемой битых пакетов на вашей машине Ubuntu, это приведет к хаосу. Если вы не можете удалить битые пакеты с вашей машины Ubuntu, вы, вероятно, столкнетесь с проблемами при их последующей установке. Кроме того, битые пакеты занимают некоторое место в файловой системе Ubuntu.

Удаление битых пакетов в Ubuntu Linux

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

Обычно пакеты устанавливаются внутри корневой файловой системы; когда у вас есть полномочия root, и вы делаете какие-либо несоответствия с любым из тех файлов или каталогов, где установлен пакет, он может оказаться битым.

Другой способ словить битый пакет — удалить репозиторий пакетов из системы. Вы можете использовать команды aptitude или dpkg для удаления приложений из системы, но они не удалят битые пакеты полностью. В этом посте мы рассмотрим, как удалить битые пакеты из системы Ubuntu.

1. Очистка конкретного пакета в Ubuntu

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

Например, вы можете выполнить следующие команды, чтобы очистить файлы кэша для пакета NodeJS, который сломался на вашей системе Ubuntu.

sudo rm -rf /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb

Теперь выполните команду auto clean, чтобы освободить место на диске, а затем обновите системный репозиторий.

sudo apt-get autoclean
sudo apt-get update
sudo apt-get upgrade

Вы также можете использовать команду move, чтобы переместить файлы кэша вашего приложения во временные файлы. Затем вы можете удалить поврежденный пакет через инструмент менеджера пакетов Debian (dpkg). Например, следующие команды удалят сломанный менеджер версий Ruby (RVM) в системе Ubuntu.

sudo mv /var/lib/dpkg/info/rvm.* /tmp/
sudo dpkg --remove --force-remove-reinstreq rvm

2. Решение проблемы блокировки

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

Обычно, когда вы удаляете инструмент с машины, файлы зависимостей и другие плагины тоже должны быть удалены. Но что делать, если некоторые пакеты не хотят покидать ваш компьютер! Пожалуйста, удалите заблокированные файлы пакетов Debian, выполнив следующие команды remove с правами root.

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

3. Принудительное удаление поврежденных пакетов

Этот метод поможет вам принудительно удалить неработающие пакеты в системе Ubuntu. Принудительное удаление требуется потому, что при установке некоторых пакетов в систему они устанавливаются в корневой каталог. Однако вы можете выполнить следующую команду dpkg, приведенную ниже, чтобы удалить все неработающие пакеты из вашей системы. Пожалуйста, не забудьте заменить <packagename> на имя вашего поврежденного пакета.

sudo dpkg --remove --force-remove-reinstreq <packagename>
sudo apt-get update

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

sudo dpkg -l | grep ^..r
sudo dpkg --remove --force-remove --reinstreq

Вот еще одна вещь, которая может вам понадобиться: после удаления неработающего пакета в системе Ubuntu, пожалуйста, выполните команды aptitude для обновления системного репозитория.

sudo apt update --fix-missing update

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

sudo apt-get install -f

4. Автоматическая очистка поврежденных пакетов в Ubuntu

Команды auto clean и auto-remove на самом деле не удаляют поврежденные пакеты из системы. Тем не менее они помогают освободить место, которое занимало ранее установленное/удаленное приложение.

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

Тем не менее выполните следующие команды clean и auto-clean в оболочке терминала, чтобы очистить неиспользуемые места в системе, удалив файлы кэша.

sudo apt-get autoclean
sudo apt-get clean

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

sudo apt-get autoremove

После очистки системы выполните команду обновления репозитория для бесперебойной работы вашего ПК.

sudo apt-get update

5. Восстановление поврежденных пакетов через режим восстановления

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

Сначала запустите систему Ubuntu и нажмите клавишу Shift, чтобы войти в режим восстановления. Если клавиша Shift у вас не работает, вам может понадобиться найти комбинацию кнопок восстановления для вашей модели ПК/ноутбука, выполнив быстрый поиск в Google.

После перезагрузки компьютера выберите в меню загрузки Дополнительные параметры Ubuntu, затем, когда откроется режим восстановления, выберите в выпадающем списке меню ‘Восстановить поврежденный пакет’.

Теперь вам нужно нажать кнопку Yes для монтирования вашей системы внутри файловой системы. Это перемонтирует файловую систему в режиме чтения/записи, а другие файловые системы будут смонтированы в каталоге /etc/fstab.

repair-brpken-packages-from-recovery-mode-on-ubuntu

build-cache-and-load-files

6. Исправление сломанного системного пакета

Обычно на машине Ubuntu мы используем приложение Software Updater для обновления репозитория, файлов кэша и других данных пакета. Но иногда, из-за ошибки зависимости или системной ошибки, вы не можете запустить приложение Software Updater.

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

sudo apt-get clean
sudo apt-get install -f

7. Получение менеджера пакетов Synaptic

Менеджер пакетов Synaptic является наиболее используемым инструментом управления пакетами на основе графического интерфейса для Ubuntu и других дистрибутивов Debina. В нем есть функции для установки, удаления, обновления и исправления неработающих пакетов. Если на вашей машине не установлен инструмент Synaptic, выполните следующие команды в терминале с правами root для его установки.

sudo apt-get update
sudo apt-get install synaptic

Когда установка менеджера пакетов Synaptic завершится, откройте его и нажмите на кнопку «Изменить» в верхней панели. Теперь найдите опцию ‘Fix Broken Packages’. Обычно, чтобы обновить, удалить или исправить какие-либо пакеты через инструмент Synaptic, вам нужно сначала отметить это приложение в списке «Все пакеты».

fix-broken-packages-on-ubuntu-via-synptic

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

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

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

Чтобы удалить неиспользуемые репозитории с машины Ubuntu, откройте инструмент ‘Software & Updates’ и перейдите на вкладку ‘Other Software’. На вкладке «Другое ПО» вы увидите список репозиториев, установленных в вашей системе. Чтобы удалить любой репозиторий, отметьте название репозитория и нажмите на кнопку «Удалить» в нижней панели.

other-software-repo

После удаления любого репозитория выполните команду aptitude update, чтобы обновить систему.

Если вы не можете найти репозиторий для определенного пакета, вы всегда можете использовать команду whereis, чтобы узнать, где находятся файлы.

Заключительные слова

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

Я надеюсь, что эта статья была информативной для вас; пожалуйста, поделитесь этой статьей со своими друзьями и сообществом Linux. Вы также можете написать свое мнение в разделе комментариев к этому посту.

1740130cookie-checkКак удалить поврежденные пакеты в 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

There was an error when I tried to remove a package, so it was left in a broken state. I tried the following:

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

Output:

(Reading database ... 41743 files and directories currently installed.)
Removing rvm (1.29.3-1) ...
bash: rvm: command not found
dpkg: error processing package rvm (--purge):
 subprocess installed pre-removal script returned error exit status 127
Errors were encountered while processing:
 rvm

.

sudo dpkg --purge rvm

Output: same as above

sudo dpkg -i --force-overwrite package

Output:

dpkg: error processing archive rvm (--install):
 cannot access archive: No such file or directory
Errors were encountered while processing:
 rvm

Is there a way to force remove it, ignoring all errors? I’m using Ubuntu 16.04 on WSL.

asked Jan 24, 2018 at 20:51

Leo Jiang's user avatar

Leo JiangLeo Jiang

24.1k48 gold badges150 silver badges276 bronze badges

I faced this problem with a broken package, rvm. I tried many things like sudo apt install -f and sudo dpkg --purge --force-all rvm but nothing worked. Finally I managed to find a blog post that explains how to remove broken packages on Debian/Ubuntu.

Here are the steps.

  1. Find your package in /var/lib/dpkg/info, for example using: ls -l /var/lib/dpkg/info | grep <package>

  2. Move the package folder to another location, like suggested in the blog post I mentioned before.

     sudo mv /var/lib/dpkg/info/<package>.* /tmp/
    
  3. Run the following command:

     sudo dpkg --remove --force-remove-reinstreq <package>
    

So as an example I solved my problem by executing the following commands in a terminal:

sudo mv /var/lib/dpkg/info/rvm.* /tmp/
sudo dpkg --remove --force-remove-reinstreq rvm

Community's user avatar

answered Feb 10, 2018 at 22:16

emont01's user avatar

9

  1. Install synaptic package manager.

    sudo apt-get install synaptic
    
  2. Open synaptic package manager and search for the package which you want to remove or install or change

Done!

Ardent Coder's user avatar

Ardent Coder

3,7379 gold badges26 silver badges53 bronze badges

answered May 6, 2020 at 11:37

Ideacon's user avatar

3

so in my case perl-modules-5.22 was corrupt.
I followed the steps in the accepted answer, but this did not resolve my issue.

to fix I additionally had to:

sudo apt remove -f perl-modules-5.22
sudo apt upgrade -y

answered Jun 3, 2020 at 21:35

WeezyKrush's user avatar

WeezyKrushWeezyKrush

4564 silver badges11 bronze badges

sudo apt remove -f <package_name>

Ex: sudo apt remove mongo* will remove all mongo db packages.

answered Oct 5, 2020 at 13:48

Pulak Ghosh's user avatar

I had a similar issue where a package was missing files, and hence could not be removed. The error message was «Stopping Service. Cannot stop ***.service, service is not running»
Service is not running since service file is missing.

Shouldn’t it be easier to purge the package then? I guess not.

Still: run aptitude

sudo aptitude

find the package in question, check its info, verify which versions exist.
Install a different version from the one you have presently (ideally one patch version up or down from what you have to avoid too much change) — it will ask you what to do with the missing files — choose to replace from the version being installed

sudo apt-get install <package>=<version>

Once all such missing files are replaced, you should be able to do standard purge

sudo apt-get purge <package>

answered Dec 11, 2020 at 18:34

Alex Lutsky's user avatar

Execute the command as a root

sudo apt-get install -f

You need elevated privileges for the package manager.

answered Sep 21, 2018 at 11:05

Abdelhak's user avatar

AbdelhakAbdelhak

1662 silver badges12 bronze badges

0

Возможно, вам также будет интересно:

  • Linux произошла ошибка проверки подлинности
  • Linux проверка флешки на ошибки
  • Linux проверка файла на ошибки
  • Lineage 2 ошибка agp is deactivated
  • Lineage 2 вылетает с ошибкой

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии