Updating
Keep the box current — in-app updates, installer re-runs, and air-gapped upgrades.
There are three ways to update a CoreSight box. All of them preserve your configuration, cameras, users, recordings, and license.
In-app update (recommended)
The box checks the release feed for new versions periodically (roughly every 6 hours; silently skipped when the box is offline). When an update is available, administrators with the update permission see "Update available vX.Y.Z" in Settings → About, with an Update button.
Clicking Update:
- Downloads the new release package and verifies its SHA-256 checksum — a release that can't be verified is refused.
- Hands the verified package to a supervised system unit that installs it. The unit runs independently of the main services, so it survives the restart it performs.
- Restarts the CoreSight services — expect a brief outage of a few seconds; live view drops momentarily and recording pauses briefly, then everything resumes.
- The UI polls through the restart and confirms success once the box answers on the new version. On failure, the previous version is restarted and the error is shown in the UI.
Every update action is recorded in the audit log.
Recording is designed around restarts: footage is written in short crash-safe segments, so an update costs at most the few seconds of the service restart — nothing already recorded is affected.
Re-running the installer
Re-running the install one-liner on an existing box is a supported, non-destructive upgrade path:
curl -fsSL https://coresightvms.com/install.sh | sudo bash -s -- --prodThe installer is idempotent — it detects the existing installation, keeps all secrets, settings, and recordings, and upgrades the CoreSight package to the latest release. This is also how you change install-time options later, for example adding AI to a box installed without it:
curl -fsSL https://coresightvms.com/install.sh | sudo bash -s -- --prod --aiTo pin a specific version rather than the latest, add --version <tag>.
Air-gapped / offline boxes
Boxes without internet access update via the offline bundle — the same self-contained tarball used for offline installation (Installation). Build the bundle for the new version on a connected machine, copy it to the box, and run its installer:
scp coresight-bundle_<version>_amd64.tar.gz user@box:~
ssh user@box 'tar xzf coresight-bundle_<version>_amd64.tar.gz && cd coresight-bundle && sudo ./install.sh --prod'The upgrade behaves exactly like the online re-run: non-destructive, checksum-verified, brief restart.
If an update goes wrong
- The in-app updater reports failures in the UI, including a tail of the install log.
- On the box, check the update log and unit status:
journalctl -u coresight-update@<version>
cat /var/log/vms/update.log
systemctl status coresight.target- A failed in-app update restarts the previous version automatically. If the box is still unhealthy, re-run the installer with the previous version pinned (
--version <old-tag>) to roll back, and see Troubleshooting.