[Unit] Description=Clawstor read-only FUSE mount (blobs / snapshots / tags / refs) Documentation=https://git.redclaw.dev/clawverse/clawstor After=network-online.target clawstor-cluster.service Wants=clawstor-cluster.service [Service] Type=simple # systemd expands %h (home) at parse time; env-var expansion in # the ExecStart binary position is NOT supported. Retarget via # `systemctl --user edit clawstor-fuse.service` if the install # path differs. # # Pre-6d we ran ExecStartPre=mkdir + ExecStartPre=fusermount3-u-z # to guard against stale mounts. On some Ubuntu builds (observed # on morpheus 2026-07-14) that combination made systemd refuse # the subsequent FUSE mount with EPERM even though a manual # invocation of the same binary succeeded. The minimal form here # — plain ExecStart, ExecStop = unmount — is what actually works # reliably across the fleet. Create the mount point manually # (mkdir -p ~/clawstor-mount) once before enabling this unit. ExecStart=%h/clawstor-deploy/claw-fuse --data-dir %h/clawstor-deploy/data --mount %h/clawstor-mount ExecStop=/usr/bin/fusermount3 -u %h/clawstor-mount Restart=on-failure RestartSec=5 [Install] WantedBy=default.target