Installing the agent on Linux
Get the enrollment bundle from the console, install the host agent as a systemd service under a dedicated account, and where its files live.
Get the enrollment bundle
From the console, create a Linux enrollment for the target workspace. It comes down as an enrollment.json carrying a single-use token — the machine that redeems it is what appears under Hosts.
A host joins the fleet with one install command and an enrollment token; revoking the host unpairs it.
Install
Run in the foreground first, to confirm enrollment succeeds:
dsh-host-agent run --enrollment-file enrollment.json
Once that connects, install it as a background service instead — the packaged tarball’s installer registers a systemd unit and creates a dedicated, unprivileged dsh-agent account to run it under:
sudo ./install.sh --enrollment-file enrollment.json
Paths
- Install prefix:
/opt/dsh-host-agent, owned by root, readable by thedsh-agentgroup. - State directory:
/var/lib/dsh-host-agent, mode 700, owned bydsh-agent. Override it withDSH_AGENT_STATE_DIR. - Service unit:
/etc/systemd/system/dsh-host-agent.service.
The execution policy
Read-only execution policy is the default on every enrolled host; the full policy is an explicit, per-host choice.
The dsh-agent account is also read-only diagnostic groups (adm, systemd-journal) rather than root — the policy bounds which commands run, and the account bounds what they can reach.
The service
Once installed, the agent heartbeats every 30 seconds and re-syncs its signed skill catalog every 5 minutes. Check on it without touching the service:
dsh-host-agent status
dsh-host-agent status --local
dsh-host-agent diagnose
Uninstall
Removes the background service; local state is left in place:
dsh-host-agent uninstall