Как мне справиться с проблемой «сломанных пакетов» с Nvidia 465 на Mint 19?

В терминале Ubuntu (16.04 )вы можете выполнить Ctrl + { , а затем { и автоматически дополнить фигурные скобки файлами в каталоге. Он использует запятые вместо пробелов для разделения файлов. Например, каталог, содержащий эти файлы : file.cpp file.h file.i file.py file_wrap.cxx

... будет автоматически завершено до этого : $ cp file{.{cpp,h,i,py},_wrap.cxx}

1
04.05.2021, 00:31
1 ответ
#!/bin/bash

# script: list-nvidia.sh
# author: Craig Sanders <cas@taz.net.au>
# license: Public Domain (this script is too trivial to be anything else)

# options:
# default/none    list the packages, one per line
# -v              verbose (dpkg -l) list the packages
# -h              hold the packages with apt-mark
# -u              unhold the packages with apt-mark

# build an array of currently-installed nvidia packages.
PKGS=( $(dpkg -l '*nvidia*' '*cuda*' '*vdpau*' 2>/dev/null |
           awk '/^[hi][^n]/ && ! /mesa/ {print $2}') )

case "$1" in
  "-v") dpkg -l "${PKGS[@]}" ;;
  "-h") apt-mark hold "${PKGS[@]}" ;;
  "-u") apt-mark unhold "${PKGS[@]}" ;;
  *) printf "%s\n" "${PKGS[@]}" ;;
esac

Этот сценарий может отображать установленные пакеты, связанные с nvidia -, по одному в строке или в подробном формате dpkg -l.

Он также может использовать apt-markдля удержания и снятия пакетов nvidia -Я использую эти параметры непосредственно перед и сразу после apt-get dist-upgrade, чтобы убедиться, что драйвер nvidia обновляется только тогда, Я захочу его на (, т.е. когда я буду готов перезагрузить свою систему или убить и перезапустить X ).

Простой список (сprintf)полезен, если я хочу делать другие вещи со списком, например использовать его в подстановке команд --, например. apt purge $(list-nvidia.sh). В именах пакетов Debian никогда не будет пробелов, символов новой строки и т. д., поэтому не нужно параноить по поводу цитирования.

1
28.07.2021, 11:35

Теги

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