3

次の問題があります。私の PC は非常に古く、組み込みのイーサネット ポートが機能しません。構成の誤りが原因ではなく、物理的に損傷していると思われます。UbuntuでもWindowsでも機能しませんでした。私が使用しているイーサネットPCIカードがあります。問題は、何らかの奇妙な理由で、動作するカードが からeth0に変更されることがあり、常に DHCP 経由で IP を取得できるとは限らないため、eth1実行する必要があることです。dhcpdさて、実際の質問は、MAC アドレスなどを使用して機能しないカードを無効にする方法はありますか? どちらも無効にすることはできません。eth0またはeth1、常に同じカードを「指している」とは限らないためです。

4

4 に答える 4

6

仲間の射手です。ハードウェア pci id に基づいて、nVidia グラフィック カードの HDMI ポート オーディオ チップを無効にするために使用する方法があります。おそらく、同じアプローチを nic に適用できます。

イーサネットの PCI ID を見つけます。

$ lspci | grep Eth
00:19.0 Ethernet controller: Intel Corporation 82579V Gigabit Network Connection (rev 05)

対応するディレクトリを見つけます。

$ find /sys/devices -name *00:19.0
/sys/devices/pci0000:00/0000:00:19.0

そのディレクトリに「remove」という名前のファイルがあるはずです。/etc/rc.local を編集して、起動時にデバイスを無効にすることができます。

echo 1 > /sys/devices/pci0000:00/0000:00:19.0/remove

考え直して; /etc/rc.local が終了する前にモジュールがロードされた場合、これはうまくいかないかもしれません... /dev/eth0 と /dev/eth1 を「間違った」順序で割り当ててから/etc/rc.conf それらの1つを無効にします...それでも、優先するNICがeth1になる可能性があります。これは、複数のサウンド カードでの alsa の問題であったため、モジュール パラメータを介してカードの番号を割り当てる方法が考案されました。おそらくモジュール自体がこれを許可していますか?

于 2012-02-11T07:08:16.983 に答える