#!/bin/sh # Snapper snapshots are read-only, and the system can't start from a read-only # root. When GRUB boots a snapshot, mount it under an overlay whose writable # layer lives in RAM. Changes made in that session are lost at shutdown. [ "$(btrfs property get -ts "$NEWROOT" ro 2>/dev/null)" = "ro=true" ] || return 0 info "das-snapshot-overlay: read-only snapshot, adding a writable overlay" lower=$(mktemp -d -p /) ram=$(mktemp -d -p /) mount --move "$NEWROOT" "$lower" mount -t tmpfs -o mode=0755 das-overlay "$ram" mkdir -p "$ram/upper" "$ram/work" mount -t overlay -o "lowerdir=$lower,upperdir=$ram/upper,workdir=$ram/work" das-overlay "$NEWROOT"