Installation on Linux
This article guides you through the installation process of the ABB Ability™ History on Linux. The article covers installation on Debian-based distributions, as well as on Arch Linux.
Currently, ABB Ability™ History the installation packages are only available within ABB's intranet, but they are planned to be released on a public internet server at a later date.
As part of the ABB Ability™ History like is written in managed code, you will need to install one of the managed code frameworks. There are currently two versions of the managed components provided — one set targeting Microsoft's .NET Core and another set targeting Mono framework. The .NET Core version is a bit more lightweight and does not include all the functionality (like Vtrin GUI). Although at the time of writing the .NET Core version is a bit more unstable and might require more fine-tuning, it is aimed that in the future it will be the officially supported version (which does not mean that Mono could not be officially supported as well). Both Mono and .NET Core versions can co-exist in the same machine, so you can easily try them both.
There are multiple versions of packages available, the Main and QA are mainly for testing purposes and then versions with a version number like 5.2 that are production releases.
Currently, there is no way to create an RTDB database within ARM-based Linux. You need to create the database in Windows or x86/x64 Linux and copy it over. The default database location is
/var/lib/rtdbdata.
Supported distributions and platforms
Summary of supported distributions:
| Distro name | Platform(s) |
|---|---|
| Arch Linux | x86_64 |
| Arch Linux ARM | armv7h, aarch64 |
| Debian Stretch | x86, x86_64, armv7h, aarch64 |
| Debian Buster | x86, x86_64, armv7h, aarch64 |
| Fedora 27+ |
Debian versions might, but are not guaranteed to work on other Debian based distributions, like Ubuntu as long as the correct set of packages is used. To find the Debian version the installed Ubuntu is based on top of, please check /etc/debian_version. Currently, there is a known issue with Ubuntu 18.04 that prevents OPCUAClient from starting up due to incorrect OpenSSL version shipped with Ubuntu (Debian Buster ships with 1.1.1, while Ubuntu 18.04 has 1.1.0 based).
Arch Linux support also covers all other Arch-based distributions like Manjaro. While not guaranteed, it is not expected that there are similar problems as with Ubuntu as Arch philosophy of versioning is fundamentally different from Debian's.
Installation on Debian
Prerequisites
You need to be able to access the internet and install packages to the Linux system. To access ABB's repository, you will need to set up your package management system's proxy (/etc/apt/apt.conf) the following way.
Acquire::http::Proxy::cpmplus-repository.abb.com DIRECT;
Acquire::http::Proxy "http://access1109.cws.sco.cisco.com:8080";
The package configuration should have main and updates components in Debian. Some systems deployed by ABB IS seem to lack the "main" repository for some reason. So a line similar to this should be in the /etc/apt/sources.list.
deb http://deb.debian.org/debian stretch mainAdd the repository
To use the Main build, run the following command as root, it will update your package manager with our repository:
echo "deb [trusted=yes] https://cpmplus.net/D809E078-AAD4-40E8-9636-B9BE0D86AF48/debian/ stretch main" | sudo tee /etc/apt/sources.list.d/cpmplus.listInstead of HTTPS, you may want to use HTTP. If you want to use HTTPS, you need to install the ABB root certificate and also the intermediate certificates as trusted root certificates.
Installing Mono versions
The Mono installation method varies between different versions of Debian. Debian buster contains the supported version of mono currently and no further actions are needed. For Debian Stretch, the included mono is too old. For that version, you need to add the repository as described in the next step. The main branch version in mono repo is now at version 6, which has an issue and cannot be used.
Preliminary Step On Debian Stretch
When using Mono on Debian Stretch, the version 5.16 or newer is required from outside sources (Debian Buster has 5.18 in its repo, so this step should NOT be executed), see instructions. If you are using Ubuntu instead of Debian, you can follow instructions from the Ubuntu tab. Ubuntu universe repositories also have mono-devel but its older version. Make sure it doesn't conflict with the 5.16 from mono repositories.
When adding the Mono Project GPG key, it might be necessary to add the following option to the
apt-keycommand right after the --keyserver xxx parameter:--keyserver-options http-proxy=http://access1109.cws.sco.cisco.com:8080
On all Debian versions
Update the package metadata and install the packages by running the following commands as root.
sudo apt-get update
sudo apt-get install cpmplushistorymonoThe Mono based ABB Ability™ History is installed to /usr/share/cpmplus/mono.
Installing .NET Core versions
When using .NET Core, version 2.2 or newer is required. You can use a pre-installed version, a version installed by you from Microsoft repositories, or you can use ABB Ability™ History packaged version of the .NET Core from the cpmplusdotnerruntime package. To support the pre-installed .NET runtime the cpmplusdotnetruntime package is NOT a dependency for any of the other ABB Ability™ History packages, although the .NET runtime is required. To install ABB Ability™ History and .NET runtime from ABB Ability™ History repositories run the following commands (omit the cpmplusdotnetruntime if you want to install it separately):
sudo apt-get update
sudo apt-get install cpmplusdotnetruntime cpmplushistoryThe .NET Core based ABB Ability™ History is installed to /usr/share/cpmplus/netcore.
Uninstalling
It is possible to uninstall each package separately. Their dependency definitions should notify if it's not possible to remove some packages. Package is removed with apt-get remove <package> or apt-get remove --purge <package>. The difference is that --purge also removes the configuration files. With remove, the configuration should remain and get reused if reinstalled.
sudo apt-get remove cpmplushistoryIf you first install the whole meta package and then try to remove one of the installed dependencies, it should not allow that.
sudo apt-get install cpmplushistory
sudo apt-get remove cpmplusvtrinlibInstallation on Arch Linux
Add the repository
Run the following command as root:
echo -e '[abb_cpm_rnd]
SigLevel = Optional TrustAll
Server = https://cpmplus.net/D809E078-AAD4-40E8-9636-B9BE0D86AF48/arch/$arch' >> /etc/pacman.confInstead of HTTPS, you may want to use HTTP. If you want to use HTTPS, you need to install the ABB root certificate and also the intermediate certificates as trusted root certificates.
Installing Mono versions
After adding the repository URL, update the package metadata, and install the packages by running the following commands as root:
pacman -Syu
pacman -S cpmPlusHistoryMono-MainThe Mono based ABB Ability™ History is installed to /usr/share/cpmplus/mono.
Installing .NET Core versions
x64 platform
After adding the repository URL, update the package metadata, and install the packages by running the following commands as root:
pacman -Syu
pacman -S cpmPlusHistory-MainThe .NET Core based ABB Ability™ History is installed to /usr/share/cpmplus/netcore.
ARM platforms
As Arch Linux ARM does not currently provide an installation package for .NET Core, you need to install it manually or use a package from the ABB Ability™ History repository. In order to support the pre-installed .NET runtime, the "cpmplusdotnetruntime" package is NOT a dependency for any of the other ABB Ability™ History packages, although the .NET runtime is required. To install ABB Ability™ History and .NET runtime from ABB Ability™ History repositories run the following commands (omit the "cpmplusdotnetruntime" if you want to install it separately):
pacman -Syu
pacman -S cpmPlusdotnetruntime cpmPlusHistory-MainThe .NET Core based ABB Ability™ History is installed to /usr/share/cpmplus/netcore.
Upgrading
Note: Starting from 5.3_25.05 version, manually upgrading the database is no longer mandatory. The upgrade is now performed automatically if there's any changes found.
To upgrade the software, stop the RTDB service:
sudo systemctl stop rtdb@-var-lib-rtdbdataUpgrade the product to new version using the package manager commands of the distribution.
sudo apt-get update
sudo apt-get upgradesudo pacman -SyuIf in Manjaro, the update fails to some Manjaro specific packages you may need to run Manjaro's tool pamac update
Upgrade the database with the following command:
runcpm RTDB_Upgrade_Database /var/lib/rtdbdata/
The command is able to upgrade the RTDB 5.2 and later version database to the current version. It updates the TableDefinition structure of all standard RTDB database tables and copies any tables that are missing from the database, and loads new UIClass and UIString settings.
Note: Upgrading of RTDB 5.2 or RTDB 5.3_20.3 databases to the current version is mandatory because of the structure changes done to AlarmLog and EventEngineering tables (in 5.3_20.04 version) and for CurrentValue* tables (in 5.3_19.11 version).
To upgrade a system that runs on other CPU than x86 and x64, you need to copy the database to a system where the upgrade procedure is available (can be upgraded also in a Windows machine).
After done with upgrade, you can restart the service:
sudo systemctl start rtdb@-var-lib-rtdbdataTroubleshooting
If you are unable to fetch some archives and error 404 received when running apt-get install cpmplushistorymono, you can try to remove contents of /var/lib/apt/lists directory and then updating the package metadata:
sudo rm -rf /var/lib/apt/lists/*
sudo apt-get updateInstalling Software
Service Configuration
If you wish to see further information of system configurations, please see further guidance here Service configuration on system.
HTTP Certificate
If you wish to find information on how to install HTTP Certificate, please find installation guide here Installing an HTTPS certificate.
Vtrin Server
If you wish to find information on how to configure Vtrin Server, please find installation guide here Configuring Vtrin Server.
ABB Root Certificate
If you wish to find information on how to install ABB Root certificate, please find installation guide here Installing the ABB root certificate.
Updated 5 months ago
By now you have installed ABB Ability™ History on Linux. These selected articles will help you to keep going.
