私はLinuxシステムのインストールを自動化しています。私がやっていることの1つは、インターフェイスを設定することです(固定IPなどを提供すること)。ifcfg-*
スクリプトの実行時にインターフェイス名が指定されているかどうかを知りたいです/etc/sysconfig/network-scripts
(名前が別の場所に設定されている場合)。たとえば、次のスクリプトがありますifcfg-Installation
。
TYPE=Ethernet
DEVICE=eth0
IPADDR=192.168.1.1
PREFIX=24
ONBOOT=yes
DEVICE=eth0
に変更すると、DEVICE=installation
これが最初に実行されるネットワークスクリプトであるとします。 Linuxは名前を持たなければならない最初のイーサネットインターフェースを単に割り当てるのでしょうかinstallation
?または、デバイス名を持つインターフェイスを見つけてinstallation
その設定を割り当てたいですか?
私はこのためにCentoOS6.3を実行しています(これが関連しているかどうかはわかりません)。
答え1
他の場所で名前が付けられました。
最新のLinuxシステム(7.0で始まるCentos)では、通常、システム内の物理的な場所に基づいてデバイスに名前を割り当てるsystemd永続的なデバイス命名を使用してインターフェイス名が指定されます(実際には失敗する可能性があります)。
Centos 6.3 では、udev を使用してイーサネットインターフェイスの名前を指定します。システムが最初に起動したら、すべてのイーサネットインターフェイスを列挙し、eth0から名前を割り当て、それを/etc/udev/rules.d/70-pertant-netルールに保存して再適用します。スタートアップごと。新しいインターフェイスが接続されるたびに、カウンタは1ずつ増え、ファイルに追加されます。