prepare-var-overlay.service 852 B

12345678910111213141516171819
  1. [Unit]
  2. Description=Variable storage overlay setup
  3. ConditionPathIsSymbolicLink=!/var
  4. DefaultDependencies=no
  5. RequiresMountsFor=/run/buildroot/mounts/var
  6. [Service]
  7. Type=oneshot
  8. RemainAfterExit=yes
  9. ExecStart=/usr/bin/mkdir -p /run/buildroot/mounts/var/lower /run/buildroot/mounts/var/upper /run/buildroot/mounts/var/work
  10. # Ideally, we would like to use a systemd mount unit to manage the bind
  11. # mount. Unfortunately, that creates a circular dependency: such a unit
  12. # would have What=/var while var.mount has Where=/var so that introduces
  13. # an implicit dependency from that unit to var.mount, but var.mount
  14. # would have an explicit dependency to be ordered after that unit.
  15. # So we handle the bind mount manually.
  16. ExecStart=/usr/bin/mount -n -o bind,private /var /run/buildroot/mounts/var/lower
  17. ExecStop=/usr/bin/umount -l /run/buildroot/mounts/var/lower