/ Etc / network / interfaces dosyalarını doğrulamak için bir araç var mı?


26

Yeni config dosyalarını dağıtmadan önce test etmeyi seviyorum - apachectl configtestve gibi araçlar ile named-checkconf.

Hataların ortaya çıkması nadirdir, ancak konuşlandırmadan önce onları yakalamak herhangi bir etkiyi ortadan kaldırır. Beni birkaç kez arkadan ısırtan kişi /etc/network/interfaces; Bunu test etmek için bir araç bulamıyorum ve sadece uzak bir makinede ağın yeniden erişilebilir olduğunu keşfetmek için yeniden başlatmak oldukça can sıkıcı bir durum değil - özellikle çok fazla bağ ve köprü kullandığımız zaman.

Yanıtlar:


24

@ Jdthood'ın cevabını genişletmek için ...

Arabirim zaten hazırsa, /etc/network/interfacesdosyayı doğrulamak için bu yöntemi kullanabilirsiniz . Örneğin, bir hatanız olduğunu varsayarsak, şöyle bir şey görebilirsiniz:

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

Görünüşe göre 11. hatta bir hata var. Göklere şükürler olsun, sadece SSH erişimini kaybetmek için ağ üzerinden sıçrama yapmadım!

Her şey yolundaysa, göreceksiniz:

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

9

Aşağıdaki, istediklerinizin bir bölümünü yapabilir.

ifup --no-act eth0

6

Eğer bir eth0'ınız yoksa, bu işe yaramayacaktır, örneğin:

Ignoring unknown interface eth0=eth0.

Ama eğer böyle yaparsan:

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

Tamam yapılandırma ile:

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

Tamam olmayan config ile:

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
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.