Skip to content

Linux

This guide covers installing and configuring the Furl agent on Linux endpoints. For shared FAQs and general troubleshooting, see the Agent overview.

  • Operating system: Ubuntu and Debian (with systemd) are the currently supported distributions. See Supported distributions below.
  • Init system: systemd
  • Architecture: x86-64 (amd64) or ARM64 (arm64)
  • Disk space: 3 GB minimum
  • Prerequisites: tar and gzip (present on essentially all server installs)
  • Permissions: root (via sudo) required for installation; the agent daemons run as root

The Linux agent is supported on Ubuntu and Debian running systemd. Both amd64 and arm64 builds are published.

Other Linux distributions (RHEL/Rocky/Alma/Fedora, and non-systemd init systems such as OpenRC, Upstart, and SysV) are not supported at this time. Support for additional platforms is planned — contact support@furl.ai if you have a specific requirement.

Download two things from your Furl agent settings page (Settings → Agent):

  1. The installer for your architecture — a self-extracting installer, furl-agent-[version]-linux-[arch].run (where [arch] is amd64 or arm64).
  2. The Linux agent configurationfurl-agent.conf, the signed configuration data that establishes agent connectivity. Download it with Download Linux config.

You can hand the configuration to the installer in one step with --config (recommended), or place it manually afterward. When a configuration is present at install time, the installer starts the agent automatically.

First make the installer executable:

Terminal window
chmod +x furl-agent-[version]-linux-[arch].run

Then run it as root. Passing --config installs the configuration and starts the services in a single step:

Terminal window
sudo ./furl-agent-[version]-linux-[arch].run --config /path/to/furl-agent.conf

The path you pass to --config must be an absolute path (for example /root/furl-agent.conf), not a relative path such as ./furl-agent.conf.

If you run it without --config, the installer registers and enables the services but leaves them stopped until a configuration is in place (see Provide the configuration separately):

Terminal window
sudo ./furl-agent-[version]-linux-[arch].run

Installer options:

  • --config <path> — install the given furl-agent.conf to /etc/furl/agent.conf. The path must be absolute.
  • --no-start — register and enable the services but don’t start them now
  • --no-enable — register the services only (don’t enable on boot or start)

If you installed without --config, place the configuration and then start the services:

Terminal window
sudo install -o root -g root -m 0640 furl-agent.conf /etc/furl/agent.conf
sudo systemctl start furl-telemetry furl-management
Terminal window
sudo systemctl status furl-telemetry furl-management
sudo journalctl -u furl-telemetry -u furl-management -f

The agent logs to the systemd journal.

For fleets, deliver the installer and configuration with your existing configuration-management or software-distribution tooling (Ansible, cloud-init, a package/artifact repository, etc.). The pattern is the same as a manual install:

  1. Distribute the architecture-appropriate .run and the furl-agent.conf to each host.

  2. Make the installer executable (chmod +x) and run it as root with --config (an absolute path):

    Terminal window
    sudo ./furl-agent-[version]-linux-[arch].run --config /path/to/furl-agent.conf

Best practices:

  • Match the installer architecture (amd64 / arm64) to the host.
  • Deploy the same signed furl-agent.conf your dashboard provides — it carries the connectivity settings the agent needs to enroll.
  • Pilot on a small group before a wide rollout.
How do I know the agent is running?

Check the two services:

Terminal window
systemctl is-active furl-telemetry furl-management

Both should report active. For detail, use systemctl status furl-telemetry furl-management.

The services aren’t running

Solutions:

  1. Confirm the configuration is present at /etc/furl/agent.conf. If it’s missing, the services won’t start — install it and start them (see Provide the configuration separately).

  2. Review the logs for specific errors:

    Terminal window
    sudo journalctl -u furl-telemetry -u furl-management -f
  3. Verify network connectivity to Furl’s services.

Installation fails with “Required tool not found”

The self-extracting installer needs tar and gzip. Install them for your distribution and re-run:

Terminal window
# Debian / Ubuntu
sudo apt-get install -y tar gzip
Where are the log files?

The agent logs to the systemd journal:

Terminal window
sudo journalctl -u furl-telemetry -u furl-management
How do I uninstall the agent?

On agent version 1.5.0 and above, an uninstall script is installed on the endpoint at /opt/furl/uninstall.sh:

Terminal window
sudo /opt/furl/uninstall.sh # removes the agent, keeps /etc/furl (enrollment config)
sudo /opt/furl/uninstall.sh --purge # also removes /etc/furl

This stops and deregisters the furl-telemetry and furl-management services and removes the agent files under /opt/furl and /var/lib/furl.

On earlier versions, the uninstall script is not included on the endpoint — contact support@furl.ai to request it.