Skip to content

Prerequisites

Complete these prerequisites before proceeding with either online or offline installation of ForensiQ.

  1. Review the software and hardware requirements and choose your deployment setup.

  2. An SSH server must be running on the installation target. The installation account must be able to log in over SSH and use sudo to become root.

  3. On Indexer and Standalone nodes, complete storage preparation before starting the installer.

  4. Prepare the operating-system dependencies on every target node before starting either installer. The curl and apt commands below require access to the listed repositories.

    For offline installation, run them while connected, or install equivalent packages and dependencies from your offline package media or internal repository.

    The offline installer bundle does not include these operating-system packages.

Check this machine

For an online installation, run the prerequisite checker on each target node, as the account that will run the installer:

curl -fsSLo prerequisite-check.sh https://professional.irisity.com/docs/r33/prerequisite-check.sh && \
bash prerequisite-check.sh standalone

Replace standalone with indexer or core to match the node. After each fix, run it again with bash prerequisite-check.sh <role>. If the terminal says curl: command not found, first run sudo apt update && sudo apt install curl.

Start the checker with bash and without sudo. If the installer will also run as root, add --accept-root. When sudo asks for a password, enter your Linux account password; nothing appears while you type. The checker does not install anything or change the system configuration.

Result Meaning
PASS This prerequisite is ready.
NOTE Ready in this session; read the note if the installer runs elsewhere.
WARN Review this before installing; it could not be fully verified.
FAIL Fix this before installing.
SKIP Not needed for this role, or another problem must be fixed first.

For each problem, follow Next step and the linked instructions; the summary at the end shows where to start. If you need help, the checker offers a report to copy to your support contact or an AI assistant. Review it before sharing. To also save the output and the report to a file:

bash prerequisite-check.sh standalone --report 2>&1 | tee prerequisite-report.txt

bash prerequisite-check.sh --help lists all options. The checker tests this machine only; remote SSH login, storage preparation and Docker Hub credentials still need to be verified separately.

Operating-system dependencies

1. System update

Make sure the operating system is up to date and that the required CLI tools are installed.

sudo apt update && \
sudo apt -y install curl lsb-release && \
sudo apt upgrade -y && \
sudo reboot

2. Add Docker GPG key and repository

sudo mkdir -p /etc/apt/keyrings && \
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo tee /etc/apt/keyrings/docker.asc > /dev/null && \
sudo chmod a+r /etc/apt/keyrings/docker.asc && \
printf '%s\n' \
'Enabled: yes' \
'Types: deb' \
'URIs: https://download.docker.com/linux/ubuntu' \
"Suites: $(lsb_release -cs)" \
'Components: stable' \
'Architectures: amd64' \
'Signed-By: /etc/apt/keyrings/docker.asc' | \
sudo tee /etc/apt/sources.list.d/docker.sources > /dev/null

3. (Indexer/Standalone nodes only) Add NVIDIA Container Toolkit GPG key and repository

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo tee /etc/apt/keyrings/nvidia-container-toolkit.asc > /dev/null && \
sudo chmod a+r /etc/apt/keyrings/nvidia-container-toolkit.asc && \
printf '%s\n' \
'Types: deb' \
'URIs: https://nvidia.github.io/libnvidia-container/stable/deb/amd64' \
'Suites: /' \
'Signed-By: /etc/apt/keyrings/nvidia-container-toolkit.asc' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.sources > /dev/null

4. Install required dependencies

Choose the package set that matches the node environment.

sudo apt update && \
sudo apt -y install gpg ca-certificates software-properties-common docker-ce docker-ce-cli docker-compose-plugin containerd.io python3-pip python3-venv nvidia-driver-580 nvidia-docker2 openssh-server && \
sudo reboot

Headless server installation is only supported on Ubuntu 24.04.

sudo apt update && \
sudo apt -y install --no-install-recommends gpg ca-certificates software-properties-common docker-ce docker-ce-cli docker-compose-plugin containerd.io python3-pip python3-venv linux-modules-nvidia-580-server-generic nvidia-compute-utils-580-server libnvidia-compute-580-server libnvidia-decode-580-server nvidia-utils-580-server nvidia-docker2 openssh-server && \
sudo reboot
sudo apt update && \
sudo apt -y install gpg ca-certificates software-properties-common docker-ce docker-ce-cli docker-compose-plugin containerd.io python3-pip python3-venv openssh-server && \
sudo reboot

1. System update

Make sure the operating system is up to date and that the required CLI tools are installed.

sudo apt update && \
sudo apt -y install curl lsb-release && \
sudo apt upgrade -y && \
sudo reboot

2. Add Docker GPG key and repository

sudo mkdir -p /etc/apt/keyrings && \
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo tee /etc/apt/keyrings/docker.asc > /dev/null && \
sudo chmod a+r /etc/apt/keyrings/docker.asc && \
printf '%s\n' \
'Enabled: yes' \
'Types: deb' \
'URIs: https://download.docker.com/linux/debian' \
"Suites: $(lsb_release -cs)" \
'Components: stable' \
'Architectures: amd64' \
'Signed-By: /etc/apt/keyrings/docker.asc' | \
sudo tee /etc/apt/sources.list.d/docker.sources > /dev/null

3. (Indexer/Standalone nodes only) Add NVIDIA Container Toolkit GPG key and repository

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo tee /etc/apt/keyrings/nvidia-container-toolkit.asc > /dev/null && \
sudo chmod a+r /etc/apt/keyrings/nvidia-container-toolkit.asc && \
printf '%s\n' \
'Types: deb' \
'URIs: https://nvidia.github.io/libnvidia-container/stable/deb/amd64' \
'Suites: /' \
'Signed-By: /etc/apt/keyrings/nvidia-container-toolkit.asc' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.sources > /dev/null

4. (Indexer/Standalone nodes only) Install NVIDIA CUDA keyring

curl -fsSLo /tmp/cuda-keyring_1.1-1_all.deb https://developer.download.nvidia.com/compute/cuda/repos/debian12/x86_64/cuda-keyring_1.1-1_all.deb && \
sudo dpkg -i /tmp/cuda-keyring_1.1-1_all.deb && \
sudo rm /tmp/cuda-keyring_1.1-1_all.deb

5. Install required dependencies

sudo apt update && \
sudo apt -y install linux-headers-$(uname -r) nvidia-driver cuda-drivers ca-certificates software-properties-common docker-ce docker-ce-cli docker-compose-plugin containerd.io python3-pip python3-venv nvidia-docker2 openssh-server && \
sudo reboot
sudo apt update && \
sudo apt -y install ca-certificates software-properties-common docker-ce docker-ce-cli docker-compose-plugin containerd.io python3-pip python3-venv openssh-server && \
sudo reboot

Verify dependencies and access

For indexer and standalone nodes, verify the NVIDIA driver after the reboot:

nvidia-smi

Verify that Docker is running without pulling an image from a registry:

sudo docker info

Ensure that the user running the installer can access Docker without sudo:

sudo usermod -aG docker $USER

Log out and log back in before continuing so that the group change takes effect.

Verify Docker access as the user who will run the installer:

docker info

SSH login method

Password-based SSH login is the simpler setup for this installer. Enter the installation account's SSH password when configuring the installer. If password login is disabled, ask the administrator to enable and apply PasswordAuthentication yes in the server's SSH configuration.

An existing SSH agent can be used for key-based login instead. The agent belongs to a login session: run the installer as the same user, in a session where the agent holds the key, not as another user or after sudo -i.

The checker flags potential login problems but does not attempt an SSH login. Verify that the installation account can log in to the actual target before installing.

NVIDIA driver troubleshooting

Indexer and Standalone nodes require a working driver meeting the software requirements. Installing a driver package alone does not establish that the running kernel can use every GPU.

Some GPUs, including Blackwell, require NVIDIA's open kernel modules. The required module flavor depends on the GPU. The checker reports the loaded module and checks GPU access; it does not choose the driver package for you. See NVIDIA's module-selection guidance.

If nvidia-smi fails or reports fewer GPUs than are installed:

  • Check the loaded module using cat /proc/driver/nvidia/version. The open flavor identifies itself as Open Kernel Module; a package installed on disk may differ from the module loaded before the last reboot.
  • Check sudo journalctl -k -b for NVIDIA initialization or Secure Boot errors. A proprietary module on a GPU requiring open modules can report No devices were found.
  • For DKMS installations, check dkms status and headers for uname -r. For prebuilt modules, match the running kernel, including GA versus HWE, rather than assuming the generic-kernel package covers it.
  • Follow the distribution-specific driver instructions before changing packages, and reboot after a driver/kernel update. Do not mix Ubuntu driver packages with NVIDIA-repository packages or a .run installation without reviewing the migration.

References: Ubuntu driver installation, NVIDIA driver installation.

NVIDIA container runtime

The installation commands above use nvidia-docker2 to prepare NVIDIA GPU access for Docker on Indexer and Standalone nodes. Complete the installation and reboot steps before verifying GPU access. An equivalent working GPU-container setup is also accepted by the checker.

Verify GPU access as the installation account:

docker run --rm --gpus all ubuntu:24.04 nvidia-smi

A successful host nvidia-smi does not establish container GPU access. Resolve image-download errors separately from NVIDIA runtime errors, then rerun the checker. The checker also requests the NVIDIA video capability and checks that the 64-bit libnvcuvid.so.1 driver library is readable inside the test container. This catches incomplete compute-only driver installations; it does not run an actual video decode. The headless package list above includes libnvidia-decode-580-server for this reason.

Deployment information

Have the following information ready before starting either installer:

  • Target machine IP address or hostname.
  • SSH username and password or SSH private key for the installation target.
  • Sudo password for the installation account, unless it has passwordless sudo.
  • ForensiQ deployment configuration type: standalone, core, or indexer.
  • Local networking information required by your deployment. Consult your network administrator if necessary.