Wie bekomme ich, dass dhclient und / oder NetworkManager alte Client-Lease-Dateien entfernen?

858
studog

Mein Unternehmen stellt über USB angeschlossene IoT-Geräte her, die ein Zellmodem-Modul enthalten, das einen DHCP-Server enthält. Wir haben einen Produktionstestserver mit Ubuntu 14.04 und einen weiteren Server mit Ubuntu 16.04. Wenn das Zellmodem des IoT-Geräts eingeschaltet ist, erhält der DHCP-Server des Servers eine IP-Adresse von dem im Zellmodemmodul integrierten DHCP-Server.

Gestern lief der 14.04 Server nicht mehr inodes, da 6,6 Millionen dhclient-<uuid>-usbXX.lease Dateien vorhanden waren /var/lib/NetworkManager/.

Ich konnte das System nicht vollständig untersuchen, da ich es für Produktionszwecke einsetzen musste, aber es sah so aus, als würden diese Leasingdateien bis zur Server-Inbetriebnahme vor etwa 14 Monaten zurückverfolgt. Das heißt, es scheint, dass NetworkManager und / oder dhclient (aus dem Paket isc-dhcp-client) niemals die Client-Lease-Dateien entfernt haben.

Das Problem wird dadurch verschärft, dass bei jedem Einschalten des Mobilfunkmodems eine neue Lease-Datei erstellt wird. (Das IoT-Gerät hält das Mobilfunkmodem ausgeschaltet, um den Akku zu schonen, und schaltet es nur bei Bedarf ein. Beim Testen wird das Modem mehrmals ein- und ausgeschaltet.)

Ich habe sudo apt-get source isc-dhcp-clientdie Quelle überprüft und es scheint nicht, dass es überhaupt Code zum Entfernen von Lease-Dateien gibt. In der Tat hat mein Laptop (Ubuntu 14.04) die Lease-Dateien, die wieder in Betrieb gehen. (Ich habe einige unserer IoT-Geräte sowie verschiedene andere Ethernet-USB-Adapter angeschlossen.)

Die Mietdateien haben einen sehr günstigen Ablauf von 24 Stunden.

Ich untersuche, wie wir Dhclient für unsere IoT-Geräte dekonfigurieren, aber ich würde das lieber nicht tun, wenn wir uns dazu entschließen, die Zelldatenverbindung zu testen.

Gibt es eine Möglichkeit, dass dhclient und / oder NetworkManager alte Client-Lease-Dateien entfernen?

Ich könnte einen Cron-Job einrichten, um damit umzugehen, aber es scheint etwas zu sein, das Teil des Systems sein sollte. Ich kann es einfach nicht finden. Ich habe gegoogelt, hier / StackOverflow gesucht und die Dokumentation zu dhclient und NetworkManager gelesen.

HINWEIS: Ich habe nicht genug Reputation, um das Tag dhclient zu erstellen. Daher habe ich stattdessen dhcp eingesetzt.

1

0 Antworten auf die Frage