清除 apt-cache 策略版本表以防止安装较新版本

清除 apt-cache 策略版本表以防止安装较新版本

我正在尝试安装一个特定的软件包,确切地说是 Nvidia 的 CUDA。我按照他们的开发人员指南中的步骤进行操作,我的问题并不是专门针对 CUDA。当我尝试使用 APT 安装它时,通常它会尝试安装最新版本,即 11.6。不过,我遵循的指南适用于 11.4 版本,它与我当前的内核版本兼容。我deb手动下载了 11.4 版本的软件包,使用 进行安装dpkg,并sudo apt update在尝试之前执行了sudo apt install cuda.我不确定为什么它尝试安装版本 11.6,而deb我安装的软件包适用于 11.4,直到我看到以下输出apt-cache policy cuda

cuda:
  Installed: (none)
  Candidate: 11.6.2-1
  Version table:
     11.6.2-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.6.1-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.6.0-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.5.2-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages

     11.5.1-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.5.0-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages

     11.4.4-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
        600 file:/var/cuda-repo-ubuntu2004-11-4-local  Packages
     11.4.3-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.4.2-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.4.1-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.4.0-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.3.1-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.3.0-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.2.2-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.2.1-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.2.0-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.1.1-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.1.0-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.0.3-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages
     11.0.2-1 600
        600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64  Packages

我安装的版本确实显示在var目录中,但版本表中有很多其他版本。我知道我可以安装我想要使用的特定版本sudo apt insatll cuda=11.4.4-1,但我担心如果其他人进行升级,它会在我共享计算机时自动升级破坏我的安装。

我的问题是:sudo apt upgrade安装我想要的特定CUDA版本(版本11.4)后运行会将其更新到版本表中的最新版本(版本11.6)吗?如果是,我该如何防止这种情况发生?有什么方法可以清除版本表以删除上面显示的链接?我想当我尝试为 CUDA 安装网络时我可能错误地添加了它们,但我不确定。

答案1

握住包裹:

sudo apt-mark hold cuda

男人 apt 标记:

   hold
       hold is used to mark a package as held back, which will prevent the package from being
       automatically installed, upgraded or removed.

相关内容