揮発性のメモ2

最近知った知識を さも昔から知ってた風にメモ書きしていく

Amazon Linux 2023で、eth0にIPアドレスを設定する

仮想マシン環境を人に渡すときなど NICが増えも減りもしない環境なのにMACアドレスが変わるたびにデバイス名が変わるのは困るので、まずはeth0に戻す。

GRUBの設定変更、反映

/etc/default/grub

GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

カーネルオプションにこの設定を追記する

# grub2-mkconfig -o /boot/grub2/grub.cfg

GRUBに反映

ネットワーク設定の編集

/etc/systemd/network/05-eth0.network

[Match]
Name=eth0

[Network]
Address=192.168.0.100/24
Gateway=192.168.0.1
DNS=192.168.0.1

ネットワーク設定を新規作成する


補足事項

enp0s1 みたいなやつ

Predictable Network Interface Names (予測可能なネットワークインターフェース名)という。

GRUB設定

似たような名前の GRUB_CMDLINE_LINUX_DEFAULT は触ってはいけない。
GRUB_CMDLINE_LINUX を新規に追加する。もうあるときは中身を追加する(空白区切り)。

GRUB反映

grub2-mkconfig -o /boot/efi/EFI/amzn/grub.cfg

EFIのときはこれを実行しろ、というページもあったけど どうも今どきは中身が工夫されていて /boot/grub2/grub.cfg を取り込むようになっているらしい(少なくともAL2023ではそうなっていた)。
そのため、これを実行してしまうと ファイルが上書きされてなんかおかしくなって起動しなくなる(なった)。
Debian系は update-grub と打つだけなので気楽。

cloud init

cloud-init が作るネットワーク設定ファイル /etc/systemd/network/10-cloud-init-enp0s1.network は消しても再起動で復活する。eth0なら名前もそれに準ずるものになる。
cloud-init関連のサービスが再作成するので、本当は cloud-init関連のサービスをすべて停止・無効化した上でこのファイルも削除すべきだけど
こいつより先にeth0を奪ってしまえば問題ないので、適当に済ますなら とりあえず放置でもいい。



参考
takuya-1st.hatenablog.jp
qiita.com