Skip to content

Linux installer

QuartermasterCollectorSetup-linux-x64.run (and -arm64) is a self-contained installer for the collector — the Linux sibling of the Windows and macOS installers. It bundles a portable Node binary, so the machine needs no Node install and no git clone, and everything happens per-user — no root required.

Terminal window
chmod +x QuartermasterCollectorSetup-linux-x64.run
./QuartermasterCollectorSetup-linux-x64.run

The guided flow mirrors the Windows wizard:

  1. Explains what will happen, then installs to ~/.local/share/quartermaster (override with --prefix).
  2. Prompts for your Worker URL and admin token (input hidden). The admin token is used once to pair and is never stored; only the revocable device-scoped token lands on disk (~/.quartermaster/, mode 0600). Re-running over an existing pairing keeps it.
  3. Registers hourly background scans — a systemd user timer where available (with loginctl enable-linger attempted, so scans run while you’re logged out), falling back to a cron @hourly entry. Logs go to <prefix>/collector.log.
  4. Offers to run the first scan immediately.

From then on the machine scans itself every hour, with secrets redacted on-device before upload — exactly the same pipeline as every other collector.

Every prompt has a flag, so fleets and dotfile scripts can install headlessly:

Terminal window
./QuartermasterCollectorSetup-linux-x64.run --yes \
--url https://quartermaster.<you>.workers.dev \
--admin-token "$QM_ADMIN_TOKEN" # or just export QM_ADMIN_TOKEN
  • --roots a,b — scan roots (default: the ~/.{tool} dirs that exist)
  • --skip-connect — install now, pair later with <prefix>/collector connect
  • --no-schedule — skip the timer/cron registration
  • --uninstall — run the uninstaller of an existing install
Terminal window
~/.local/share/quartermaster/collector status # config + tracked count + server health
~/.local/share/quartermaster/collector scan # incremental scan now
~/.local/share/quartermaster/uninstall.sh # remove (keeps pairing)

Uninstalling removes the timer/cron entry and program files but deliberately leaves ~/.quartermaster, so re-installing never needs re-pairing — revoke the device server-side to fully disconnect it.

  • Releases: every collector-v* tag builds both architectures in CI and attaches them to the GitHub release, each with a .sha256 sidecar — verify with sha256sum -c QuartermasterCollectorSetup-linux-x64.run.sha256.
  • Build it yourself: node installer/unix/build.mjs --platform linux (needs only tar + xz; builds on any OS).

x86_64 or aarch64 with glibc (the official Node binaries) — that covers Debian/Ubuntu, Fedora, Arch, openSUSE, WSL, and friends. On Alpine/musl the installer refuses; use the manual collector setup with your own Node ≥ 18 instead.