概要
- ホストOSをUbuntuにしてKVMでUbuntu 22.04や24.04を仮想OSとして使用したい
- 仮想OSのログイン画面までは進むが、ログインしようとしたら
Login incorrect
になってログインできない - このときの
user-data
は以下のように設定している
#cloud-config
hostname: ubuntu2404
users:
- name: {your_name}
lock_passwd: false
password: 'xxxxx.....'
ssh-authorized-keys:
- ssh-ed25519 xxxxx.....
sudo: ['ALL=(ALL) NOPASSWD:ALL']
shell: /bin/bash
uid: 1000
ssh_pwauth: true
disable_root: true
chpasswd:
expire: false
timezone: Asia/Tokyo
locale: ja_JP.UTF-8
network:
version: 2
ethernets:
ens3:
dhcp4: true
解決方法
かなり無駄にドツボっていたのですが、以下あたりを順に確認していけば解決すると思います。
password
ではなくてpasswd
(これのtypoが一番ドツボりました…)passwd
にはハッシュ化されたパスワードを設定するchpasswd
にplain_text_passwd: false
を加える
#cloud-config
hostname: ubuntu2404
users:
- name: {your_name}
lock_passwd: false
passwd: 'xxxxx.....'
ssh-authorized-keys:
- ssh-ed25519 xxxxx.....
sudo: ['ALL=(ALL) NOPASSWD:ALL']
shell: /bin/bash
uid: 1000
ssh_pwauth: true
disable_root: true
chpasswd:
expire: false
plain_text_passwd: false
timezone: Asia/Tokyo
locale: ja_JP.UTF-8
network:
version: 2
ethernets:
ens3:
dhcp4: true
注意事項(tips)
KVMに慣れていない間は、仮想OSの再作成を行う前に都度以下のようにリソースを完全に削除してから作成するようにすると、どの設定が効いているのかを明確にできるので良いかと思います。
virsh undefine ubuntu2404 --remove-all-storage