向 EC2 Ubuntu 实例发送命令

向 EC2 Ubuntu 实例发送命令

我使用 AWS SDK 自动化创建了一个实例,并希望在第一次启动时由该框执行一些 shell 脚本。但仅限于某些条件,因此我无法将这些脚本放在 crontab 或 init 脚本中。

对此有什么想法或经验吗?除了https://help.ubuntu.com/community/CloudInit

谢谢

答案1

创建一个从 /etc/init.d 运行的 shell 脚本。第一次运行后,创建一个文件,例如 /etc/i_run_my_script,该脚本应该查看该文件是否存在并据此运行。

从文档中查看用户数据脚本 - 以及查看 Upstart Job - 基本上你可以将它们组合起来。你在所有实例中包含寻找某些文件的 upstart 作业 - 然后从你的应用程序中根据需要创建文件 - 每个具有该文件的实例都会执行 upstart 作业(init.d),其余的则不会,因为该文件不存在。

相关内容