I deviced a workaround for this by mounting and unmounting my raid separately. The key is that I don't need it during boot, nor start any daemons that keep files open on it.
First, I added the "noauto" option to all the mounts on the raid in /etc/fstab.
Then I added an upstart script as below. Note that the raid device and the mount points are hardcoded, so anyone using this needs to adapt them. It also doesn't hook into plymouth (aka bootsplash) like the normal mountall stuff does, so there aren't any nice messages and prompts if the mounts fail.
/etc/init/local-mountraid.conf:
description "Mount the imsm raid separately to work around LP #1320402"
start on filesystem
stop on runlevel [!23]
task
post-start script
mdadm --assemble /dev/md/vol0 || :
mount /more
mount /d
end script
I deviced a workaround for this by mounting and unmounting my raid separately. The key is that I don't need it during boot, nor start any daemons that keep files open on it.
First, I added the "noauto" option to all the mounts on the raid in /etc/fstab.
Then I added an upstart script as below. Note that the raid device and the mount points are hardcoded, so anyone using this needs to adapt them. It also doesn't hook into plymouth (aka bootsplash) like the normal mountall stuff does, so there aren't any nice messages and prompts if the mounts fail.
/etc/init/ local-mountraid .conf:
description "Mount the imsm raid separately to work around LP #1320402"
start on filesystem
stop on runlevel [!23]
task
post-start script
mdadm --assemble /dev/md/vol0 || :
mount /more
mount /d
end script
post-stop script
umount /d
umount /more
mdadm --stop /dev/md/vol0
end script