Установите последние драйверы Nvidia - зависимости UNMET

Несколько месяцев назад я обновил систему от 16,04 до 18,04 с sudo do-release-upgrade. Много вещей повредились, я не смог войти в систему с Драйвером Nvidia, и т.д. но так или иначе сумел получить вещи, работающие.

Однако теперь, когда я пытаюсь обновить драйвер GPU с sudo ubuntu-drivers autoinstall Я получаю следующую проблему.

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 nvidia-driver-440 : Depends: libnvidia-gl-440 (= 440.82-0ubuntu0~0.18.04.1) but it is not going to be installed
                     Depends: nvidia-dkms-440 (= 440.82-0ubuntu0~0.18.04.1)
                     Depends: nvidia-kernel-source-440 (= 440.82-0ubuntu0~0.18.04.1) but it is not going to be installed
                     Depends: nvidia-compute-utils-440 (= 440.82-0ubuntu0~0.18.04.1) but it is not going to be installed
                     Depends: libnvidia-decode-440 (= 440.82-0ubuntu0~0.18.04.1) but it is not going to be installed
                     Depends: libnvidia-encode-440 (= 440.82-0ubuntu0~0.18.04.1) but it is not going to be installed
                     Depends: xserver-xorg-video-nvidia-440 (= 440.82-0ubuntu0~0.18.04.1) but it is not going to be installed
                     Depends: libnvidia-cfg1-440 (= 440.82-0ubuntu0~0.18.04.1) but it is not going to be installed
                     Depends: libnvidia-ifr1-440 (= 440.82-0ubuntu0~0.18.04.1) but it is not going to be installed
                     Recommends: libnvidia-compute-440:i386 (= 440.82-0ubuntu0~0.18.04.1)
                     Recommends: libnvidia-decode-440:i386 (= 440.82-0ubuntu0~0.18.04.1)
                     Recommends: libnvidia-encode-440:i386 (= 440.82-0ubuntu0~0.18.04.1)
                     Recommends: libnvidia-ifr1-440:i386 (= 440.82-0ubuntu0~0.18.04.1)
                     Recommends: libnvidia-fbc1-440:i386 (= 440.82-0ubuntu0~0.18.04.1)
                     Recommends: libnvidia-gl-440:i386 (= 440.82-0ubuntu0~0.18.04.1)
E: Unable to correct problems, you have held broken packages.

Я не хорошо осведомлен о диспетчере пакетов и был бы очень признателен за некоторую справку!

Спасибо.

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

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  apturl cuda-cudart-10-1 cuda-cudart-dev-10-1 cuda-cufft-10-1 cuda-cufft-dev-10-1 cuda-cuobjdump-10-1 cuda-curand-10-1 cuda-curand-dev-10-1 cuda-cusolver-10-1 cuda-cusolver-dev-10-1
  cuda-cusparse-10-1 cuda-cusparse-dev-10-1 cuda-driver-dev-10-1 cuda-gdb-10-1 cuda-gpu-library-advisor-10-1 cuda-libraries-10-1 cuda-libraries-dev-10-1 cuda-license-10-1 cuda-memcheck-10-1
  cuda-misc-headers-10-1 cuda-npp-10-1 cuda-npp-dev-10-1 cuda-nsight-10-1 cuda-nsight-compute-10-1 cuda-nsight-systems-10-1 cuda-nvdisasm-10-1 cuda-nvgraph-10-1 cuda-nvgraph-dev-10-1
  cuda-nvjpeg-10-1 cuda-nvjpeg-dev-10-1 cuda-nvml-dev-10-1 cuda-nvprof-10-1 cuda-nvprune-10-1 cuda-nvrtc-10-1 cuda-nvrtc-dev-10-1 cuda-nvtx-10-1 cuda-nvvp-10-1 cuda-sanitizer-api-10-1
  cuda-visual-tools-10-1 freeglut3 freeglut3-dev gstreamer1.0-gtk3 i965-va-driver ibverbs-providers libaacs0 libaio1 libavcodec-dev libavcodec57 libavutil-dev libavutil55 libbdplus0 libblas-dev
  libblas3 libbluray2 libcrystalhd3 libcublas-dev libcublas10 libdrm-dev libetonyek-0.1-1 libgl1-mesa-dev libgles1 libglu1-mesa-dev libglvnd-core-dev libglvnd-dev libgnome-autoar-0-0
  libgoogle-perftools4 libgsm1 libibverbs1 libiscsi7 libnl-route-3-200 libnvidia-common-418 libopengl0 libopenjp2-7 libshine3 libsnappy1v5 libsoxr0 libssh-gcrypt-4 libswresample-dev libswresample2
  libtcmalloc-minimal4 libva-drm2 libva-x11-2 libva2 libwpd-0.10-10 libx11-xcb-dev libx264-152 libx265-146 libxcb-dri2-0-dev libxcb-dri3-dev libxcb-glx0-dev libxcb-present-dev libxcb-randr0-dev
  libxcb-render0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxdamage-dev libxshmfence-dev libxvidcore4 libxxf86vm-dev libyaml-cpp0.5v5 libzvbi-common libzvbi0 mesa-common-dev
  mesa-va-drivers mongo-tools nsight-compute-2019.4.0 nsight-systems-2019.3.7 nvidia-modprobe ocl-icd-libopencl1 va-driver-all x11proto-damage-dev x11proto-xf86vidmode-dev
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  libnvidia-common-440 libnvidia-compute-440 libnvidia-fbc1-440 nvidia-utils-440
Recommended packages:
  libnvidia-compute-440:i386 libnvidia-decode-440:i386 libnvidia-encode-440:i386 libnvidia-ifr1-440:i386 libnvidia-fbc1-440:i386 libnvidia-gl-440:i386
The following packages will be REMOVED:
  build-essential compiz-core compiz-plugins-default cuda cuda-10-1 cuda-command-line-tools-10-1 cuda-compiler-10-1 cuda-cupti-10-1 cuda-demo-suite-10-1 cuda-documentation-10-1 cuda-drivers
  cuda-nvcc-10-1 cuda-runtime-10-1 cuda-samples-10-1 cuda-toolkit-10-1 cuda-tools-10-1 eog firefox g++ g++-7 gnome-sudoku google-chrome-stable libabw-0.1-1 libavformat-dev libavformat57
  libboost-program-options1.65.1 libcdr-0.1-1 libchromaprint1 libe-book-0.1-1 libepubgen-0.1-1 libexempi3 libexiv2-14 libfreehand-0.1-1 libgexiv2-2 libgfortran4 libglibmm-2.4-1v5 libgme0
  liblapack-dev liblapack3 liblua5.2-0 libmspub-0.1-1 libnvidia-cfg1-418 libnvidia-compute-418 libnvidia-decode-418 libnvidia-encode-418 libnvidia-fbc1-418 libnvidia-gl-418 libnvidia-ifr1-418
  libopenmpt0 libpagemaker-0.0-0 libpcrecpp0v5 libproxy1-plugin-gsettings libproxy1-plugin-networkmanager libqqwing2v5 libqt4-dbus libqt4-declarative libqt4-network libqt4-script libqt4-sql
  libqt4-xmlpatterns libqt5qml5 libqt5quick5 libqt5sql5 libqt5sql5-sqlite libqtgui4 libquvi7 librados2 libraw16 librbd1 libreoffice-avmedia-backend-gstreamer libreoffice-base-core libreoffice-calc
  libreoffice-draw libreoffice-gnome libreoffice-gtk3 libreoffice-impress libreoffice-math libreoffice-ogltrans libreoffice-writer libsigc++-2.0-0v5 libsignon-extension1 libsignon-plugins-common1
  libsignon-qt5-1 libstdc++-7-dev libvisio-0.1-1 libwpg-0.3-3 libwps-0.4-4 mongodb mongodb-clients mongodb-server mongodb-server-core nautilus nautilus-share nvidia-compute-utils-418
  nvidia-dkms-418 nvidia-driver-418 nvidia-kernel-common-418 nvidia-kernel-source-418 nvidia-utils-418 printer-driver-brlaser printer-driver-splix qdbus qemu-block-extra qemu-utils
  qml-module-qtquick2 qt-at-spi qtchooser qtdeclarative5-qtquick2-plugin shotwell telnet thunderbird thunderbird-gnome-support ubuntu-desktop xserver-xorg-video-nvidia-418
The following NEW packages will be installed:
  libnvidia-cfg1-440 libnvidia-common-440 libnvidia-compute-440 libnvidia-decode-440 libnvidia-encode-440 libnvidia-fbc1-440 libnvidia-gl-440 libnvidia-ifr1-440 nvidia-compute-utils-440
  nvidia-dkms-440 nvidia-driver-440 nvidia-kernel-common-440 nvidia-kernel-source-440 nvidia-utils-440 xserver-xorg-video-nvidia-440
0 upgraded, 15 newly installed, 114 to remove and 0 not upgraded.
1
задан 16 April 2020 в 17:15

1 ответ

Из Ubuntu 18.04 с текущими драйверами Nvidia (435 или 440 в зависимости от ядра, никакие графические драйверы ppa необходимый), описанная проблема вызывается путем установки CUDA deb файл со старым драйвером Nvidia 418 (прямо на имя пакета).
Это удаляет (но не чистки) Nvidia 440, и простое переустанавливает попытку этих 440, перестанет работать с вышеупомянутыми отмеченными ошибками на недостающих зависимостях.

  1. Можно поместить nvida-driver-435 и все недостающие зависимости от одной строки: sudo apt-get install nvidia-driver-440 libnvidia-gl-440 и т.д.), и 440 драйверов будут установлены.
  2. Когда 418 драйверов будут удалены, Вы будете уведомлены обо всем Cuda debs, зависящем от них, и теперь подвергаетесь автоудалению. Это - на самом деле выполнимое состояние, но Вы действительно не хотите случайное, автоудаляют удаление всех Ваших файлов CUDA.

    1. Прежде чем Вы сделаете автоудаление, просто скопируете целый cuda каталог, который был установлен. Используйте копию, которая сохраняет ссылки.

    2. Затем автоудалите, который очищает информацию о пакете, избавление от всех пакетов CUDA, и скопируйте каталог CUDA назад (или просто mv это, если Вы не хотите сохранять его как резервное копирование).

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


Только что пройдя это на 20.04B, я думал с помощью .run файла, мог бы избежать этих проблем и позволить пропускать путаницу драйвера Nvidia.

Существуют другие пакеты CUDA, которые не содержат драйверы Nvidia. Ищите весь список .deb файлов и возможно верхний уровень один (который вытягивает всего другие), будет работать. Существуют такие debs без "Nvidia" на их имена, таким образом, я думал бы, что это должно работать.

Я могу понять, почему Nvidia сделала это, это - то, что они создали и протестировали, и действительно не хотят тратить любое усилие, поддерживающее непротестированные конфигурации, но CUDA является просто приложением, которое может быть установлено пользователем, не касаясь никаких системных файлов.

Я думаю, что более старые версии CUDA просто имели файлы на своем верхнем уровне deb, таким образом, простое извлечение, и ПУТЬ изменения и работы LD_LIBRARY_PATH.

2
ответ дан 25 April 2020 в 10:46

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

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