1

我尝试通过knife bootstrap IP. 它似乎工作正常,直到本机扩展(mkmf)需要构建要素。Knife 用来登录的用户是 root,所以 Knife 应该可以安装 build-essentials。

任何人都知道这是否可以自动化,或者我是否必须登录到我想要引导并安装这些软件包的每台机器?

谢谢,
罗宾

4

1 回答 1

2

你可以做几件事。

  1. 将 build-essentials 放在您的操作系统安装或基础映像中,以便在尝试安装任何编译本机扩展的任何东西之前就在那里(如果安装 Chef,这可能是 JSON RubyGem)。

  2. 将 build-essentials 包添加到引导脚本中安装的列表中。不过,默认的引导模板ubuntu10.04-gems已经这样做了。

  3. 使用 Opscode全栈安装程序。Opscode 为运行 Chef 客户端(或单独)所需的 libc 之上的所有内容构建预编译的本机包。该页面包含有关如何使用小脚本检测平台并从 S3 存储桶下载正确包的说明。例如,如果您使用的是 Ubuntu 10.04,它将检测平台、版本和架构,然后检索正确的 .deb 包。这可以通过knife bootstrap,使用这个模板来完成(它将在下一个发布的 Chef 版本中。

于 2012-01-02T17:03:13.843 回答