WinCC OA as Linux Service
You can configure WinCC OA as service and start a project also when a user is not logged in (see also WinCC OA as service) under Linux just as under Windows. The PMON with the defined project will be started when the system is started.
If WinCC OA is used as service and SNMP is used, the user account that
is used has to possess write rights to the directories
<proj_path>/log
and
<proj_path>/db
.
Under Linux, there are multiple possibilities to configure WinCC OA as
service. We recommended to use the systemd
service file.
systemd Service File
During the rpm installation of WinCC OA the file
/etc/systemd/system/winccoa@.service
is created. This file is
only used by the following systemctl
commands (and
systemd
). The projectName to be used is simply given as an
"instance" name to it.
There is usually no need for a system integrator to change the file.
Activate Service
When a system integrator now wants to define a specific (already registered) WinCC OA project to be automatically started on system boot, he simply issues the following command:
systemctl enable winccoa@projectName
Deactivate Service
To disable such a configuration again, one issues:
systemctl disable winccoa@projectName
Manually Start Project
To start such a project manually:
systemctl start winccoa@projectName
Manually Stop Project
To stop such a project manually:
systemctl stop winccoa@projectName
Request Status
To request current status:
systemctl status winccoa@projectName
System Log
To view the systems log (journal):
journalctl
As seen above, the winccoa@.service
file is not manually changed,
but systemd manages to create symbolic links to that file which include the
projectName.
Run Project for Specific User
Often it is desired to run a project under a specific user. To do this, the system integrator needs to modify the service file manually and uncomment the
#User=
line to set the desired user, to e.g.
User=winccoa
Definition of the project that should be started
After setting the service the file /etc/winccoa.conf
has to be
edited and the entry "PVSS_II = ..." has to be adjusted for the desired project.
Restart the system (or change the run level) and check after the login whether the defined project was started during the boot process. All WinCC OA processes are started as "root".
Before you restart the computer, check whether all UI managers of the project that should be started, are provided with the start type "manual". If the managers do not have this start type, adjust the start type of the UIs in the WinCC OA console (see Administration of managers). The start type "always" starts the managers always. In order to start a UI automatically, specify the start option -display :0.0 for the user interface.
Project as a service with RDB
To run a WinCC OA Project as a service with RDB under Linux you have to define the
following variables in the file
/etc/systemd/system/winccoa@service
[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