Почему apt-get purge хочет удалить несоответствующие пакеты

Полагаю, все дело в управлении зависимостями, но нужно быть уверенным. Мой случай:

sudo apt-get purge nvidia*

Следующие пакеты будут УДАЛЕНЫ: nvidia-352 * nvidia-cg-dev * nvidia-cg-toolkit * nvidia-opencl-icd-352 * nvidia-prime * nvidia-settings * retroarch *

Эй, оставь меня retroarch в покое, была моя реакция. Любой способ избежать этого или просто согласиться с ним и переустановить retroarch впоследствии.

1
задан 10 October 2015 в 19:32

1 ответ

retroarch зависит от nvidia-cg-toolkit таким образом, это удалено, если Вы удаляете nvidia-cg-toolkit.

Как примечание стороны sudo apt-get purge nvidia* скорее всего, не делает то, что Вы хотите:

Сначала оболочка попытается расшириться nvidia*. Таким образом, если у Вас есть, например, названный файл nvidia.txt в Вашей текущей папке будет на самом деле работать оболочка

sudo apt-get purge nvidia.txt

Если оболочка не может расшириться nvidia* apt-get интерпретирует его как регулярное выражение (не шаблон оболочки!) значение"nvidi сопровождаемый нулем или больше a"и затем поиск пакетов с именами, содержащими подстроку соответствия. Это apt-get произведет чистку всех пакетов с именем, содержащим nvidi (без a потому что "нуль" в "нуле или больше").

Лучше используйте

sudo apt-get purge 'nvidia.*'

для всего пакета, содержащего nvidia или

sudo apt-get purge '^nvidia.*'

если Вы хотите удалить все пакеты, запускающиеся с nvidia.

1
ответ дан 11 October 2015 в 05:32

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

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