Я понимаю, что вы пытаетесь достичь, передавая два набора команд, используя Userdata. Один набор, который будет выполняться при создании экземпляра, и другой набор, который должен выполняться при каждой перезагрузке. Пожалуйста, дайте мне знать, если я неправильно понял.
Для первой части вы можете использовать сами данные пользователя, как вы уже знаете. Для команд, которые должны запускаться при каждой перезагрузке, вы можете использовать rc.local
.
Сценарий /etc/rc.local
предназначен для использования системным администратором. Он традиционно выполняется после запуска всех обычных системных служб, в конце процесса переключения на многопользовательский уровень выполнения и т. Д. Вы можете использовать его для запуска пользовательской службы или для подключения дополнительных томов.
Чтобы записать в /etc/rc.local
, вы можете загрузить набор команд из S3 и скопировать в файл или просто повторить его. Пример:
echo 'echo HelloWorld' >> /etc/rc.local
Надеюсь, это поможет.