我想问一下是否有办法在已启动的实例上重新执行用户数据。 我想重新启动服务并编辑〜。/ ssh / autorized_keys。
我在https://aws.amazon.com/premiumsupport/knowledge-center/execute-user-data-ec2/找到了相关信息 但是来自控制台的云日志没有显示任何变化。
答案 0 :(得分:1)
AWS仅在首次启动时运行用户数据。您需要做以下两件事:
write-mime-multipart
中使用命令cloud-utils
来创建mime-multipart文件。如果您需要更多详细信息,请参阅Cloud-init。scripts-user
运行always
。在/etc/cloud/cloud.cfg
中,请参阅Always run cloud-init scripts以查看选项因此,您需要从您提供的链接中复制所有脚本,并将shell脚本部分替换为您的脚本。 https://aws.amazon.com/premiumsupport/knowledge-center/execute-user-data-ec2/
Content-Type: multipart/mixed; boundary="===============5940869395195845375=="
MIME-Version: 1.0
--===============5940869395195845375==
Content-Type: text/cloud-config; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="cloud-config.txt"
#cloud-config
cloud_final_modules:
- [scripts-user, always]
--===============5940869395195845375==
Content-Type: text/x-shellscript; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="userdata.txt"
#!/bin/bash
/bin/echo "Hello World." >> /tmp/abcde
--===============5940869395195845375==