---
title: "Quickstart: Linux and other platforms"
description: "Learn how to install and set up Geneos Netprobe on Linux, AIX, and IBM POWER8 with this comprehensive quickstart guide for optimal performance."
url: "https://docs.itrsgroup.com/docs/geneos/7.11.0/collection/netprobe/installation/quickstart-linux-and-other-platforms/index.html"
---
## Overview

The data collected by the Netprobe depends on the plug-ins you choose to run. For most cases, the Netprobe needs to be installed onto the machine or server to be monitored.


This guide walks you through the full installation and setup of a Netprobe on the following platforms:

- Linux
- Linux on IBM POWER8
- IBM AIX

To install and set up Netprobes in an orchestrated environment, see [Netprobe deployments](https://docs.itrsgroup.com/docs/geneos/7.11.0/administration/orchestrated-environments/installation-using-helm/index.html#netprobe-deployments) for more information.


**Note**


Beginning Geneos 5.1, the Collection Agent is included in the Netprobe binaries for Windows and generic Linux platforms.



## Prerequisites

Beginning Geneos version 5.0.0, this component is only compatible with other Geneos components that are version 3.6.0 or higher. For more information, see the [Geneos Compatibility Matrix](https://docs.itrsgroup.com/docs/all/geneos/7x-release/compat-matrix/).

### System requirements


The following table lays out the minimum requirements for machines running the Netprobe:

| Specification | Minimum requirement |
| --- | --- |
| CPU | Multi-core |
| Memory | 4 GB |
| NIC | 100 Mbps |
| Disk | 500 MB (Minimal); 1 GB (Standard) |
| Port | A port must be open on any system running a Netprobe. The default Netprobe port is `7036`. Each system should be visible to the Gateway. |


For more information on supported Linux and other platforms, see the [Geneos Compatibility Matrix](https://docs.itrsgroup.com/docs/all/geneos/7x-geneos-compat-matrix/index.html).

### Java requirements


Java may be required in order to run certain plug-ins. For more information, see [Application and plugin specific information in Geneos Compatibility Matrix](https://docs.itrsgroup.com/docs/all/geneos/7x-geneos-compat-matrix/index.html#application-and-plugin-specific-information).


## Download the Netprobe files


**Note**


You can download the Netprobe package either as a standard or minimal package.

- The standard package includes the Collection Agent plugins and all the other plugins for use in most scenarios. For example, `geneos-netprobe-standard-<version>-linux-x64.tar.gz`.
- The minimal package is smaller in size and does not include the Collection Agent and all its plugins. For example, `geneos-netprobe-minimal-<version>-linux-x64.tar.gz`.




On Linux platforms, you can install the Netprobe through the following:

- Through an RPM package (`geneos-netprobe-standard-<version>-linux-x64.rpm`), which you can deploy using YUM.
- Through a tarball:
  - `geneos-netprobe-standard-<version>-linux-x64.tar.gz` for Linux
  - `geneos-netprobe-<version>.linux-ppc64le.tar.gz` for Linux on IBM POWER8

On IBM AIX, you can install the Netprobe through a tarball:

- `geneos-netprobe-minimal-<version>-aix-ppc64.tar.gz`

You can get the latest binaries from [ITRS Downloads](https://resources.itrsgroup.com/downloads).


**Note**


For Geneos 5.6.x through 7.11.1, the `libcrypto.so` and `libcrypto.so.1.1` library files are not included in the `lib64` directory in the dedicated RHEL 8 and CentOS 8 Netprobe package (`geneos-netprobe-<version>-el8-linux-x64.tar.gz`).

Starting with Geneos 7.11.2, use the generic Linux x86-64 Netprobe package on RHEL 8. Dedicated RHEL 8 packages are no longer provided.




**Note**


Beginning Geneos 5.9.x, the `libssl.so.1.1` and `libcrypto.so.1.1` libraries are renamed to `libsslgeneos.so.1.1` and `libcryptogeneos.so.1.1` respectively for generic Linux and Linux on IBM POWER8 platforms to eliminate the dependency of libcurl to these libraries to reduce compatibility issues such as the following scenarios:

- When the Netprobe runs under elevated privileges in Linux, the runtime loader of Linux (`ld.so`) ignores the `RPATH` and `LD_LIBRARY_PATH`, so the Netprobe is unable to load the libraries from the `<netprobe directory>/lib64`. For the libraries to be loaded, the path to `<netprobe directory>/lib64` has to be added to the trusted paths of `ld.so`. This can cause compatibility issues for other applications that run on the same machine. For more information, see [Run Netprobe under elevated privileges in Linux in Quickstart: and other platforms](#run-netprobe-under-elevated-privileges-in-linux).
- Files are loaded alphabetically in `/etc/ld.so.conf.d/*` when `/usr/lib64` or any library folder that has OpenSSL libraries is loaded before the `netprobe conf`. These libraries are not packaged with Netprobe but are in the `/usr/lib64` directory. Therefore, they might not be compatible.



## Install a new Netprobe

You can install a Netprobe in two ways:

- [Deploying the RPM package](https://docs.itrsgroup.com/docs/geneos/7.11.0/collection/netprobe/installation/quickstart-linux-and-other-platforms/index.html#deploy-the-rpm-package)
- [Unpacking the tarball](https://docs.itrsgroup.com/docs/geneos/7.11.0/collection/netprobe/installation/quickstart-linux-and-other-platforms/index.html#unpack-the-tarball)

### Deploy the RPM package

#### Ubuntu

Follow these steps to deploy the Netprobe RPM package on Ubuntu.

1. Install `fpm` and its dependencies.

```
sudo apt update
sudo apt install -y ruby ruby-dev build-essential rpm
sudo gem install fpm
```

2. Generate a `.deb` file.

Convert the Netprobe RPM package to a `.deb` file by using `fpm`:

```
RPM_FILE=<np rpm package name>.rpm
DEB_VERSION=$(rpm -qp --queryformat '%{VERSION}' "$RPM_FILE" | tr '_' '-')
DEB_ITERATION=$(rpm -qp --queryformat '%{RELEASE}' "$RPM_FILE" | tr '_' '-')
fpm --no-auto-depends -s rpm -t deb --version "$DEB_VERSION" --iteration "$DEB_ITERATION" "$RPM_FILE"
```

Example:

```
fpm --no-auto-depends -s rpm -t deb --version 7.10.0 --iteration 1.el7-9 geneos-netprobe-standard-7.10.0-linux-x64.rpm
```

This creates a `.deb` file in the current directory (for example, `geneos-netprobe_7.10.0-1.el7-9_amd64.deb`). The exact file name depends on the RPM version and metadata.


**Note**

 For `netprobe-standard`, conversion can take several minutes depending on system performance. Use `fpm` rather than `alien`, which can take a very long time for large Netprobe packages.

Geneos RPM release strings use underscores (for example, `1.el7_9`). Debian versions don't allow underscores, so you must pass `--version` and `--iteration` with hyphens (for example, `7.10.0-1.el7-9`). 


3. Install the Netprobe.

```
sudo dpkg -i <geneos-netprobe_<version>_amd64>.deb
```

Example:

```
sudo dpkg -i geneos-netprobe_7.10.0-1.el7-9_amd64.deb
```

This installs the Netprobe under `/opt/itrs/geneos`.

4. Run the Netprobe executable in the background.

```
cd /opt/itrs/geneos/<version>/netprobe
./netprobe.linux_64 &
```

This runs the Netprobe on its default port (`7036`) and prints log entries to stdout.

5. Uninstall if needed.

`apt remove` doesn't fully remove the Netprobe. To uninstall it completely, use `apt purge`:

```
sudo apt purge geneos-netprobe
```

#### Other Linux operating systems

Follow these steps to deploy the Netprobe RPM package in other Linux operating systems. You can opt to use YUM or a similar package manager to deploy the RPM package:

1. Create or update the local YUM repository.

```
[root@server1 ~]# mv <rpm-dir>/* <repo-dir>/
[root@server1 ~]# chown -R root.root <repo-dir>/
[root@server1 ~]# createrepo <repo-dir>/
[root@server1 ~]# chmod -R o-w+r <repo-dir>/
```

The `<rpm-dir>` contains the RPM package to be added to the local YUM repository.

2. Create or update the `/etc/yum.repos.d/local/repo` folder.

```
[local]
name=<repo-name>
baseurl=file://<repo-dir>
enabled=1
gpgcheck=0
```

3. Install or upgrade the Netprobe.

```
yum install geneos-netprobe
```

4. Run the Netprobe executable in the background:

```
./netprobe.linux_64 &
```

This runs the Netprobe on its default port (`7036`) and prints its log entries on `stdout`.


**Note**

  
If you want to run the Netprobe on a different port, customise its target Netprobe directory, as well as change other variables, see [Netprobe variables](https://docs.itrsgroup.com/docs/geneos/7.11.0/collection/netprobe/configuration/netprobe-variables/index.html).

You can also create and configure a start script to set Netprobe variables when you start the Netprobe. For guidance, see [Start the Netprobe](#start-the-netprobe).




**Success**


The Netprobe is now running as a process. You may stop or start the Netprobe at any time.



5. Uninstall if needed.

To uninstall the Netprobe, use the following command:

```
yum remove geneos-netprobe
```

### Unpack the tarball

1. Download the tarball:

- `geneos-netprobe-standard-<version>-linux-x64.tar.gz` for Linux platforms
- `geneos-netprobe-<version>.linux-ppc64le.tar.gz` for Linux on IBM POWER8
- `geneos-netprobe-minimal-<version>-aix-ppc64.tar.gz` for IBM AIX

2. Using the Linux console, unpack the tarball into your desired Netprobe working directory. For example:

```
gunzip geneos-netprobe-5.0.x.linux-x64.tar.gz
tar -C /netprobe-directory -xvf geneos-netprobe-5.0.x.linux-x64.tar
```


**Note**

  
Once the tarball is unpacked, it is no longer needed and can be deleted.



3. Run the Netprobe executable in the background:

```
./netprobe.linux_64 &
```

This runs the Netprobe on its default port (`7036`) and prints its log entries on `stdout`.


**Note**

  If you want to run the Netprobe on a different port, customise its target Netprobe directory, as well as change other variables, see [Netprobe variables](https://docs.itrsgroup.com/docs/geneos/7.11.0/collection/netprobe/configuration/netprobe-variables/index.html).

You can also create and configure a start script to set Netprobe variables when you start the Netprobe. For guidance, see [Start the Netprobe](#start-the-netprobe).




**Success**


The Netprobe is now running as a process. You may stop or start the Netprobe at any time.



## Upgrade an existing Netprobe

### Stop the Netprobe process

Before you upgrade a Netprobe, make sure to stop the Netprobe first:

1. On the terminal, run `ps` to find the `pid` for the Netprobe process. By default, the process name is `netprobe.linux_64`.
2. Stop the Netprobe process using the `kill` command. In the following example, replace `<pid`> with the process number of the Netprobe process you want to terminate:

```
kill <pid>
```

You can upgrade the Netprobe using either the RPM package or the tarball.

### Upgrade the Netprobe using the RPM package

When you upgrade the Netprobe using the RPM package, do the following:

1. Check that the Netprobe process is stopped. For guidance, see [Stop the Netprobe process](#stop-the-netprobe-process).
2. Follow the steps in [Deploy the RPM package](#deploy-the-rpm-package), and make sure to provide the same `<repo-dir>` from when you first installed the Netprobe.


**Success**

  
The Netprobe is upgraded and is once more running as a process. You may stop or start the Netprobe at any time.



### Upgrade the Netprobe using the tarball

When you upgrade the Netprobe using the tarball, do the following:

1. Check that the Netprobe process is stopped. For guidance, see [Stop the Netprobe process](#stop-the-netprobe-process).
2. Follow the steps in [Unpack the tarball](#unpack-the-tarball). However, it is recommended to unpack the tarball in a different directory from where you first unpacked the Netprobe tarball.
3. Copy over the configuration files, scripts, and other local resources that the Netprobe uses from the old working directory to the new working directory.

**Note**

  
Upgrading via tarball in the same directory does not remove old files from the previous version. This step ensures that you get a clean upgrade and allows you to rollback to the old directory if you encounter any issue while upgrading.



4. Run the Netprobe executable in the background once more:

```
./netprobe.linux_64 &
```


**Success**

  
The Netprobe is upgraded and is once more running as a process. You may stop or start the Netprobe at any time.



## Start the Netprobe

On Linux and similar platforms, you have to start the Netprobe on the machine after installing it. There are two ways that you can do this:

### Command line

In a shell, navigate to the Netprobe working directory and run `netprobe.linux_64`. For example:

```
./netprobe.linux_64 -setup <full path or URL to the file> &
```

The Netprobe process is run in the background as a best practice.

### Startup script

A startup script enables you to pre-set any Netprobe settings into a script before running the Netprobe. You can find a template for it in `templates/start_netprobe.tmpl`.

Once you have set the startup script to your preferences, you can run it to start the Netprobe. For example:

```
./start_netprobe
```

### Start options

- For guidance in starting a Self-Announcing Netprobe, see [Manage Self-Announcing Netprobes](https://docs.itrsgroup.com/docs/geneos/7.11.0/collection/netprobe/configuration/manage-self-announcing-netprobes/index.html).
- For guidance in starting a floating Netprobe, see [Manage floating Netprobes](https://docs.itrsgroup.com/docs/geneos/7.11.0/collection/netprobe/configuration/manage-floating-netprobes/index.html).
- For more information on options you can set on the Netprobe, see the following:
  - [Netprobe Command-line Options](https://docs.itrsgroup.com/docs/geneos/7.11.0/collection/netprobe/configuration/netprobe-command-line-options/index.html)
  - [Netprobe variables](https://docs.itrsgroup.com/docs/geneos/7.11.0/collection/netprobe/configuration/netprobe-variables/index.html)

## Considerations for Linux

### Library dependencies

The Linux version of the Netprobe depends on certain libraries to run. Not all libraries are packaged with the Netprobe. Therefore, you may need to install these libraries independently. The Netprobe should be able to use the package versions that are officially supported for a given Linux distribution and available in their respective package managers.

The following tables list the library dependencies for common Linux distributions:

#### RHEL 10

| Library Name | Package Name |
| --- | --- |
| libssl.so.3 | openssl-libs |
| libcrypto.so.3 | openssl-libs |
| libcrypt.so.2 | libxcrypt |
| libresolv.so.2 | glibc |
| libz.so.1 | zlib |
| libm.so.6 | glibc |
| libc.so.6 | glibc |

#### RHEL 9

| Library Name | Package Name |
| --- | --- |
| libssl.so.3 | openssl-libs |
| libcrypto.so.3 | openssl-libs |
| libcrypt.so.2 | libxcrypt |
| libresolv.so.2 | glibc |
| libz.so.1 | zlib |
| libm.so.6 | glibc |
| libc.so.6 | glibc |

#### RHEL 8

For Geneos 7.11.2 and later, use the generic Linux x86-64 package.

| Library Name | Package Name |
| --- | --- |
| libutil.so.1 | glibc |
| libnsl.so.1 | libnsl |
| libpthread.so.0 | glibc |
| libdl.so.2 | glibc |
| libcrypt.so.1 | libxcrypt |
| libresolv.so.2 | glibc |
| libz.so.1 | zlib |
| librt.so.1 | glibc |
| libm.so.6 | glibc |
| libc.so.6 | glibc |

For Geneos 7.11.1 and earlier, use the dedicated RHEL 8 package.

| Library Name | Package Name |
| --- | --- |
| libssl.so.1.1 | openssl-libs |
| libcrypto.so.1.1 | openssl-libs |
| libutil.so.1 | glibc |
| libnsl.so.2 | libnsl |
| libpthread.so.0 | glibc |
| libdl.so.2 | glibc |
| libcrypt.so.1 | libxcrypt |
| libresolv.so.2 | glibc |
| libz.so.1 | zlib |
| librt.so.1 | glibc |
| libm.so.6 | glibc |
| libc.so.6 | glibc |

#### AIX


**Note**

 - Starting Geneos 7.9.x, Geneos components will use Open XL V17.1.4 or higher.
- The `bos.<fileset>` filesets are part of the Base Operating System while xlC and libc++ filesets are part of the XL C/C++ Runtime package. 


| Library name | Fileset |
| --- | --- |
| libc.a | bos.rte.libc |
| libpthread.a | bos.rte.libpthreads |
| libC.a | xlC.rte |
| libc++.a | libc++.rte |
| libperfstat.a | bos.perf.libperfstat |
| libcrypt.a | bos.rte.security |
| libpthreads.a | bos.rte.libpthreads |
| libcfg.a | bos.rte.libcfg |
| libodm.a | bos.rte.odm |
| liblvm.a | bos.rte.lvm |
| libcorcfg.a | bos.wpars |
| libsrc.a | bos.rte.SRC |

### Security-Enhanced Linux

When Security-Enhanced Linux (SELinux) is running in `Enforcing mode`, it may deny certain functions of Geneos depending on the implemented configurations and policies. To see which functions SELinux denies, check the audit log. The log is typically located in `/var/log/audit.log`, where the log type entry is `AVC`. The audit log provides the details of any denied access.

For example, denied connection to the TCP port.
If you experience issues related to this mode,  you may opt to disable SELinux, or create policy modules to grant the required access. Please contact your administrator or security team for assistance.

### Run Netprobe under elevated privileges in Linux


**Note**

 The instructions outlined below do not apply to RHEL 8 (packaged with 7.11.1 or earlier) and RHEL 9 as the Netprobe on these packages uses native libraries. 


When the privileges of Netprobe is raised (e.g. via setcap/setuid), the runtime loader of Linux (`ld.so`) will not be able to load the libraries from the `<netprobe directory>/lib64`, as it will ignore `RPATH` and `LD_LIBRARY_PATH`. This is the way `ld.so` has been designed.

In order for the libraries to be loaded, the path to the `lib64/startup` folder has to be added to the trusted paths of `ld.so`. This can be done by doing the steps below, as root user.

1. Create a conf file in `/etc/ld.so.conf.d/`. The conf file should contain the path to the `lib64/startup` folder inside your netprobe directory.

```
[root@localhost netprobe]# echo /home/inbound/binaries/netprobe/geneos-netprobe-5.9.0.linux-x64/netprobe/lib64/startup > /etc/ld.so.conf.d/netprobe.linux_64.conf
```

2. Rebuild the ld runtime cache by executing ldconfig.

```
[root@localhost netprobe]# ldconfig
```

After these steps, the Netprobe can be run using the desired user and can load the runtime libraries without issues.

