Images under a new name (#133)
A base image can now be created and uploaded under a name other than the BaseImage of the client's start.conf, without changing start.conf, e.g. to build noble.qcow2 on a client running jammy.qcow2:
linbo-remote -i <host> -c image_name:noble,create_image:1,upload_image:1
linbo_create_image 1 noble
On the server such an image is handled like a native one: it takes over reg, postsync and prestart of the image it derives from (sourceimage in its info file), files it already has are never overwritten. Differential images (qdiff) cannot get a new name. See Images under a new name in the README.
Please note
- Image uploads are only accepted from registered devices, also for native images: the client's IP must belong to a device in
devices.csvwhose machine account is registered (lmncli devices <ip>, columnLDAP=Registered). Clients with a dynamic IP can no longer upload images. Devices of schools other thandefault-schoolare not checked for now. Refused uploads are logged in/srv/linbo/log/rsync-pre-upload.log, see TROUBLESHOOTING.md. - An image under a new name must not overwrite a foreign image. Images uploaded under a new name before 7.4.21 have no
sourceimageand can only be replaced again after adding them asBaseImageto the client's start.conf or addingsourceimageto their info file. linbo_uploadreported every failed upload as successful, it now reports failures, and it refuses an incomplete image (size not matching its info file).- Onboot commands (
linbo-remote -p) show their progress in the splash; a failed onboot command is logged with its last output and the remaining onboot commands are skipped, like with-c. - Not yet in WebUI/API:
image_name(linuxmuster/linuxmuster-tools#46). - New dependency:
linuxmuster-cli7.
What's Changed
- fix(rsync-post-upload): drop the dead empty-BAKDIR cleanup after a failed upload (#133, fd29b93)
- feat(linbo_create_image): create a base image under a new name (#133, 866eef6)
- feat(rsync-pre-upload): accept image uploads only from registered devices (#133, c04f422)
- feat(rsync-pre-upload): leave image uploads of other schools unchecked (#133, c7250bc)
- feat(rsync-pre-upload): guard image uploads under a new name (#133, b2b3f6a)
- feat(rsync-post-upload): take over the supplemental files of the source image (#133, 4d70dc2)
- feat(linbo-remote, linbo_wrapper): create and upload images under a new name (#133, 9bcbbd3)
- fix(linbo-remote): name a surplus field instead of an unknown empty command (#133, 446256f)
- fix(linbo_upload): report failed uploads as failed (#198, d8d57ff)
- feat(init.sh): show the progress of onboot commands in the splash (#199, 9ab96b4)
- feat(init.sh): log failed onboot commands and skip the remaining ones (#199, a2be6c2)
- fix(linbo_upload, linbo_create_image): never upload an incomplete image (#199, dea35d6)
Full Changelog: v7.4.20...v7.4.21