Predictable namingを無効化するメモ
ヘッドレスでラズパイのSDカードを使いまわす場合、Predictable Network Interface Namesの命名ルールが邪魔になるので、無効化する。
① predictable naming を無効化
sudo nano /boot/cmdline.txt
1行の末尾に追記(改行しない):
net.ifnames=0 biosdevname=0
② オンボードLANを eth0 に固定する udev ルール作成(必須ではない)
sudo nano /etc/udev/rules.d/70-onboard-eth.rules
中身(Pi 2 / 3 / B+ 共通)
SUBSYSTEM==“net”, ACTION==“add”, DRIVERS==“smsc95xx”, NAME=“eth0”
③ /etc/network/interfacesを編集
オンボードNICのデバイス名をeth0に変更
④ SDカード移植後、machine-id を再生成
rm -f /etc/machine-id
systemd-machine-id-setup
●machine-idを直接生成して書き込む場合
・例として、別システムの /mnt/media/ にシステムディスクをマウントして書き込む場合
cat /proc/sys/kernel/random/uuid | tr -d ‘-’ | sudo tee /mnt/media/etc/machine-id
⑤ まとめ(実務視点)
・/etc が書ければ今回の作業は全部できる
・/boot は初回だけ
・SD 移植後は /etc だけ触れば復旧可能
・ヘッドレス運用でも詰まない