解決策 1:
これによると、CloudInit は、デフォルトの「ubuntu」ユーザーのオーバーライドを含む、新しいユーザーを作成するためのカスタム ディレクティブをサポートする必要があります。以下の例を試してみましたが、うまくいきませんでした。
ただし、CloudInit はユーザー データ スクリプトをサポートしており、スクリプトでほぼすべてのことを実行できるため、新しいカスタム ディレクティブを学習しようとするよりも、標準的なコマンドを使用することを好みます.
ユーザーデータスクリプトでデフォルトのユーザー名を「ubuntu」から変更する方法は次のとおりです。この例では、好みに合わせて変更する必要がある新しいユーザー名「newuser」を使用しています:
#!/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
このユーザーデータ スクリプトに追加して、インスタンスで必要なその他の初期化と構成を行うことができます。
更新:ユーザー データ スクリプトの両方を使用する手順と、最近のバージョンの Ubuntu で CloudInit を使用してそれを行う方法を説明する拡張記事を書きました:http://alestic.com/2014/01 /ec2-変更-ユーザー名
解決策 2:
これをユーザーデータに入れることができます:
#cloud-config
system_info:
default_user:
name: otherusername