安装特定软件包版本

安装特定软件包版本

我需要为 安装一个tofrodos 1.17.3i386我正在运行Ubuntu 16.04.2,我知道如果我运行sudo apt-get install tofrodos:i386它将安装版本1.17.3。但是这将在一个脚本中,该脚本可能在以后会用到,我需要修复版本1.17.3和 32 位架构i386。有人知道怎么做吗?

我已经尝试过了

sudo apt-get install tofrodos=1.17.3:i386
sudo apt-get install tofrodos:i386=1.17.3

但都没有起作用。

任何帮助都将受到赞赏。

答案1

没有人可以保证存储库中的软件包是固定版本。

可以保留已安装的软件包以防止升级,但apt始终会从存储库安装可用版本。没有人会保留旧版本。

实际上可能有两个版本:初始版本和“升级”版本。

但是软件包不太可能升级到 LTS 存储库中的某个新主要版本。可能会发布一些小修复,但我认为这不会影响功能。

sudo apt-get install tofrodos:i386=version

1.17.3是正确的命令。但是存储库中没有版本。

正确的版本是1.7.13+ds-2ubuntu1

pilot6@Pilot6:~$apt-cache policy tofrodos
tofrodos:
  Installed: (none)
  Candidate: 1.7.13+ds-2ubuntu1
  Version table:
     1.7.13+ds-2ubuntu1 500
        500 http://ru.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages

所以

sudo apt-get install tofrodos:i386=1.7.13+ds-2ubuntu1

应该管用。

这是 的“初始”版本。即使在命令xenial中升级软件包也会安装此版本。xenial-updates

答案2

如果软件包在存储库中可用,则可以使用以下命令安装特定体系结构的软件包的特定版本:

sudo apt-get install package:i386=version

要查看您想要的版本是否可用,请使用:

apt-cache madison package-name

或者

apt-cache policy package-name

您的情况的另一种选择是:

apt list -a i386 tofrodos

而且看起来您想要的软件包版本并不存在于存储库中。

相关内容