Liebe Entwickler,
ich habe gerade folgendes Verhalten festgestellt:
Wenn man mithilfe des udm-Befehls beispielsweise die Details eines Benutzers ansieht, also etwa so:
udm users/user list --filter uid=roland
werden die Details des Benutzer (hoffentlich) wie erwartet angezeigt. Es entsteht dabei aber auch - weniger erwartet - ein Zombie-Prozess:
root 21208 0.7 0.0 0 0 ? Z 11:32 0:00 [univention-cli-] <defunct>
Welcher sich nach etwa fünf bis zehn Minuten selbst beendet.
Das wird wohl kein gewolltes Verhalten sein, oder?
An sich hätte ich kein Problem damit, aber ich habe für einen Syncer, der alle 3 Minuten laufen soll, eine Prüfung eingebaut, die nachsieht ob in dem Output “disabled: 1” drin steht und so herausfindet, ob der Benutzer gesperrt ist oder nicht.
Dieser Syncer kann nun aber nicht mehr so oft laufen, weil die Lock-Datei durch den Zombie erst viel später freigegeben wird. Meist waren es auf meinem Testsystem 7 Minuten.
Getestet habe ich es ursprünglich auf einem UCS 4.3.x (die genaue Version weiß ich nicht mehr), aber ein Update auf 4.4.5 und schließlich auf 4.4.6 hat dahingehend nichts verändert.
Woher kommt dieser Zombie?
Gibt es mit Python eine bessere Möglichkeit zu prüfen, ob ein Benutzer deaktiviert ist oder nicht?
LG,
Roland.