毎度お馴染みNTT-X Storeから調達したDELL Power Edge T320(P14032500350W)にubuntu 13.04をインストールしたところ、オンボードNICがeth0/1ではなくem1/2となっているのに気付いた。
ちょっと戸惑ったものの、ethN(N:0~)の代わりにemN(N:1~)というインタフェース名が付与されているという風に読み替えていけば大きな問題は無いので、Broadcom用tg3ドライバの特性と判断。
ところが再起動時にブリッジインタフェースが起動しない事に困ったので「インタフェース名の問題かも?」と思って調べてみたところ、
RHEL6 SP1 に対応する Dell PowerEdge サーバにインストールすると、新しいネットワークインターフェイス名は、内蔵インターフェイスにこれまで付けられていた ethN という名前ではなく、という内容で、Dell発案の「biosdevname」という新しい命名スキームによるものである事が解った。
emN( (em1、em2、..)
となります。
PCI アドインネットワークインターフェイスの場合、名前は次のようになります:
pXpY( (p<slotスロット番号>p<ポート番号> - p1p1、, p1p2、, ..)
新しい命名スキームでは、サーバシャーシのラベルの通りに、em1 は 「Gb1」 ( (em2は「Gb2」)) としてマップされるので、ネットワークインターフェイスをより楽に、かつ効率的に管理できます。 p1p2 という形式の名前から、アドオンカードのネットワークポートを容易に特定できます。
新しい命名スキームを無効にするには、カーネルのコマンドラインパラメーターとして 「biosdevname=0」 を渡せば良いという事だ。
インストール時にkernel bootオプション指定しても良いし、インストール後は /etc/default/grubのGRUB_CMDLINE_LINUX_DEFAULTに
# GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"と追記して、
GRUB_CMDLINE_LINUX_DEFAULT="nosplash biosdevname=0"
GRUB_CMDLINE_LINUX=""
$ sudo update-grub2として(再起動して)おけば良い。
再起動時にブリッジインタフェースが起動しなかった問題は、/etc/network/interfacesの bridge_ports の's'が消えて bridge_port になっていた…という情けない話だったよ。
【参照】
●Dell コミュニティ http://ja.community.dell.com/
┗RHEL 6 SP1が、デル製システム上でネットワークデバイスの進化した命名規則を実現 2011年8月29日