A AMI do FreeBSD na AWS não fornece o mesmo nível de suporte para scripts user_data que outras AMIs. Como você apontou, ele não suporta #cloud-boothook
user_data e ignora qualquer user_data passado após a inicialização.
Uma solução simples é a seguinte:
sed -i '' '/KEYWORD: *firstboot$/d' /usr/local/etc/rc.d/ec2_configinit
Isso é um hack - sua instância agora executará todos os scripts user_data, mesmo aqueles sem a tag #cloud-boothook
, mas na minha opinião é muito melhor que o comportamento padrão do script. Observe que sempre é possível desativar completamente o script ec2_configinit
desativando-o em /etc/rc.conf
.