ubuntu ec2-instance 上的 cloud-init 每次启动脚本

Posted

技术标签:

【中文标题】ubuntu ec2-instance 上的 cloud-init 每次启动脚本【英文标题】:cloud-init per-boot script on ubuntu ec2-instance 【发布时间】:2012-04-26 18:05:37 【问题描述】:

我正在尝试在 ubuntu 11.10 ec2 实例上使用 cloud-init 启动脚本。

我将脚本script.sh 放入文件夹/var/lib/cloud/scripts/per-bootscript.sh的内容很简单:

#/!/bin/sh
回声“测试”

重启后出现以下错误:

run-parts: 执行失败 /var/lib/cloud/scripts/per-boot/script.sh: 执行格式错误
运行部分:/var/lib/cloud/scripts/per-boot/script.sh 退出并返回代码 1
2012-04-14 19:10:52,642 - cc_scripts_per_boot.py [警告]:无法在 /var/lib/cloud/scripts/per-boot 中运行部件
2012-04-14 19:10:52,648 - __init__.py [警告]:回溯(最近一次通话最后):
  文件“/usr/lib/python2.7/dist-packages/cloudinit/CloudConfig/__init__.py”,第 108 行,在 run_cc_modules
    cc.handle(名称,run_args,频率=频率)
  文件“/usr/lib/python2.7/dist-packages/cloudinit/CloudConfig/__init__.py”,第 72 行,在句柄中
    [名称,self.cfg,self.cloud,cloudinit.log,args])
  文件“/usr/lib/python2.7/dist-packages/cloudinit/__init__.py”,第 309 行,在 sem_and_run
    函数(*参数)
  文件“/usr/lib/python2.7/dist-packages/cloudinit/CloudConfig/cc_scripts_per_boot.py”,第 27 行,在句柄中
    util.runparts(runparts_path)
  运行部分中的文件“/usr/lib/python2.7/dist-packages/cloudinit/util.py”,第 140 行
    raise subprocess.CalledProcessError(sp.returncode,cmd)
CalledProcessError: Command '['run-parts', '--regex', '.*', '/var/lib/cloud/scripts/per-boot']' 返回非零退出状态 1

2012-04-14 19:10:52,648 - __init__.py [错误]:每次启动脚本的配置处理,无,[] 失败

cloud-init 启动于 2012 年 4 月 14 日星期六 19:10:52 +0000 完成。上升 3.70 秒
2012-04-14 19:10:52,672 - cloud-init-cfg [错误]:运行 cloud_config [final] 时出错:['scripts-per-boot']
运行 cloud_config [final] 时出错:['scripts-per-boot']

有什么解决办法吗?

【问题讨论】:

【参考方案1】:

我相信您的问题与#/!/bin/sh 不是有效的输入类型有关。需要把#后面的/去掉。

#!/bin/sh 
echo "test"

如果您在此之后仍然看到问题,请告诉我。

【讨论】:

谢谢,这是典型的简单而愚蠢的错误之一:D

以上是关于ubuntu ec2-instance 上的 cloud-init 每次启动脚本的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的 ec2-instance 被 elastic-beanstalk 终止?

AWS EC2-Instance 备份/终止/启动的最佳实践是啥

关于开-关机以及重启-EC2-instance-所需要的最小的权限-Policies写法

如何在ubuntu上将open cl安装到vega 8移动显卡?

Windows 7 64 位 Visual Studio 2013 上的本机 cl.exe

SAP 云平台上的 ABAP 编程环境里如何消费第三方服务