Jim*_*mmy 4 ubuntu chef chef-solo vagrant
我正在使用 Chef Solo 为 Ubuntu 12.04 提供基于 Opscode 的“Bento”框的 Vagrant VM。当它完成配置并且我第一次通过 SSH 登录时,MOTD 告诉我有软件包和安全更新。然后我sudo apt-get upgrade
手动运行,这会删除后续登录时的消息。有没有办法用 Chef 自动化这一步?“apt”食谱似乎没有处理这个问题。我所有的谷歌搜索只找到关于apt-get update
但不是apt-get upgrade
。我可以在我的 Chef 配方中执行 apt-get 命令,但是在升级过程中,粉红色屏幕上有一个伪 GUI,我必须在其中选择要安装的驱动器(我认为这称为 GRUB,我是新手到 Ubuntu),我不确定如何使用 Chef 自动化这部分。
我刚刚在厨师 + 流浪者身上遇到了这个确切的问题,发现以下对我有用:
sudo dpkg-reconfigure -plow grub-pc
Run Code Online (Sandbox Code Playgroud)
这允许您重新配置 grub-pc 并选择要安装 grub 的设备(如果有)。在此处将设备设置为默认值应该允许包含 grub 的升级不提示设备选择。此时,您可以创建一个新的 vagrant 框并将其用作默认值。
或者
要在没有提示的情况下运行 apt-get upgrade/dist-upgrade,您可以使用:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" dist-upgrade
Run Code Online (Sandbox Code Playgroud)
DEBIAN_FRONTEND=noninteractive
对任何提示使用默认答案。Dpkg::Options::="--force-confdef"
确保 dpkg 仅覆盖您尚未修改的配置文件Dpkg::Options::="--force-confold"
确保当前的配置文件不被覆盖。使用 .dpkg-dist 后缀创建新的配置文件。 归档时间: |
|
查看次数: |
4338 次 |
最近记录: |