Devices and connectivity (bootstrap, ssh)
Messages below show representative example values (paths, targets, names); the real message carries yours.
ATC-E0303
transport: ssh exited Some(255) before connection:
- exit code:
2
Shared code: shown here with its atc-transport meaning; as an atc-store error the same code has a different meaning and exit class.
atc error explaindetails both.
ATC-E0408
atcd on robot-7 is not serving after bootstrap: no live listener. Inspect daemon logs on the robot: `ssh -t robot-7 'sudo journalctl -u <atcd-service> --no-pager -n 200'`. Replace `<atcd-service>` with the device's `daemon.service_name` (`atcd` when it is not set).
- exit code:
4 - fix:
ssh -t robot-7 'sudo journalctl -u <atcd-service> --no-pager -n 200'
ATC-E0415
no atcd binary found
- exit code:
3 - fix:
atc bootstrap atcd install <target> --from <path/to/atcd>
ATC-E0416
privileged install on robot-7 failed: useradd failed
- exit code:
4 - fix:
ssh robot-7 sudo journalctl -n 100 --no-pager
ATC-E0417
netcheck found 1 blocking readiness failure(s):
low disk
- exit code:
3 - fix:
atc ota netcheck <target>
ATC-E0419
bootstrap preflight on robot-7 failed: no systemd
- exit code:
4 - fix:
atc shell robot-7
ATC-E0420
atcd on robot-7 is up, but its control socket is not reachable by the SSH login user (permission denied). A root install owns the socket root:root, and the controller opens it as the account you SSH in as. Grant the socket to that account: set [daemon] socket_owner in atc.toml (or re-run the install with an explicit user@host target). detail: EACCES
- exit code:
3 - fix:
set [daemon] socket_owner = "<ssh-login-user>" in atc.toml, then: atc bootstrap atcd install --root robot-7
ATC-E0421
ssh authentication rejected for robot-7: Permission denied (publickey).
- exit code:
2 - fix:
ssh-copy-id robot-7 # or re-run without --non-interactive to allow password auth
ATC-E0423
disk budget exceeded on robot-7: remote reported no space left on device during bootstrap
- exit code:
3 - fix:
free up disk space on robot-7, then re-run the push (auto-bootstrap will retry)
ATC-E0461
cannot reach device through the tunnel: device is not connected to the tunnel
- exit code:
1
ATC-E0470
atcd on robot-7 is installed, but the SSH login user cannot run it: exec of /usr/local/bin/atcd was denied. This is not an ssh authentication failure. The usual cause: that path links into the store, and the store root (/var/atc, mode 0710) is in a group that account is not in, so the account cannot traverse to the binary. Check with `ls -ld /var/atc` and `id`; if the group is the gap, re-run `atc bootstrap atcd install --root <user>@<host>` as the account you SSH in as (the install hands the store's group to that account), or on the device: chgrp $(id -gn <ssh-login-user>) /var/atc. The same text also comes from a binary without its execute bit or a store on a noexec mount; check `ls -l` on the resolved path and `findmnt -T /var/atc`. detail: bash: /usr/local/bin/atcd: Permission denied
- exit code:
3 - fix:
atc bootstrap atcd install --root robot-7 # grants the login user store traverse
ATC-E0472
release server: fetch and verify release index: fetch https://releases.example.com/stable/index.json: network unreachable
- exit code:
1
ATC-E0473
release verification: fetch and verify release index: index signature: signature verification failed
- exit code:
1
ATC-E0474
control plane: list orgs: HTTP request failed: error sending request for url (https://atc.example.com/v1/admin/orgs): tcp connect error: Connection refused
- exit code:
1
ATC-E0477
stale provisioning lock on ops@robot-7: a provisioning install that is no longer running holds /etc/atc/.enroll.lock
- exit code:
3 - fix:
atc bootstrap atcd install ops@robot-7 <the same flags> --clear-stale-lock # repeat the refused command with --clear-stale-lock
ATC-E0478
atc diagnose wrote its bundle directory, then could not send it to Agency. The bundle is not lost: it is still in the directory that the message names. To try again, run atc diagnose --yes, with the same target if you gave one. That writes a new bundle and sends it. Or share the directory with Agency support.
the diagnostic bundle was written but not sent: uploading the bundle failed: no complete answer within 860s. It is still at ./atc-diagnose-01K6Z8Q4M2V7XRB3T9N5HJWCDE
- exit code:
1 - fix:
atc diagnose --yes # or share the bundle directory with Agency support
ATC-E0479
not confirmed: refusing to uninstall atcd from robot-1 without confirmation: stdin is not a TTY. Pass --yes to skip the prompt.
- exit code:
3
ATC-E0480
atcd is not serving on robot-1: no control socket; install atcd with your provisioning system, or set [bootstrap].auto = true
- exit code:
3 - fix:
atc bootstrap atcd install robot-1
ATC-E0482
--from ./atcd is a x86_64 atcd, but the device is aarch64
- exit code:
3 - fix:
atc bootstrap atcd upgrade <target> --from <path/to/atcd>