Skip to content

Deploying on Linux

Supports any systemd-based distro: Ubuntu, Debian, CentOS, RHEL, Fedora, and similar. Builds are available for amd64, arm64 and armv7.

Download the package for your architecture from Deploy Agent in the dashboard, then install it with your enrollment token and hub address in the environment:

Terminal window
# Debian / Ubuntu
sudo GT_ENROLLMENT_TOKEN=<your-token> GT_HUB_URL=https://guardian.example.com dpkg -i gt-guardian-agent_<version>_amd64.deb
# RHEL / CentOS / Fedora
sudo GT_ENROLLMENT_TOKEN=<your-token> GT_HUB_URL=https://guardian.example.com rpm -i gt-guardian-agent-<version>-1.x86_64.rpm

The package installs the agent to /usr/bin/gt-guardian-agent, writes its configuration to /etc/gtguardian/config.json (readable by root only), and enables and starts the gt-guardian-agent service. It suggests smartmontools, which Guardian uses for detailed drive health.

If you install without the token, the agent is installed and enabled but not started, because it has nothing to connect with yet. Then run:

Terminal window
sudo gt-guardian-agent configure --secure --token <your-token> --hub-url https://guardian.example.com
sudo systemctl enable --now gt-guardian-agent
  1. Go to Deploy Agent in the dashboard and select the Linux / macOS tab.
  2. Copy the command shown, and run it as root (or with sudo):
Terminal window
curl -fsSL https://downloads.gtarsenals.com/install.sh?token=<your-token> | sudo bash

This downloads the agent to /usr/local/bin/gt-guardian-agent, writes its configuration to /etc/gtguardian/config.json, and installs and starts a systemd service.

The service is set to restart the agent a few seconds after it is killed (kill -9, the out-of-memory killer, a crash). A normal systemctl stop is respected and is not undone. Either way the hub tells you: see Agent health and stopped agents.

Check Agents in the dashboard. The new machine should appear within about 30 seconds. On the machine itself:

Terminal window
systemctl status gt-guardian-agent

It should show active (running).

From the dashboard, use Agents → (device) → Remove. On the machine:

Terminal window
# Package install
sudo apt remove gt-guardian-agent # keeps the agent's identity, so a reinstall does not create a duplicate
sudo apt purge gt-guardian-agent # also removes /etc/gtguardian, including the agent's key
sudo rpm -e gt-guardian-agent # RPM systems remove everything
# Script install
sudo systemctl disable --now gt-guardian-agent
sudo rm -f /etc/systemd/system/gt-guardian-agent.service /usr/local/bin/gt-guardian-agent
sudo rm -rf /etc/gtguardian
sudo systemctl daemon-reload

Removing the package announces the stop to the hub first, so a planned removal does not raise a “service was stopped” alert.