使用 apt-get upgrade 指定更新吗?

使用 apt-get upgrade 指定更新吗?

在 Ubuntu 中,更新系统最方便的方法是调用 apt-get update,然后调用 apt-get upgrade。但是,在生产环境中,通常的做法是先在离线系统上测试更新,然后应用在生产系统上测试过的相同更新。我想知道 apt-get upgrade 是否可以做到这一点 - 有没有办法更详细地指定升级,例如通过指定执行升级的日期?

答案1

测试升级后,您可以手动升级已经在生产服务器上测试过的特定软件包:

apt-get install somepackage=someversion

答案2

如果您想指定执行升级的日期,您应该用 cron 来指定。

如果您要进行全面升级,请将其与所需日期一起放入您的 crontab 中:

/usr/sbin/apt-get 更新 --yes

如果您只想进行特定的更新,那么我建议使用上面@psusi 的格式,并使用--yes标志将每个包再次放入列表中。

--yes 标志只是对出现的任何问题回答“是”,这样安装就不会挂起等待有人按下键。当然,只有在开发人员上对升级进行全面测试后,自动回答“是”才是明智的。

答案3

这仅仅是一个开始,但你至少可以看到即将发生什么改变……

 apt-get --simulate upgrade

因此,在 dev/qa 系统上运行它并保存输出;它具有完整的软件包名称及其版本。然后进行实际升级。然后在生产系统上,您可以使用 --simulate。然后,您至少会知道升级是否与在 dev/qa 上进行的升级相同。

如果您在开始操作生产机器时发现实际上有更新的软件包,那么您仍然需要手动逐个软件包地进行升级。

相关内容