/ etc / network / interfacesファイルを検証するツールはありますか?


26

私は常にそれらを展開する前にテストの新しい設定ファイルのような-のようなツールを使ってapachectl configtestnamed-checkconf

ミスが発生することはめったにありませんが、展開前にミスをキャッチすることで、影響を排除できます。裏側で何度か噛みついたのは/etc/network/interfaces; 私はそれをテストするツールを見つけることができないようであり、リモートマシンでネットワークを再起動して、それがもはや到達可能でないことを発見することだけは非常に迷惑です-特に多くのボンディングとブリッジングを使用する場合。

回答:


24

@jdthoodの答えを拡張するには...

インターフェイスがすでに起動している場合でも、このメソッドを使用して/etc/network/interfacesファイルを検証できます。たとえば、エラーがあると仮定すると、次のようなものが表示される場合があります。

$ sudo ifup --no-act eth0
/etc/network/interfaces:11: unknown method
ifup: couldn't read interfaces file "/etc/network/interfaces"

どうやら11行目にエラーがあります。天に感謝します。SSHアクセスを失うためだけにネットワーキングをバウンスしませんでした!

すべてが正常な場合、次のように表示されます。

$ sudo ifup --no-act eth0
ifup: interface eth0 already configured

9

以下はあなたが望むものの一部をするかもしれません。

ifup --no-act eth0

6

eth0がない場合、これは機能しません。例:

Ignoring unknown interface eth0=eth0.

しかし、あなたがこれを好きなら:

ifup -a --no-act ; echo "status: $?"

ok configを使用:

ifup -a --no-act ; echo "status: $?"
run-parts  /etc/network/if-pre-up.d
run-parts  /etc/network/if-up.d
status: 0

non-ok configの場合:

ifup -a --no-act ; echo "status: $?"
/etc/network/interfaces:12: option with empty value
ifup: couldn't read interfaces file "/etc/network/interfaces"
status: 1
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.