WinCC OA als Linux Dienst
Sie können WinCC OA als Dienst konfigurieren und ein Projekt auch dann starten, wenn ein Benutzer nicht eingeloggt ist (siehe auch WinCC OA als Dienst) unter Linux genauso wie unter Windows. Der PMON mit dem definierten Projekt wird beim Starten des Systems gestartet.
Wenn WinCC OA als Dienst verwendet wird und SNMP verwendet wird, muss
das verwendete Benutzerkonto Schreibrechte auf die Verzeichnisse
<proj_path>/log
und <proj_path>/db
haben.
Unter Linux gibt es mehrere Möglichkeiten, WinCC OA als Dienst zu
konfigurieren. Wir empfehlen die systemd
Dienstdatei zu verwenden.
systemd Dienstdatei
Während der RPM Installation von WinCC OA wird die Datei
/etc/systemd/system/winccoa@.service
erstellt. Diese Datei wird
nur von den folgenden systemctl
Befehlen (und
systemd
) verwendet. Der zu verwendende Projektname wird ihm
einfach als "Instanz"-Name mitgegeben.
Für einen Systemintegrator besteht normalerweise keine Notwendigkeit, die Datei zu ändern.
Dienst Aktivieren
Wenn ein Systemintegrator nun ein bestimmtes (bereits registriertes) WinCC OA Projekt definieren will, das beim Systemstart automatisch gestartet wird, gibt er einfach den folgenden Befehl ein:
systemctl enable winccoa@projectName
Dienst Deaktivieren
Um eine solche Konfiguration wieder zu deaktivieren, wird folgender Befehl verwendet:
systemctl disable winccoa@projectName
Manuelles Starten eines Projektes
Um ein Projekt manuell zu starten:
systemctl start winccoa@projectName
Projekt manuell stoppen
Um ein Projekt manuell zu stoppen:
systemctl stop winccoa@projectName
Status abfragen
Um den aktuellen Status abzufragen:
systemctl status winccoa@projectName
Systemprotokoll
So zeigen Sie das Systemprotokoll (Journal) an:
journalctl
Wie oben zu sehen, ist der winccoa@.service
Datei nicht manuell
geändert, aber systemd schafft es, symbolische Links zu dieser Datei zu erstellen,
die den Projektnamen enthalten.
Projekt als bestimmter Benutzer ausführen
Oft ist es gewünscht, ein Projekt unter einem bestimmten Benutzer auszuführen. Um dies zu erreichen, muss der Systemintegrator die Servicedatei manuell ändern und die
#User=
Zeile auskommentieren, um den gewünschten Benutzer zu setzen, z. B.
User=winccoa
Projekt als Dienst mit RDB
Um ein WinCC OA Projekt als Dienst mit RDB unter Linux zu betreiben, müssen Sie in der
Datei /etc/systemd/system/winccoa@service
die folgenden Variablen
definieren:
[Unit]
Description=WinCC OA project '%i'
[Service]
ExecStart=/opt/WinCC_OA/3.20/bin/WCCILpmon -proj %i
ExecStop=/opt/WinCC_OA/3.20/bin/WCCILpmon -proj %i -stopWait
Environment="ORACLE_HOME=/disc/oracle/product/19.3.0.0/Db_1"
[Install]
WantedBy=multi-user.target