Skip to content

Installation

The Releases page has a prebuilt binary for these platforms:

Operating systemArchitectures
Linuxx86_64, arm64, arm (ARMv6)
macOSx86_64, arm64
FreeBSDx86_64
Windowsx86_64

Linux releases also include deb, rpm, apk, and Arch Linux packages. The Docker image is ghcr.io/autobrr/netronome.

You need curl and tar.

  1. Download the latest release and extract it to /usr/local/bin. The extraction step uses sudo. If you run as root, remove sudo.

    Terminal window
    arch=$(uname -m | sed 's/^aarch64$/arm64/; s/^amd64$/x86_64/; s/^armv[67]l$/arm/')
    url=$(curl -fsSL https://api.github.com/repos/autobrr/netronome/releases/latest | grep -i "browser_download_url.*_$(uname -s)_${arch}\.tar\.gz\"" | cut -d'"' -f4)
    curl -fL "$url" -o netronome.tar.gz &&
    sudo tar -C /usr/local/bin -xzf netronome.tar.gz
  2. Create a configuration file. The command writes ~/.config/netronome/config.toml.

    Terminal window
    netronome generate-config
  3. Create a systemd service. The service runs Netronome as the user in its name.

    Terminal window
    sudo tee /etc/systemd/system/netronome@.service > /dev/null <<EOF
    [Unit]
    Description=netronome service for %i
    After=syslog.target network-online.target
    [Service]
    Type=simple
    User=%i
    Group=%i
    ExecStart=/usr/local/bin/netronome serve --config=/home/%i/.config/netronome/config.toml
    [Install]
    WantedBy=multi-user.target
    EOF
  4. Enable and start the service for your user.

    Terminal window
    sudo systemctl enable --now netronome@$USER

If you install from a deb, rpm, apk, or Arch Linux package, the binary is not in /usr/local/bin. Run command -v netronome and put that path in ExecStart.

After the server starts, go to First run.

If you use the Docker image, skip this section. The image contains all the tools in the table.

Speedtest.net tests, the web interface, DNS monitors, and packet loss monitors without MTR need no external tool. The other features run a program that must be in the PATH of the user that runs Netronome.

ToolNeeded forWhere
iperf3iperf3 speed testsServer
librespeed-cliLibreSpeed speed testsServer
traceroute (tracert on Windows)The Traceroute tabServer
mtrPacket loss for each hop. Without it, packet loss monitors use ping only.Server
vnstatBandwidth dataAgent

If a tool is missing, only the feature that needs it stops with an error. The rest of Netronome continues to work.

On Linux, install the packaged tools with your package manager:

Terminal window
# Debian/Ubuntu
sudo apt-get install iperf3 traceroute mtr vnstat
# RHEL/Fedora
sudo dnf install iperf3 traceroute mtr vnstat

Get librespeed-cli from the LibreSpeed CLI releases.

On Windows, get MTR from WinMTRCmd. Netronome looks for a program with the name mtr. Name the file mtr.exe and put it in a folder in your Path.

Temperatures from CPU, NVMe, and other system sensors work in all builds. SATA and HDD temperatures and disk model names come from SMART data. The binaries on the Releases page have no SMART support. The Docker image and make build binaries have it. For all the conditions, see Temperature monitoring.

To replace the binary with the latest release, run:

Terminal window
netronome update

The command downloads the release from GitHub, compares it with the release checksums, and replaces the running binary. Restart Netronome after the update. For Docker, pull the new image and create the container again.

To see the version that you run, run netronome version.