EOF
;;
esac
+if [[ $HOSTNAME == frodo ]]; then
+ tu /etc/fstab <<EOF
+$first_root_crypt /i btrfs noatime,subvol=i 0 0
+EOF
+fi
##### end setup fstab for subvols we care about ######
-for vol in q a o; do
+for vol in q a o i; do
d=/$vol
if ! awk '{print $2}' /etc/fstab | grep -xF $d &>/dev/null; then
continue
if e umount -R $dir; then
unmounted+=($dir)
else
- umount_ret=false
- ret=1
echo "$0: failed to umount $dir"
- e lsof $dir
- break
+ # lsof will fail if it finds no pids
+ if ! e lsof $dir; then
+ umount_ret=false
+ ret=1
+ continue
+ fi
+ pids=$(lsof -t $dir) ||:
+ kill $pids
+ sleep .5
+ if e umount -R $dir; then
+ unmounted+=($dir)
+ else
+ umount_ret=false
+ ret=1
+ continue
+ fi
fi
fi
done