Hi there,
just a simple clarification.
mender-update install artifact.mender
Does it store the artifact in /data folder? when/where the .mender is extracted?
A case: For instance, I have a 256MB data folder and a 178MB .mender, and the install process fails at 54% due to no space left but the log isn’t telling me the whole story about folders and required space.
I need to understand how to distribute the available storage between partitions to match our images and requirements.
Also it could be useful to check space requirements before updating.
Thank you.
Hi @MatMender,
It depends a bit. The command indicates that you are trying to install an artifact which already is in local storage. This usually means that the artifact is unpacked into ram (tmpfs), and proceeds processing from there.
What kind of artifact are you trying to install - means, through which Update Module - and how much RAM do you have available?
The rootfs-image
Update Module is able to use streaming to the inactive partition so should be able to circumvent low RAM or ROM storage.
Greetz,
Josef
Hi @TheYoctoJester ,
now it’s clear i dug bit, made some experiments and read your message.
Here’s the thing:
- RAM is not huge but it’s enough since the unpacking/streaming of the mender artifact is done progressively
- the issue was in rootfs partition size itself because the unpacked and used rootfs space was small enough to fit into the partition but the mender artifact was unexpectedly huge! ( mender-artifact read was about double the real size, sigh!)
To fix it I worked on (considering a 512MB partition):
- Variables
MY_ROOTFS_SIZE_MB = "512"
[not a mender var, it’s used to write the parition on wks file]
IMAGE_ROOTFS_SIZE = "450000"
[my artifact is smaller than this]
IMAGE_OVERHEAD_FACTOR = "1.1"
[to reduce unneeded free space]
- Services
- resize2fs to have the ext4 rootfs file system filling the created partition
- Shrinking artifact
- Most important thing, I cleaned and rebuilt the image to remove some bloats
1 Like