Soluzione 1:
In base a ciò, CloudInit dovrebbe supportare direttive personalizzate per creare nuovi utenti, incluso l'override dell'utente "ubuntu" predefinito. L'ho provato seguendo gli esempi, ma non sono riuscito a farlo funzionare.
Tuttavia, poiché CloudInit supporta gli script di dati utente e puoi fare praticamente qualsiasi cosa in uno script, preferisco utilizzare comandi standard piuttosto che provare ad apprendere alcune nuove direttive personalizzate.
Ecco come cambio il nome utente predefinito da "ubuntu" in uno script di dati utente. Questo esempio utilizza il nuovo nome utente "newuser" che dovresti modificare in base alle tue preferenze:
#!/bin/bash -ex
user=newuser
usermod -l $user ubuntu
groupmod -n $user ubuntu
usermod -d /home/$user -m $user
mv /etc/sudoers.d/90-cloudimg-ubuntu /etc/sudoers.d/90-cloudimg-$user
perl -pi -e "s/ubuntu/$user/g;" /etc/sudoers.d/90-cloudimg-$user
Puoi aggiungere a questo script di dati utente per eseguire qualsiasi altra inizializzazione e configurazione necessaria sulle tue istanze.
Aggiornamento:ho scritto un articolo esteso che descrive i passaggi per utilizzare sia uno script di dati utente sia come farlo con CloudInit nelle versioni recenti di Ubuntu:http://alestic.com/2014/01 /ec2-change-username
Soluzione 2:
Puoi inserirlo in userdata:
#cloud-config
system_info:
default_user:
name: otherusername