我正在运行 debian/unstable,为了构建一些包,我必须从实验中升级一些其他包(即 nvidia 驱动程序版本 396 和 cuda,以构建具有 cuda 支持的 ffmpeg)。一切都很好,直到今天我都很高兴,现在我看到想要apt upgrade
将驱动程序包降级到版本 390。
我知道如何设置软件包,hold
但不会再升级,我必须手动检查不稳定分支中的新软件包版本。我知道一点关于易于固定,但在我看来,像是优先考虑某些存储库而不是其他存储库(我不希望自动安装实验中的任何软件包)。
是否有一种配置可以让我保留实验包,直到不稳定的包达到相同或更高的版本?
更新
安装的实验包列表
aptitude search ~S~i~Aexperimental
:
i fonts-anonymous-pro - fixed width font designed for coders
i A libaccinj64-9.2 - NVIDIA ACCINJ Library (64-bit)
i A libcublas9.2 - NVIDIA cuBLAS Library
i A libcuda1 - NVIDIA CUDA Driver Library
i A libcudart9.2 - NVIDIA CUDA Runtime Library
i A libcufft9.2 - NVIDIA cuFFT Library
i A libcufftw9.2 - NVIDIA cuFFTW Library
i A libcuinj64-9.2 - NVIDIA CUINJ Library (64-bit)
i A libcurand9.2 - NVIDIA cuRAND Library
i A libcusolver9.2 - NVIDIA cuSOLVER Library
i A libcusparse9.2 - NVIDIA cuSPARSE Library
i A libegl-nvidia0 - NVIDIA binary EGL library
i A libgl1-nvidia-glvnd-glx - NVIDIA binary OpenGL/GLX library (GLVND variant)
i A libgles-nvidia1 - NVIDIA binary OpenGL|ES 1.x library
i A libgles-nvidia2 - NVIDIA binary OpenGL|ES 2.x library
i A libglx-nvidia0 - NVIDIA binary GLX library
i A libnppc9.2 - NVIDIA Performance Primitives core runtime library
i A libnppial9.2 - NVIDIA Performance Primitives lib for Image Arithmetic and Logic
i A libnppicc9.2 - NVIDIA Performance Primitives lib for Image Color Conversion
i A libnppicom9.2 - NVIDIA Performance Primitives lib for Image Compression
i A libnppidei9.2 - NVIDIA Performance Primitives lib for Image Data Exchange and Initialization
i A libnppif9.2 - NVIDIA Performance Primitives lib for Image Filters
i A libnppig9.2 - NVIDIA Performance Primitives lib for Image Geometry transforms
i A libnppim9.2 - NVIDIA Performance Primitives lib for Image Morphological operations
i A libnppist9.2 - NVIDIA Performance Primitives lib for Image Statistics
i A libnppisu9.2 - NVIDIA Performance Primitives lib for Image Support
i A libnppitc9.2 - NVIDIA Performance Primitives lib for Image Threshold and Compare
i A libnpps9.2 - NVIDIA Performance Primitives for signal processing runtime library
i A libnvblas9.2 - NVBLAS runtime library
i A libnvcuvid1 - NVIDIA CUDA Video Decoder runtime library
i A libnvgraph9.2 - NVIDIA Graph Analytics library (nvGRAPH)
i A libnvidia-cfg1 - NVIDIA binary OpenGL/GLX configuration library
i A libnvidia-compiler - NVIDIA runtime compiler library
i A libnvidia-egl-wayland1 - NVIDIA binary Wayland EGL external platform library
i A libnvidia-eglcore - NVIDIA binary EGL core libraries
i libnvidia-encode1 - NVENC Video Encoding runtime library
i A libnvidia-fatbinaryloader - NVIDIA FAT binary loader
i A libnvidia-glcore - NVIDIA binary OpenGL/GLX core libraries
i A libnvidia-ml1 - NVIDIA Management Library (NVML) runtime library
i A libnvidia-ptxjitcompiler1 - NVIDIA PTX JIT Compiler
i A libnvrtc9.2 - CUDA Runtime Compilation (NVIDIA NVRTC Library)
i A libnvtoolsext1 - NVIDIA Tools Extension Library
i A libnvvm3 - NVIDIA NVVM Library
i A nvidia-alternative - allows the selection of NVIDIA as GLX provider
i nvidia-cuda-dev - NVIDIA CUDA development files
i nvidia-cuda-toolkit - NVIDIA CUDA development toolkit
i A nvidia-driver - NVIDIA metapackage
i A nvidia-driver-bin - NVIDIA driver support binaries
i A nvidia-driver-libs - NVIDIA metapackage (OpenGL/GLX/EGL/GLES libraries)
i A nvidia-egl-icd - NVIDIA EGL installable client driver (ICD)
i A nvidia-egl-wayland-icd - NVIDIA Wayland EGL external platform library (ICD)
i nvidia-kernel-dkms - NVIDIA binary kernel module DKMS source
i A nvidia-kernel-support - NVIDIA binary kernel module support files
i nvidia-opencl-icd - NVIDIA OpenCL installable client driver (ICD)
i A nvidia-profiler - NVIDIA Profiler for CUDA and OpenCL
i A nvidia-smi - NVIDIA System Management Interface
i A nvidia-vdpau-driver - Video Decode and Presentation API for Unix - NVIDIA driver
i A nvidia-visual-profiler - NVIDIA Visual Profiler for CUDA and OpenCL
i A xserver-xorg-video-nvidia - NVIDIA binary Xorg driver
随版本一起安装的实验包列表
dpkg -l $(aptitude search ~S~i~Aexperimental |sed 's/^...//'|awk '{print $1}')
:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-===============================-=============-============-============================================================================
ii fonts-anonymous-pro 1.002+clean-2 all fixed width font designed for coders
ii libaccinj64-9.2:amd64 9.2.148-1 amd64 NVIDIA ACCINJ Library (64-bit)
ii libcublas9.2:amd64 9.2.148-1 amd64 NVIDIA cuBLAS Library
ii libcuda1:amd64 396.54-2 amd64 NVIDIA CUDA Driver Library
ii libcudart9.2:amd64 9.2.148-1 amd64 NVIDIA CUDA Runtime Library
ii libcufft9.2:amd64 9.2.148-1 amd64 NVIDIA cuFFT Library
ii libcufftw9.2:amd64 9.2.148-1 amd64 NVIDIA cuFFTW Library
ii libcuinj64-9.2:amd64 9.2.148-1 amd64 NVIDIA CUINJ Library (64-bit)
ii libcurand9.2:amd64 9.2.148-1 amd64 NVIDIA cuRAND Library
ii libcusolver9.2:amd64 9.2.148-1 amd64 NVIDIA cuSOLVER Library
ii libcusparse9.2:amd64 9.2.148-1 amd64 NVIDIA cuSPARSE Library
ii libegl-nvidia0:amd64 396.54-2 amd64 NVIDIA binary EGL library
ii libgl1-nvidia-glvnd-glx:amd64 396.54-2 amd64 NVIDIA binary OpenGL/GLX library (GLVND variant)
ii libgles-nvidia1:amd64 396.54-2 amd64 NVIDIA binary OpenGL|ES 1.x library
ii libgles-nvidia2:amd64 396.54-2 amd64 NVIDIA binary OpenGL|ES 2.x library
ii libglx-nvidia0:amd64 396.54-2 amd64 NVIDIA binary GLX library
ii libnppc9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives core runtime library
ii libnppial9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Arithmetic and Logic
ii libnppicc9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Color Conversion
ii libnppicom9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Compression
ii libnppidei9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Data Exchange and Initialization
ii libnppif9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Filters
ii libnppig9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Geometry transforms
ii libnppim9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Morphological operations
ii libnppist9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Statistics
ii libnppisu9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Support
ii libnppitc9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives lib for Image Threshold and Compare
ii libnpps9.2:amd64 9.2.148-1 amd64 NVIDIA Performance Primitives for signal processing runtime library
ii libnvblas9.2:amd64 9.2.148-1 amd64 NVBLAS runtime library
ii libnvcuvid1:amd64 396.54-2 amd64 NVIDIA CUDA Video Decoder runtime library
ii libnvgraph9.2:amd64 9.2.148-1 amd64 NVIDIA Graph Analytics library (nvGRAPH)
ii libnvidia-cfg1:amd64 396.54-2 amd64 NVIDIA binary OpenGL/GLX configuration library
ii libnvidia-compiler:amd64 396.54-2 amd64 NVIDIA runtime compiler library
ii libnvidia-egl-wayland1:amd64 396.54-2 amd64 NVIDIA binary Wayland EGL external platform library
ii libnvidia-eglcore:amd64 396.54-2 amd64 NVIDIA binary EGL core libraries
ii libnvidia-encode1:amd64 396.54-2 amd64 NVENC Video Encoding runtime library
ii libnvidia-fatbinaryloader:amd64 396.54-2 amd64 NVIDIA FAT binary loader
ii libnvidia-glcore:amd64 396.54-2 amd64 NVIDIA binary OpenGL/GLX core libraries
ii libnvidia-ml1:amd64 396.54-2 amd64 NVIDIA Management Library (NVML) runtime library
ii libnvidia-ptxjitcompiler1:amd64 396.54-2 amd64 NVIDIA PTX JIT Compiler
ii libnvrtc9.2:amd64 9.2.148-1 amd64 CUDA Runtime Compilation (NVIDIA NVRTC Library)
ii libnvtoolsext1:amd64 9.2.148-1 amd64 NVIDIA Tools Extension Library
ii libnvvm3:amd64 9.2.148-1 amd64 NVIDIA NVVM Library
ii nvidia-alternative 396.54-2 amd64 allows the selection of NVIDIA as GLX provider
ii nvidia-cuda-dev 9.2.148-1 amd64 NVIDIA CUDA development files
ii nvidia-cuda-toolkit 9.2.148-1 amd64 NVIDIA CUDA development toolkit
ii nvidia-driver 396.54-2 amd64 NVIDIA metapackage
ii nvidia-driver-bin 396.54-2 amd64 NVIDIA driver support binaries
ii nvidia-driver-libs:amd64 396.54-2 amd64 NVIDIA metapackage (OpenGL/GLX/EGL/GLES libraries)
ii nvidia-egl-icd:amd64 396.54-2 amd64 NVIDIA EGL installable client driver (ICD)
ii nvidia-egl-wayland-icd:amd64 396.54-2 amd64 NVIDIA Wayland EGL external platform library (ICD)
ii nvidia-kernel-dkms 396.54-2 amd64 NVIDIA binary kernel module DKMS source
ii nvidia-kernel-support 396.54-2 amd64 NVIDIA binary kernel module support files
ii nvidia-opencl-icd:amd64 396.54-2 amd64 NVIDIA OpenCL installable client driver (ICD)
ii nvidia-profiler 9.2.148-1 amd64 NVIDIA Profiler for CUDA and OpenCL
ii nvidia-smi 396.54-2 amd64 NVIDIA System Management Interface
ii nvidia-vdpau-driver:amd64 396.54-2 amd64 Video Decode and Presentation API for Unix - NVIDIA driver
ii nvidia-visual-profiler 9.2.148-1 amd64 NVIDIA Visual Profiler for CUDA and OpenCL
ii xserver-xorg-video-nvidia 396.54-2 amd64 NVIDIA binary Xorg driver
升级输出(我apt-get
也尝试过,由于某种原因不同,更长,也想升级boost库)
apt -s upgrade
:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages were automatically installed and are no longer required:
libdns-export1102 libisc-export169
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
libdns-export1104 libisc-export1100
The following packages have been kept back:
icu-devtools libboost-atomic1.62-dev libboost-atomic1.62.0 libboost-chrono-dev libboost-chrono1.62-dev libboost-chrono1.62.0
libboost-context1.62-dev libboost-context1.62.0 libboost-coroutine1.62-dev libboost-coroutine1.62.0 libboost-date-time1.62-dev
libboost-date-time1.62.0 libboost-dev libboost-exception1.62-dev libboost-fiber1.62-dev libboost-fiber1.62.0 libboost-filesystem-dev
libboost-filesystem1.62-dev libboost-filesystem1.62.0 libboost-graph-parallel1.62-dev libboost-graph-parallel1.62.0 libboost-locale-dev
libboost-locale1.62-dev libboost-locale1.62.0 libboost-math1.62-dev libboost-math1.62.0 libboost-mpi1.62-dev libboost-mpi1.62.0
libboost-program-options1.62-dev libboost-program-options1.62.0 libboost-python1.62-dev libboost-python1.62.0 libboost-random1.62-dev
libboost-random1.62.0 libboost-regex1.62-dev libboost-regex1.62.0 libboost-serialization1.62-dev libboost-serialization1.62.0
libboost-signals1.62-dev libboost-signals1.62.0 libboost-system-dev libboost-system1.62-dev libboost-system1.62.0 libboost-test1.62-dev
libboost-test1.62.0 libboost-thread-dev libboost-thread1.62-dev libboost-thread1.62.0 libboost-timer1.62-dev libboost-timer1.62.0
libboost-type-erasure1.62-dev libboost-type-erasure1.62.0 libboost-wave1.62-dev libboost-wave1.62.0 libboost1.62-dev libicu-dev libicu63
libicu63:i386 liblxc1 libsane-common lldb lxc python-qscintilla2 python3-lxc
The following packages will be upgraded:
btrfs-progs check fonts-wine gir1.2-gtk-3.0 git git-gui git-man gitk gtk-update-icon-cache isc-dhcp-client isc-dhcp-common itstool libarmadillo9
libgtk-3-0 libgtk-3-bin libgtk-3-common libgtk-3-dev libqbscore1.12 libqbsqtprofilesetup1.12 libsqlite3-0 libsqlite3-dev libsqlite3-tcl
libwine:i386 nvidia-cuda-mps nvidia-egl-common nvidia-kernel-source nvidia-legacy-check nvidia-opencl-common opencl-clhpp-headers python-six
python3-six qbs-common sqlite3 wine wine32:i386
35 upgraded, 2 newly installed, 0 to remove and 64 not upgraded.
Inst nvidia-legacy-check [390.87-3] (390.87-4 Debian:unstable [amd64])
Inst libisc-export1100 (1:9.11.5+dfsg-1 Debian:unstable [amd64])
Inst libdns-export1104 (1:9.11.5+dfsg-1 Debian:unstable [amd64])
Inst isc-dhcp-client [4.3.5-4+b1] (4.4.1-2 Debian:unstable [amd64])
Inst isc-dhcp-common [4.3.5-4+b1] (4.4.1-2 Debian:unstable [amd64])
Inst btrfs-progs [4.17-1+b1] (4.19.1-1 Debian:unstable [amd64])
Inst check [0.10.0-3+b3] (0.12.0-0.1 Debian:unstable [amd64])
Inst fonts-wine [3.0.4-1] (4.0~rc1-1 Debian:unstable [all])
Inst libgtk-3-common [3.24.1-2] (3.24.1-3 Debian:unstable [all])
Inst libgtk-3-dev [3.24.1-2] (3.24.1-3 Debian:unstable [amd64]) []
Inst libgtk-3-0 [3.24.1-2] (3.24.1-3 Debian:unstable [amd64]) []
Inst gir1.2-gtk-3.0 [3.24.1-2] (3.24.1-3 Debian:unstable [amd64])
Inst git-gui [1:2.20.0~rc2-1] (1:2.20.0-1 Debian:unstable [all]) []
Inst gitk [1:2.20.0~rc2-1] (1:2.20.0-1 Debian:unstable [all]) []
Inst git [1:2.20.0~rc2-1] (1:2.20.0-1 Debian:unstable [amd64]) []
Inst git-man [1:2.20.0~rc2-1] (1:2.20.0-1 Debian:unstable [all])
Inst gtk-update-icon-cache [3.24.1-2] (3.24.1-3 Debian:unstable [amd64])
Inst itstool [2.0.5-1] (2.0.5-2 Debian:unstable [all])
Inst libarmadillo9 [1:9.100.6+dfsg-1] (1:9.200.6+dfsg-1 Debian:unstable [amd64])
Inst libgtk-3-bin [3.24.1-2] (3.24.1-3 Debian:unstable [amd64])
Inst libqbscore1.12 [1.12.1+dfsg-2] (1.12.2+dfsg-1 Debian:unstable [amd64]) []
Inst qbs-common [1.12.1+dfsg-2] (1.12.2+dfsg-1 Debian:unstable [all])
Inst libqbsqtprofilesetup1.12 [1.12.1+dfsg-2] (1.12.2+dfsg-1 Debian:unstable [amd64])
Inst libsqlite3-dev [3.26.0-2] (3.26.0-3 Debian:unstable [amd64]) []
Inst sqlite3 [3.26.0-2] (3.26.0-3 Debian:unstable [amd64]) []
Inst libsqlite3-0 [3.26.0-2] (3.26.0-3 Debian:unstable [amd64])
Inst libsqlite3-tcl [3.26.0-2] (3.26.0-3 Debian:unstable [amd64])
Inst wine [3.0.4-1] (4.0~rc1-1 Debian:unstable [all]) []
Inst wine32:i386 [3.0.4-1] (4.0~rc1-1 Debian:unstable [i386]) []
Inst libwine:i386 [3.0.4-1] (4.0~rc1-1 Debian:unstable [i386])
Inst nvidia-cuda-mps [390.87-3] (390.87-4 Debian:unstable [amd64])
Inst nvidia-egl-common [390.87-3] (390.87-4 Debian:unstable [amd64])
Inst nvidia-kernel-source [390.87-3] (390.87-4 Debian:unstable [amd64])
Inst nvidia-opencl-common [390.87-3] (390.87-4 Debian:unstable [amd64])
Inst opencl-clhpp-headers [2.0.10+git12-g5dd8bb9-1] (2.0.10+git23-gf0b7045-1 Debian:unstable [all])
Inst python-six [1.11.0-2] (1.12.0-1 Debian:unstable [all])
Inst python3-six [1.11.0-2] (1.12.0-1 Debian:unstable [all])
Conf nvidia-legacy-check (390.87-4 Debian:unstable [amd64])
Conf libisc-export1100 (1:9.11.5+dfsg-1 Debian:unstable [amd64])
Conf libdns-export1104 (1:9.11.5+dfsg-1 Debian:unstable [amd64])
Conf isc-dhcp-client (4.4.1-2 Debian:unstable [amd64])
Conf isc-dhcp-common (4.4.1-2 Debian:unstable [amd64])
Conf btrfs-progs (4.19.1-1 Debian:unstable [amd64])
Conf check (0.12.0-0.1 Debian:unstable [amd64])
Conf fonts-wine (4.0~rc1-1 Debian:unstable [all])
Conf libgtk-3-common (3.24.1-3 Debian:unstable [all])
Conf libgtk-3-dev (3.24.1-3 Debian:unstable [amd64])
Conf libgtk-3-0 (3.24.1-3 Debian:unstable [amd64])
Conf gir1.2-gtk-3.0 (3.24.1-3 Debian:unstable [amd64])
Conf git-gui (1:2.20.0-1 Debian:unstable [all])
Conf gitk (1:2.20.0-1 Debian:unstable [all])
Conf git (1:2.20.0-1 Debian:unstable [amd64])
Conf git-man (1:2.20.0-1 Debian:unstable [all])
Conf gtk-update-icon-cache (3.24.1-3 Debian:unstable [amd64])
Conf itstool (2.0.5-2 Debian:unstable [all])
Conf libarmadillo9 (1:9.200.6+dfsg-1 Debian:unstable [amd64])
Conf libgtk-3-bin (3.24.1-3 Debian:unstable [amd64])
Conf libqbscore1.12 (1.12.2+dfsg-1 Debian:unstable [amd64])
Conf qbs-common (1.12.2+dfsg-1 Debian:unstable [all])
Conf libqbsqtprofilesetup1.12 (1.12.2+dfsg-1 Debian:unstable [amd64])
Conf libsqlite3-dev (3.26.0-3 Debian:unstable [amd64])
Conf sqlite3 (3.26.0-3 Debian:unstable [amd64])
Conf libsqlite3-0 (3.26.0-3 Debian:unstable [amd64])
Conf libsqlite3-tcl (3.26.0-3 Debian:unstable [amd64])
Conf wine (4.0~rc1-1 Debian:unstable [all])
Conf wine32:i386 (4.0~rc1-1 Debian:unstable [i386])
Conf libwine:i386 (4.0~rc1-1 Debian:unstable [i386])
Conf nvidia-cuda-mps (390.87-4 Debian:unstable [amd64])
Conf nvidia-egl-common (390.87-4 Debian:unstable [amd64])
Conf nvidia-kernel-source (390.87-4 Debian:unstable [amd64])
Conf nvidia-opencl-common (390.87-4 Debian:unstable [amd64])
Conf opencl-clhpp-headers (2.0.10+git23-gf0b7045-1 Debian:unstable [all])
Conf python-six (1.12.0-1 Debian:unstable [all])
Conf python3-six (1.12.0-1 Debian:unstable [all])
答案1
默认apt
设置提供了您所追求的行为:如果明确请求,可以从实验性安装软件包,并且一旦安装,它们就会隐式保留 - 它们不会自动升级(即使将更新的版本上传到实验性),直到不稳定赶上。他们也不会被降级。
apt
在您的情况下想要接触的NVIDIA 软件包是nvidia-cuda-mps
、nvidia-egl-common
、nvidia-kernel-source
和nvidia-opencl-common
,您都没有通过实验安装这些软件包(它们不会出现在您通过实验安装的软件包列表中)。由于最近更新了unstable,apt
所以想升级它们;这不是实验性的降级。
apt
在这里没有做任何错误,但您应该从实验中手动安装受影响的软件包,以确保一切都一致。