vine-users ML アーカイブ



[vine-users:074642] Re: eth0と eth1を固定したい

  • From: OIKAWA Ataru <tornado@xxxxxxxxxx>
  • Subject: [vine-users:074642] Re: eth0と eth1を固定したい
  • Date: Thu, 1 Jun 2006 14:28:27 +0900
及川です。

On Thu, 01 Jun 2006 10:41:28 +0900
Yeti <y_e_t_i_21@xxxxxxxxxxx> wrote:

(snip)
> ところが、再起動するとeth0とeth1が入れ替わってしまいました。
> 認識の順番で入れ替わったのだと思いますが、これだとちょっと支障があるため、
> オンボードをeth0、USBをeth1に固定したいため、以下の方法を試しましたが、
> 今のところうまくいっていません。
> 
> まず、/etc/modules.confや/etc/modprobe.confなどで
> alias eth0 e100
> alias eth1 pegasus
> としてみましたが効果なく
> USBがeth0となってしまいます。
> e100はロードできずにUSBのeth0だけが有効になっている状況です。
> 
> さらに、ifcfg-eth0、ifcfg-eth1に各々のMACアドレスをhwaddr=xx:〜:xxと
> 追加してみましたが、今度はブートのeth0の開始で止まってしまいました。

認識の順番というよりは、ドライバモジュールが読み込まれた順番という表現の方が
正しいと思います。起動シーケンス的に抜粋すれば、

init 開始
 ↓
USB ホストアダプタモジュール読み込み
 ↓
murasaki 起動(ここで pegasus がロードされる)
 ↓
network 起動(ここで e100 がロードされる)

という順番なので、USB ネットワークアダプタのモジュールが先にロードされてしまいます。
今分かっている状況なら initrd を使うと解決しそうな感じがします。

# mkinitrd -f --with=e100 /boot/initrd-2.4.xx-0vlx.img 2.4.xx-0xlx
(xx の部分は今お使いの kernel のバージョンに合わせてください)

を実行し、できた initrd を読み込むように lilo.conf を修正して lilo を実行すると、

initrd の init スクリプト(ここで e100 がロードされる)
 ↓
init 開始
 ↓
USB ホストアダプタモジュール読み込み
 ↓
murasaki 起動(ここで pegasus がロードされる)
 ↓
network 起動

という順番になると思います。

===========================================================
TornadoX

Homepage : http://cha.merseine.nu/
GnuPG fingerprint : 
   D9CD 0C29 72C0 3093 4D46  D463 7979 02B3 CC96 C2DC
===========================================================