克隆后如何安排系统的初始配置?

克隆后如何安排系统的初始配置?

我想使用克隆来设置大量服务器。应用初始图像后,我想运行配置脚本。克隆将由硬件供应商通过硬盘复制来完成。

脚步:

  1. 硬件供应商构建新服务器
  2. 硬件附带具有初始映像的硬盘驱动器
  3. 服务器设置在最终位置
  4. 服务器启动。
  5. 服务器运行初始配置脚本。
  6. 服务器重新启动。

满足以下要求的步骤5和6的实施方法是什么?

  • Ubuntu 12.04 LTS
  • 当计算机打开时,脚本应该启动并运行,无需用户交互。
  • 脚本应该在所有守护进程启动后运行。
  • 脚本应在控制台上输出状态。
  • 脚本应允许用户在错误情况下输入。

答案1

我没有尝试过这种方法,但听起来像是您正在寻找的。该工具称为Ubuntu安装后

它可以作为安装后的一部分下载和/或随后部署。它还使用一个配置文件,其中包含已支持的选项,也可以在启动时下载该文件。您可以在该工具的主页上阅读更多内容,此处的答案有点太多了。

调用

它们显示了您可以用来调用它的 2 种方法:

从网络下载.cfg文件

$ sudo ./ubuntu-12.04-postinstall.py -c https://raw.github.com/nicolargo/ubuntupostinstall/master/ubuntu-12.04-gnomeshel

使用本地文件

$ sudo ./ubuntu-12.04-postinstall.py -c mycfg.cfg

前/后行动

这些部分允许您在发生任何事情之前(预操作)和/或在其他所有事情完成之后(后操作)运行自定义脚本。

包和存储库

您可以安装或删除软件包,或者使用它来添加其他 PPA 以访问第 3 方 APT 存储库。

记录

鉴于它是一个 Python 脚本,您可以通过命令运行该脚本的输出tee,并将输出定向到文件和控制台。

答案2

/etc/rc.local 文件应该保证是最后执行的 initscript,尽管我不确定 ubuntu 上是否如此。您可以从 rc.local 调用您的配置脚本,然后mv在成功完成后调用该文件,这样它就不会在重新启动(或类似选项)时运行。

对于 systemd 的控制台输出,我必须创建一个文件,明确告诉服务记录到控制台和系统日志。 IIRC,ubuntu 使用 upstart,也许这会有所帮助:https://askubuntu.com/questions/115034/debugging-console-output-and-upstart-scripts

相关内容