This document will show how standalone deployments work with Mender, where no Mender server is used and the deployments are triggered at the device, either manually in the terminal or by custom scripts. This can be useful in order to deploy updates to devices which do not have network connectivity or are updated through external storage like a USB stick.
For an explanation of the difference between managed and standalone deployments, please see Modes of operation.
If you would like to run Mender in standalone mode, you
must make sure that the Mender client does not run as a daemon. In most cases this
will entail disabling or removing any
systemd unit that starts the Mender client. If you want to check if Mender is running as a daemon, you can try the following command:
pi@raspberrypi:~$ sudo systemctl status mender-client ● mender-client.service - Mender OTA update service Loaded: loaded (/lib/systemd/system/mender-client.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2020-07-23 03:24:54 BST; 16h ago Main PID: 320 (mender) Tasks: 9 (limit: 1012) Memory: 7.5M CGroup: /system.slice/mender-client.service └─320 /usr/bin/mender -daemon
The status reported as active indicates that in order to use standalone mode you have to stop and disable Mender running as a daemon.
pi@raspberrypi:~$ sudo systemctl stop mender-client pi@raspberrypi:~$ sudo systemctl disable mender-client pi@raspberrypi:~$ sudo systemctl mask mender-client
To deploy the new Artifact to your device, run the following command in the device terminal:
mender install <URI>
<URI> can be any type of file-based storage or an HTTP/HTTPS URL.
For example, if you are updating from a USB stick, you could use
To use HTTPS, simply replace it with a URL like
If you are doing a full file system update, now run the
reboot command to boot into the new file system.
If you are happy with the deployment, you can make it permanent by running the following command in your device terminal:
By running this command, Mender will mark the update as successful and permanent.
To deploy another update, simply run
mender -install <URI> again, then reboot and commit.
© 2022 Northern.tech AS