Dhcp
在不更改“介面”的情況下禁用 DHCP
我有一堆 RPis 在無法修改 /etc/network/interfaces 文件的只讀文件系統中執行。
截至目前,他們從 U 盤載入配置並用於
ifconfig eth0 <ipaddress>
更改其 IP 地址。這在大多數情況下都有效,但每隔一段時間,IP 更改不會“堅持”。我的啟動腳本執行,IP 更改為配置的地址,然後一分鐘左右,它更改為錯誤的地址。我的介面文件是為 DHCP 設置的:
iface eth0 inet dhcp
因為如果出現問題,我仍然希望能夠在網路上找到 Pi。所以,我認為 DHCP 正在度過一段美好的時光,並在啟動後一分鐘左右覆蓋我的 IP 更改。
如何在不更改任何文件系統文件的情況下禁用 DHCP?
在您的情況下,您可以通過執行
killall dhclient
以終止所有正在執行的 DHCP 客戶端守護程序來dhclient -r
優雅地停止 DHCP 客戶端守護程序*。通常不建議這樣做,但如果修改基本系統是不可能的,並且您需要依賴啟動腳本,那麼我建議終止 dhclient 程序。但是,如果 USB 記憶棒是非永久性 live USB,它仍應允許在 live 系統上編輯文件,但更改不會在重新啟動後持續存在。在這種情況下,我的建議是 ifdown 介面,使用適當的配置回顯 /etc/network/interfaces 文件,然後在腳本中 ifup 介面。這樣做的好處是,如果界面在任何時候重新啟動或重置,您的自定義配置更有可能堅持,而否則可能不會(儘管我承認我沒有測試過這種情況,我只是有點謹慎)。
*編輯感謝金發姑娘在評論中的建議