それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

複製したらmachine-idを変えておく。MACアドレスが重複する。(macvlan)

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