eth0(メインインターフェイス)をifdownできません



Cant Ifdown Eth0



解決:

ファイルの内容を確認してください/ run / network / ifstate。ifupとifdownは、このファイルを使用して、どのネットワークインターフェイスを起動および停止できるかを確認します。したがって、ifupは、他のネットワークツールを使用してインターフェイスを表示すると、簡単に混乱する可能性があります(例:ifconfig)。

男ifupから



プログラムは、ネットワークインターフェイスがアップしているかダウンしているかの記録を保持します。例外的な状況では、これらのレコードはインターフェイスの実際の状態と一致しなくなる可能性があります。たとえば、ifupを使用して起動され、後でを使用して構成解除されたインターフェイスifconfigは引き続きupとして記録されます。これを修正するには、-強制するオプションを強制するifupまたはifdownは、インターフェイスの現在の状態を考慮しているにもかかわらず、コンフィギュレーションコマンドまたはデコンフィギュレーションコマンドを実行します。


ifdownは、必要のない多くのことを実行する高水準プログラムです。さらに、どこでも利用できるわけではありません。よりポータブルな方法があなたのために働くかもしれません:



$ sudo ifconfig eth0 down

あなたがそれからできないならそれが原因で、構成に問題がある可能性があります。手動でそれを持ち出すその場合、ifconfig eth0upはおそらく適切ではありません。 Debianでは、ifupはバイナリ実行可能ファイルであるため、おそらく次のようにする必要があります。それがどこでハングアップしているのかを把握するためにそれをstraceします:

$ sudo strace -e open ifup eth0

それはあなたにどのファイルを教えてくれます動作中にifupが開いているため、問題が発生する可能性があります。

他のシステム(RHELや派生物など)ifupはシェルスクリプトであるため、デバッグがはるかに簡単です。



#sh -x `which ifup` eth0

でシェルスクリプトを実行するsh -xを使用すると、実行するすべての行が出力されるため、実行を追跡できます。


ethXがで適切に構成されていなかったときにこれを見たことがあります/ etc / network / interfaces。これには次のようなものが必要です:-

auto eth0 iface eth0 inet dhcp

不適切に構成されていても/ etc / network / interfacesファイルの場合でも、次の方法でeth0を停止できます。

$ sudo ip link set eth0 down