Version 001, Stand 15. August 2016


Fedora 24

Anpassung des DSLS Startmechanismus an modernere Zeiten


Auch wenn man früher einmal "systemctl enable dsls.service" befohlen hat, so startet der DSLS-Lizenzserver beim nächsten Systemneustart unter Fedora 24 nicht automatisch mit. Er verweigert seinen Dienst und systemd protokoliert eine Fehlermeldung, die der Befehl "systemctl status dsls.service" anzeigt. Wenn man anschließend versucht den DSLS mit dem Befehl "systemctl start dsls.service" händisch zu starten, so gelingt dies allerdings problemlos. Diesen Erfolgsfall zeigt erneut "systemctl status dsls.service" schön an. Sowohl der automatsche DSLS-Start beim Booten, als auch der manuell ausgeführte DSLS-Start bemühen beide die gleiche Startdatei /usr/lib/systemd/system/dsls.service. Irgendwie scheint in dieser Startdatei ein Fehler zu stecken. Obwohl: So ganz falsch kann Sie ja auch nicht sein. Eine kleine Änderung bringt alles wieder ins Lot. Und zwar:


[Unit]
Description=DSLS Dassault Systemes License Server for CATIA
After=auditd.service network-online.target syslog.target

[Service]
ExecStart=/usr/bin/nohup /usr/DassaultSystemes/DSLicenseServer/linux_a64/code/bin/DSLicSrv -startServer &
PIDFile=/run/DSLicSrv.pid
User=root

[Install]
WantedBy=multi-user.target

Das Geheimnis besteht darin, daß wir in der mit After beginnenden Zeile das ursprüngliche network.target in network-online.target geändert haben. Die Leute von Fedora halten den Network-Manager für inzwischen so ausgereift, daß er nun auch bei Servern zum Einsatz kommen soll. Wo sich früher also der Kernel selbst um die Initialisierung der Netzwerkkarten kümmerte, da wird dies heute im Userspace vom Network-Manager erledigt. Leider ist der aber viel langsamer als der Kernel. Der DSLS braucht aber eine vollständig funktionierende Netzwerkkarte um zu starten. Nicht zuletzt auch deshalb, weil die CATIA-Lizenzen an eine ID genüpft sind, die aus eben diesen Netwekkarten generiert wird. network.target greift schon früher als network-online.target, zu früh für den DSLS. Aber wie gesagt, mit dieser kleinen Änderung gehts wieder und die paar Millisekunden, die der DSLS jetzt später startet, sind ja wohl zu verkraften. Übrigens: Wer es ganz genau analysieren will, der gibt den Befehl "systemd-analyze plot > plot.svg" ein und schaut sich anschließend die Datei plot.svg z.B. im Firefox-Browser an. Da findet man dann den DSLS ganz weit hinten.


Oliver Seeburger, Schwalbenweg 13, 32609 Hüllhorst, Deutschland