我想设置一个新的虚拟机,并安装一些指定的软件包(名称和版本),这些软件包是提供的。
例如,apache2的版本为
解决方案必须适用于多个(n个)"设置"。另一个虚拟机可能需要较旧版本的apache2。
目前我知道一些可以安装确切软件包的方法,但扩展性不太好:
例如,apache2的版本为
2.2.20-1ubuntu1
,并且带有所有依赖项。即使服务器上有新版本的此软件包,也应该安装这个版本。解决方案必须适用于多个(n个)"设置"。另一个虚拟机可能需要较旧版本的apache2。
目前我知道一些可以安装确切软件包的方法,但扩展性不太好:
- 手动将所有所需的
*.deb
复制到每个虚拟机,并输入:dpkg -i
... -> 可能有效,但容易出错(手动脚本等)。 - 为每个设置创建和使用一个新的Ubuntu存储库 -> 不可行,因为我需要n个存储库。
- 设置一次机器,然后复制虚拟机/创建快照 -> 不可行,因为我需要存储n个虚拟机。
=2.2\*
选项作为使用通配符来选择任何可用子版本的方法。这正是我想知道但不知道如何问的 :) - ᴍᴇʜᴏᴠsudo
在使用apt-cache
命令时不是必需的;另外,作为附注,apt-cache policy <pkg>
也是一种类似的替代方法。 - creanion