首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用舵将所有节点包升级

如何用舵将所有节点包升级
EN

Server Fault用户
提问于 2017-05-07 18:38:41
回答 2查看 1K关注 0票数 2

我正在和鲁德尔(http://www.rudder-project.org/site/)玩,但似乎看不到我想要什么的选择。

我希望“节点”上的所有包都检查更新,然后升级,相当于Debian框上的“apt-get更新&& apt-get升级”。

我看到了有关包管理的指令,但它们似乎都用于更新/安装单独命名的包,而不是更新每个节点上当前的所有包。

做我要做的事最好的方法是什么?

EN

回答 2

Server Fault用户

回答已采纳

发布于 2017-05-09 07:52:38

我认为实现这一目标的最好方法是使用技术编辑器创建一种技术,并使用"/usr/bin/apt-get update && /usr/bin/apt-get -y“创建”命令执行结果“,其中0为成功,1为修复。

请注意,这将在每次运行时执行,这可能不是您想要的,但您可以使用条件只在夜间或在特定的日期范围内运行。

您还可以查看“作业计划程序”指令,或者使用“调度”方法创建一种技术,在该方法中可以定义要执行的内容,如cron作业.

票数 3
EN

Server Fault用户

发布于 2018-12-20 00:19:30

实际上,使用apt-get install -y并不会禁止所有提示。如果你(或鲁德尔代表你!)修改包的任何控制文件,apt-get将询问您是否希望保留您的配置文件,或者用包维护人员版本替换它。

许多人通过使用这样的方法来处理这个问题:

DEBIAN_FRONTEND=noninteractive DEBIAN_PRIORITY=critical apt-get dist-upgrade \ -q -y -o "Dpkg::Options::=--force-confdef" -o "Dpkg::Options::=--force-confold"

重要的是要注意,如果不进行调查,您就无法安全地完成这一任务。上面的调用回答“否”,这意味着您必须调查包将进行的更改,并确保舵将更改控制文件,以包括必要的更改。

例如,有时在包的控制文件中进行关键的安全修复(/etc/ImageMagick-6/policy.xml .xml就是一个例子)。如果您回答“否”或使用--force-confold,则包更新将不会保护您免受该漏洞的攻击,但是包版本将建议实现修补程序(毕竟,您正在使用该修补程序运行包版本)。

实现这一目标的唯一方法是安装在验收服务器上使用的所有包,比如在生产前一周对其进行更新,并收集和检查已经创建的所有.dpkg-new文件。是的,这是大量的工作,是的,不是很多公司这样做,但如果你自动化更新,你最好确保你没有纸上重要的配置变化。

我在玩弄如何用舵来帮助我做好这件事的想法,但还没有把铁锹插在地上.

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/848743

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档