CentOS7からNICの名前が以前の「eth0」といった形式から、「enoxx」や「enpxx」いったような名前が付けられるようになっています。
これを以前の「eth0」形式の名前に変更する方法をまとめてみました。
カーネルパラメータの追加
CentOS7からの新しいNIC命名方式を無効化するために、OSが起動する際に読み込むカーネルパラメータとして「net.ifnames=0」と「biosdevname=0」を追加します。
CentOS7からはブートローダが「GRUB2」に変更されたため、まずは「/etc/default/grub」を編集し、それをもとに「grub2-mkconfig」コマンドで「/boot/grub2/grub.cfg」を作成するという手順になります。
/etc/default/grub 編集
「/etc/default/grub」ファイルの「GRUB_CMDLINE_LINUX」変数部分に、OS起動時に読み込むカーネルパラーメータとして「biosdevname=0」と「net.ifnames=0」を追加していきます。
# cd /etc/default # cp -p grub grub_yyyymmdd # vi grub
編集内容
編集前
GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet" GRUB_DISABLE_RECOVERY="true"
編集後
「GRUB_CMDLINE_LINUX」の項目に「net.ifnames=0」と「biosdevname=0」を追加します。
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet biosdevname=0 net.ifnames=0"
GRUB_DISABLE_RECOVERY="true"
/boot/grub2/grub.cfg 作成
編集が終わった「/etc/default/grub」をもとに、「grub2-mkconfig」コマンドを使用して「/boot/grub2/grub.cfg」ファイルを作成します。
# cp -p /boot/grub2/grub.cfg /boot/grub2/grub.cfg_yyyymmdd # grub2-mkconfig -o /boot/grub2/grub.cfg
※「UEFI」環境では「grub.cfg」の場所が異なるので注意してください。
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
NIC設定ファイル名変更と内容の編集
もともと存在しているNICの設定ファイルの名前の変更と、内容の編集を行っていきます。
NIC設定ファイルの名前変更
名前変更を行いたいNICの設定ファイル名を「ifcfg-eth0」に変更します。
私の環境ではNICの名前が「ens33」だったので、設定ファイル名は「ifcfg-ens33」でしたが、環境によってことなると思いますので環境にあわせて適宜読み替えてください。
# cd /etc/sysconfig/network-scripts # mv ifcfg-ens33 ifcfg-eth0
設定変更
NIC設定ファイル内に記述されている、以前のNIC名の部分を「eth0」に変更してください。
# vi ifcfg-eth0
私の環境では、「ens33」と記述されている部分を「eth0」に変更しました。
サーバ再起動
設定が終わったらサーバの再起動を行ってNICの名前が変更されているか確認を行ってください。
設定に誤りがあった場合サーバへ通信ができなくなる場合がありますので、直接サーバに接続できる環境を用意しておきましょう。
コメント