Как удалить сломанные пакеты в ubuntu

Я предлагаю вам попробовать как FFmpeg, так и / или Mencoder.

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

Они, похоже, в основном подходят для запуска через командную строку, но:

1) Готовые к использованию сценарии можно легко найти в Интернете

2) Существует некоторый GUI, чтобы облегчить их использование. (Я знаю, FFmpeg для FFmpeg и Handbrake, как упоминалось Allan, также является графическим интерфейсом для FFmpeg)

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

1
задан 17 September 2014 в 14:21

10 ответов

запустите эту команду, чтобы удалить сломанные пакеты в ubuntu.

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

после удаления пакета обновите свою систему командой

sudo apt-get update

после успешной обновления.

32
ответ дан 24 May 2018 в 03:37
  • 1
    Эта команда всегда следует избегать, поскольку она ломает вашу систему больше, чем она ремонтирует – rancho 19 June 2016 в 23:03
  • 2
    @rancho зависит от того, какой пакет он есть. – Philip 6 July 2016 в 16:18
  • 3
    хороший, как вы gus всегда пишите имя_пакета, но я вижу список из 900 строк в сумасшедшем формате, например: Broken libopencv-highgui2.4v5:amd64 Conflicts on libopencv-highgui2.4 [ amd64 ] < 2.4.8+dfsg1-2ubuntu1 > ( libs ). ожидая на LTS действительно сделал этот сумасшедший трюк для меня. – nyxee 15 August 2017 в 10:35
  • 4
    Работал, спасибо за @premal – Vishruth 4 December 2017 в 08:46

Откройте ваш терминал и используйте следующую команду

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

Он должен решить вашу проблему.

10
ответ дан 24 May 2018 в 03:37

Я обнаружил, что:

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

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

force-remove-reinstreq является «ядерным вариантом» удаления пакета. Это не сработает, если есть другой пакет, в зависимости от того, который вы собираетесь удалить. Опять же, в этом случае также удалил зависимый пакет.

8
ответ дан 24 May 2018 в 03:37
  • 1
    Ядерная опция работала там, где очистка, очистка, переустановка, автовосстановление, с ошибками dpkg и apt-get. Спасибо. – LIttle Ancient Forest Kami 22 August 2016 в 17:54
  • 2
    Это наилучшее решение , если вы просто хотите уничтожить все и начать все заново. Сэкономил мне много времени! (Я также использовал -purge after -remove) – andersevenrud 25 January 2017 в 00:22
  • 3
    пожалуйста, дайте несколько советов о том, как заполнить это package_name, когда у нас есть 1000 строк (некоторые дубликаты) в файлах журнала apt. – nyxee 15 August 2017 в 10:36

Откройте ваш терминал и вставьте эту строку после строки

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

, затем повторите попытку

3
ответ дан 24 May 2018 в 03:37

ничего из этого не работало для меня. в конце концов я редактировал файл / var / lib / dpkg / status и удалял пакеты оттуда.

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

2
ответ дан 24 May 2018 в 03:37
  • 1
    Кажется, это единственное, что сработало для меня. Даже так называемый «ядерный вариант» -force-remove-reinstreq не смог удалить оскорбительный пакет. Спасибо, сэр. – alex 15 March 2018 в 14:00

Вот один из них:

обновите список пакетов, подобный этому

 sudo apt-get update

, затем очистите все частичные пакеты

 sudo apt-get autoclean

Теперь очистите кеш-файл [ ! d3]

 sudo apt-get clean

Теперь удалите ненужные зависимости

 sudo apt-get autoremove

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

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

] Наконец mopup любые другие пакеты с зависимостями

 sudo apt-get -f install 

Скажите мне, как это происходит.

0
ответ дан 24 May 2018 в 03:37
  • 1
    Я думаю, что эта команда неверна: `sudo dpkg --remove -force --force-remove-reinstreq имя_пакета. – Juan Simón 2 April 2015 в 00:39
  • 2
    Джи ... так какой из них правильный? – Olu 2 April 2015 в 06:57
запросить все пакеты, которые установлены сегодня или вчера 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 wine-qqintl: i386 вызвал проблему, поэтому я удаляю пакет sudo dpkg -r wine-qqintl:i386.
0
ответ дан 24 May 2018 в 03:37
  • 1
    нормально, мы можем недавно установить такие пакеты, но это не отвечает на вопрос, который спрашивает, как удалить сломанные пакеты – Zanna 20 October 2016 в 10:31

Повторяется одна и та же ошибка. Если мы выполняем apt-get clean и apt-get -f install, если мы удалим ненужные данные из файла /var/lib/dpkg/status в Ubuntu.

Предположим, нам нужно удалить сломанный пакет apache. Сначала мы должны открыть файл статуса и выполнить поиск пакета apache. Удалите все описание пакета и сохраните файл состояния. Затем попробуйте использовать apt-get -f install и apt-get clean.

0
ответ дан 24 May 2018 в 03:37

У меня была проблема со сломанным пакетом kodi. Я открыл диспетчер синаптических пакетов и использовал «сломанный» фильтр, чтобы найти пакет и пометить его для полного удаления. Он работал как чемпион.

0
ответ дан 24 May 2018 в 03:37

Ни один из вышеперечисленных не работал для меня

Я использовал sudo aptitude.

Он сразу обнаружил ошибку и предложил варианты. Вы выбираете, и он исправляет его.

0
ответ дан 24 May 2018 в 03:37

Другие вопросы по тегам:

Похожие вопросы: