Note: Perform the installation on your Linux system using root access or with an account with sudo privileges.
Copy OASEngine files to Linux server/device
After downloading the Linux OAS Engine from the OAS Downloads page extract the contents of the .ZIP file (e.g. oas-linux.zip) to any directory of the Linux operating system. The contents can be copied to the target Linux machine directly, or you can copy the .ZIP archive and unzip on the Linux machine itself.
View the following video to view the following steps implemented with Ubuntu on a Raspberry Pi device.
Run the installation script to properly configure the OASEngine
Log into your Linux machine with an account that has root or sudo permissions. Either connect to the machine from an SSH session, or open a terminal on the machine itself, if you’re using a GUI.
Navigate to the daemon directory within the installation path and locate the oas_install.sh script. In this example, we’re using the ARM64 installation on a Raspberry Pi 4 running Ubuntu, but the same instructions and commands apply to any Linux distribution.
Ensure the installation script is executable, then run the installation using the following commands:
sudo chmod +x oas_install.sh sudo ./oas_install.sh
NOTE: When you execute any script on Linux and receive an error such as “No such file or directory”, this may be resolved by converting the file to unix-type line breaks. This can be done with the command dos2unix which is installed using the following command on many Linux distributions:
sudo apt update
sudo apt install -y dos2unix
You will be prompted to enter the password for the root or administrator currently logged in if you don’t currently have sudo permissions.
The installation script will next walk you through the following:
- Creating or selecting a user account for the OASEngine service. Using the defaults, an account called oasuser will be created.
- Installing the service in the selected user’s account
- Optionally starting the newly installed service
The OASEngine is now installed as a user service or daemon under the account selected or created (default: oasuser). This service is managed by systemd and can be controlled or monitored like any systemd service. By default, the OASEngine is now configured to start up when the machine reboots.
On a Windows PC, open the OAS Configuration Application and connect to the running Linux service for configuring and controlling the server. Ensure that the PC Firewall allows TCP communication on port 58727. For more information on configuring an OAS installation see the documentation for the OAS Configuration Manager application.
Included with the OAS installation script is an uninstaller, as well. This file is oas_uninstall.sh and located in the same directory as the installation script. Similarly, you will need to mark this file for execution before running it. Use the following commands to mark for execution and then start the uninstaller:
sudo chmod +x oas_uninstall.sh sudo ./oas_uninstall.sh
The uninstaller script will attempt to back out the installation by performing the following actions:
- Stop the OASEngine service
- Optionally remove the user account created during installation
- Remove all installation files
When prompted to remove the OAS user account, you can choose ‘no’ to keep the account intact.
Confirm that the service is running
Log into the Linux machine using the credential created during the installation. By default this is oasuser. Then, execute the following command to determine the oas-engine status:
systemctl --user status
This should return something similar to:
State: running Jobs: 0 queued Failed: 0 units Since: Mon 2021-03-01 16:34:33 UTC; 3 weeks 6 days ago CGroup: /email@example.com ├─oas-engine.service │ └─2214 /home/oasuser/oas-linux-arm64/OASEngine
If you do not see the oas-engine.service listed as running, you can begin troubleshooting by attempting to run the OASEngine manually and checking for errors on startup in the console. To do this, locate the OASEngine executable within the installation directory for the user. This will be in the user’s home directory and named oas-linux, oas-linux-arm, or oas-linux-arm64 depending on the version installed. Within this directory, execute the following:
This will directly start an instance of the service and output feedback on status. If any errors are reported on startup, make note of them and contact OAS Support for more information.
Managing the Service Installation
The installation script created a service configuration file that can be modified with any additional parameters, such as restart behavior. This is particularly useful if you want to automatically restart the OASEngine in the unlikely event that the process is killed or interrupted. You can locate the service configuration file on following path when logged in as the selected user:
The contents of the file are the following, with the paths adjusted for the specific user and depending on the specific Linux distribution you are using:
[Unit] Description=Open Automation Software Engine [Service] ExecStart=/home/oasuser/oas-linux-arm64/OASEngine WorkingDirectory=/home/oasuser/oas-linux-arm64 SyslogIdentifier=oas-engine PrivateTmp=false KillMode=process [Install]
Once you log into the Linux machine as the selected user, you can gracefully stop and start the service using the following commands:
Stop the service:
systemctl --user stop oas-engine
Start the service:
systemctl --user start oas-engine