Как полностью очистить драйверы и инструменты nvidia: Виртуальные пакеты, такие как «nvidia-smi», нельзя удалить [dублировать]

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

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

46
задан 24 March 2014 в 08:42

16 ответов

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

sudo apt-get install --reinstall dpkg

Что подсказывало, что это была проблема (если кто-то ищет и видит это) заключается в том, что update-alternatives: not found был в сообщении об ошибке. Как только dpkg был переустановлен, остальные пакеты автоматически устанавливались автоматически.

20
ответ дан 17 July 2018 в 17:45

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

sudo apt-get install --reinstall dpkg

Что подсказывало, что это была проблема (если кто-то ищет и видит это) заключается в том, что update-alternatives: not found был в сообщении об ошибке. Как только dpkg был переустановлен, остальные пакеты автоматически устанавливались автоматически.

20
ответ дан 23 July 2018 в 18:37

В моем случае apt-get install -f работал. Я установил mysql-workbench-community

Ранее пытались apt autoclean

Я видел, что ошибка dpkg из-за некоторых отсутствующих зависимостей, которые могут быть исправлены путем установки в принудительном режиме (установка зависимостей)

2
ответ дан 17 July 2018 в 17:45

Вы можете удалить файл пакета в директории /var/lib/dpkg/info/ и источнике обновления.

sudo rm /var/lib/dpkg/info/[package_name].* sudo dpkg --configure -a sudo apt-get update

Затем переустановите свой пакет sudo apt-get install [package_name]

Doc

7
ответ дан 17 July 2018 в 17:45

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

Autoclean очищает локальный репозиторий загруженных файлов пакетов. sudo apt-get autoclean Принудительная установка / удаление пакетов. ☠ Используйте с осторожностью sudo apt-get --force-yes install <pkgname> и sudo apt-get --force-yes remove <pkgname>

Также, как всегда, вы можете использовать dpkg для установки, удаления и очистки пакетов.

Autoclean очищает локальный репозиторий извлеченных файлов пакетов. sudo apt-get autoclean

Autoclean очищает локальный репозиторий полученных файлов пакетов.

sudo dpkg -r <pkgname> принудительно устанавливает / удаляет пакеты. ☠ Используйте с осторожностью sudo apt-get --force-yes install <pkgname> и sudo apt-get --force-yes remove <pkgname>
32
ответ дан 17 July 2018 в 17:45

Если все остальное не удается, вы можете вручную удалить пакет через dpkg. Запуск sudo dpkg -P bsnes должен очистить bsnes.

4
ответ дан 17 July 2018 в 17:45

Для опытных пользователей используйте свои риски.

В соответствии со следующим сообщением об ошибке:

subprocess installed post-installation script returned error exit status 127

Вы можете отредактировать /var/lib/dpkg/info/[package_name].postinst и прокомментировать все (или еще лучше попытайтесь понять это и определите проблему), а затем повторите попытку apt-get.

Обратите внимание, что хотя в этом конкретном вопросе сообщение касается «после установки», оно могло бы упомянуть, например, «предварительное удаление» или «пост-удаление» (в каких случаях расширение файла для редактирования было бы .prerm или .postrm).

46
ответ дан 17 July 2018 в 17:45
sudo apt-get install -f --reinstall coreutils init-system-helpers

После выполнения выше вы можете установить / обновить / удалить / очистить, как обычно, для любых пакетов.

0
ответ дан 17 July 2018 в 17:45

Если все остальное не работает. Я сначала сменил каталог на:

cd /var/lib/dpkg/info

, затем я удалил все с помощью .postinst:

sudo rm *.postinst

, а затем обновил репозиторий

sudo apt-get update

, тогда все прошло нормально, когда я сделал:

sudo apt-get --force-yes install openjdk-7-jre-headless
11
ответ дан 17 July 2018 в 17:45

В моем случае apt-get install -f работал. Я установил mysql-workbench-community

Ранее пытались apt autoclean

Я видел, что ошибка dpkg из-за некоторых отсутствующих зависимостей, которые могут быть исправлены путем установки в принудительном режиме (установка зависимостей)

2
ответ дан 23 July 2018 в 18:37

Вы можете удалить файл пакета в директории /var/lib/dpkg/info/ и источнике обновления.

sudo rm /var/lib/dpkg/info/[package_name].* sudo dpkg --configure -a sudo apt-get update

Затем переустановите свой пакет sudo apt-get install [package_name]

Doc

7
ответ дан 23 July 2018 в 18:37
  • 1
    На самом деле вам лучше использовать sudo rm /var/lib/dpkg/info/[pakege_name].*. В противном случае вы также удалите пакеты, которые начинаются с того же имени. В любом случае, спасибо за это, это было единственное решение, которое сработало для меня – smac89 21 June 2017 в 19:28

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

Autoclean очищает локальный репозиторий загруженных файлов пакетов. sudo apt-get autoclean Принудительная установка / удаление пакетов. ☠ Используйте с осторожностью sudo apt-get --force-yes install <pkgname> и sudo apt-get --force-yes remove <pkgname>

Также, как всегда, вы можете использовать dpkg для установки, удаления и очистки пакетов.

Autoclean очищает локальный репозиторий извлеченных файлов пакетов. sudo apt-get autoclean

Autoclean очищает локальный репозиторий полученных файлов пакетов.

sudo dpkg -r <pkgname> принудительно устанавливает / удаляет пакеты. ☠ Используйте с осторожностью sudo apt-get --force-yes install <pkgname> и sudo apt-get --force-yes remove <pkgname>
33
ответ дан 23 July 2018 в 18:37
  • 1
    Команды dpkg и apt-get -force-yes возвращают ту же ошибку, что и раньше. Autoclean не возвращает ошибку, но, похоже, ничего не делает с двумя сломанными пакетами. – Bijak 24 March 2014 в 10:22
  • 2
    @Bijak Вы наверняка пытались очистить bsnes. У вас? – Registered User 24 March 2014 в 10:26
  • 3
    Да, с dpkg -P, apt-get purge и с Synaptic – Bijak 24 March 2014 в 18:39
  • 4
    Опубликовать вывод dpkg -l |grep bsnes – Registered User 24 March 2014 в 18:51
  • 5
    rF bsnes 0.088-7 amd64 Точный эмулятор SNES / SuperFamicom – Bijak 24 March 2014 в 19:09

Если все остальное не удается, вы можете вручную удалить пакет через dpkg. Запуск sudo dpkg -P bsnes должен очистить bsnes.

4
ответ дан 23 July 2018 в 18:37

Для опытных пользователей используйте свои риски.

В соответствии со следующим сообщением об ошибке:

subprocess installed post-installation script returned error exit status 127

Вы можете отредактировать /var/lib/dpkg/info/[package_name].postinst и прокомментировать все (или еще лучше попытайтесь понять это и определите проблему), а затем повторите попытку apt-get.

Обратите внимание, что хотя в этом конкретном вопросе сообщение касается «после установки», оно могло бы упомянуть, например, «предварительное удаление» или «пост-удаление» (в каких случаях расширение файла для редактирования было бы .prerm или .postrm).

47
ответ дан 23 July 2018 в 18:37
  • 1
    На самом деле это лучший метод. Повторная установка dpkg не всегда помогает. – Danatela 24 December 2015 в 14:36
  • 2
    Спасибо, кучи. Я должен был исправить /var/lib/dpkg/info/[package_name].prerm, но ваш пост дал мне правильное направление. Определенно, для продвинутых пользователей, это рискованно ! – sмurf 7 January 2016 в 03:10
  • 3
    Лучший ответ. Благодаря! Исправлена ​​проблема с исправлением файлов .prerm и .postrm. – fuser 27 May 2017 в 12:28
sudo apt-get install -f --reinstall coreutils init-system-helpers

После выполнения выше вы можете установить / обновить / удалить / очистить, как обычно, для любых пакетов.

0
ответ дан 23 July 2018 в 18:37

Если все остальное не работает. Я сначала сменил каталог на:

cd /var/lib/dpkg/info

, затем я удалил все с помощью .postinst:

sudo rm *.postinst

, а затем обновил репозиторий

sudo apt-get update

, тогда все прошло нормально, когда я сделал:

sudo apt-get --force-yes install openjdk-7-jre-headless
11
ответ дан 23 July 2018 в 18:37
  • 1
    Этот удаляет все сценарии после установки , а не только постраничного пакета. По-моему, слишком чрезмерно. -1 – David Foerster 1 April 2017 в 01:57
  • 2
    Если легко идентифицировать и удалить только конкретный пост-установочный сценарий, вызывающий проблему, это может быть очень удобным способом удаления отказоустойчивого пакета. – Ian Mackinnon 6 January 2018 в 16:47
  • 3
    после кошмара с проблемами ядра переименование .postinst только затронутого ядра исправило проблему – Andy 9 April 2018 в 23:00

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

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