Troubleshooting
Read this before trusting a diagnostic that returned nothing
Two properties of /var/log/messages on FreeBSD make a correct command
print nothing at all and exit non-zero, which is indistinguishable from
"the daemon never logged that": grep silently treats the whole file as
binary if any program on the host wrote one non-ASCII byte, and newsyslog
rotates the file about once an hour, so a daemon 80 minutes old already has
its startup line in messages.0.bz2.
Reading the log first.
Every other page here assumes it.
The CLI said…
Symptom
Cannot connect to the SatL daemon at unix:///var/run/satl.sock. Is satld running?
the daemon
Permission denied on the socket for a non-root user
the daemon
storage preflight failed / ZFS root dataset … does not exist
the daemon
satld exits after an edit to satld.toml
the daemon
This node is not a swarm manager.
the cluster
cannot …: this cluster has no raft leader right now
the cluster
container … has already run and cannot be started again
containers
HostConfig.Privileged is not supported by SatL: …
containers
satl service ps <name> prints an empty table and exits 0
the cluster
root CA bundle does not match the join token
TLS and joins
malformed join token: …
TLS and joins
This node is already part of a swarm.
TLS and joins
node … has been removed from the cluster
TLS and joins
The container…
The network on one node…
The network between nodes…
Symptom
a task cannot reach any remote task on the network
the overlay
one pair of tasks fails and everything else works
the overlay
everything works, throughput is poor, packet counts are doubled
the overlay
large transfers stall while pings answer
the overlay
a task loses the network some time after a configuration change
the overlay
a service name does not resolve, or resolves to the wrong service
the overlay
the first overlay network on a fresh host fails to program
the overlay
The cluster…
The log…
Not a failure, just a difference from Docker?
See Differences from Docker .
Ready to report something?
What to collect first .
August 17, 2026
August 13, 2026