有沒有辦法清理 ifquery 狀態以反映底層設備?而不僅僅是用於維護鎖的描述符?
$ ifquery --state
bond0.100=bond0.100
bond0=bond0
eth3=eth3
eth1=eth1
eth0=eth0
我已經使用 sysfs 刪除了接口,但它仍然保留在 ifquery 狀態表中。
$ ifconfig bond0
bond0: error fetching interface information: Device not found
答案1
ifquery --list
依拾取順序顯示 /etc/network/interfaces 檔案中拾取的目前介面。這並不指示目前正在運行的介面。
ifquery --state
以某種順序顯示介面,截至撰寫本文時尚不清楚是什麼驅動了該順序。
該文件/run/network/ifstate
似乎維護了交互啟動的順序。每次啟動介面(透過 ifup)時,它都會附加到清單的末端。當它被關閉(透過 ifdown)時,它將從清單中刪除。
ifconfig <interface>
這將轉到設備本身並直接進行查詢,它不維護整個作業系統的任何狀態。如果使用 ifconfig 啟動接口,則不會在狀態表中維護該接口。
相關的包有:ifupdown