Raspberry Pi のSDカードを複製して、2台起動したらMACアドレスが衝突した。eth0は衝突しないんだけど、macvlan が衝突した
machine-id の変更
rm -f /etc/machine-id dbus-uuidgen --ensure=/etc/machine-id reboot
machine-id を変更したら衝突がなくなった。
dd によるclone後にやっておくべきだったかもしれない。
systemd-firstboot --root=/mnt --setup-machine-id
確認方法
次のように行って、マシンのIDを確認しておく。
hostnamectl
Static hostname: pi4-ubuntu
Icon name: computer
Machine ID: 50078343ec98aa8a7392aac963e35ec6
Boot ID: dfe88d213c74429fb56afcf16383a54a
Operating System: Ubuntu 22.04.1 LTS
Kernel: Linux 5.15.0-1023-raspi
Architecture: arm64
reboot なしで行うには、次のように行えるが、machine-idから生成されるっぽいmacvlan のMAC ADDRを考慮すると再起動したほうが良いかもしれない。
rm /etc/machine-id rm /var/lib/dbus/machine-id dbus-uuidgen --ensure systemd-machine-id-setup cat /etc/machine-id hostnamectl
ちゃんとおぼえてないけど、cloud-init が走る ubuntu の場合、ssh のホストキーも変更されたような。
参考資料
https://unix.stackexchange.com/questions/402999/is-it-ok-to-change-etc-machine-id