pp900-a:/sbin# diff closechroot closechroot.old --- closechroot +++ closechroot.old @@ -29,7 +29,7 @@ fi #Abort if chroot not mounted. -if [ "$IMGFILE" != "none" ] && [ ! -f "$CHROOT/var/lock/qmount-complete" ] ; then +if [ ! -f "$CHROOT/var/lock/qmount-complete" ] ; then echo "Nothing to do; chroot not mounted!" exit 1 fi @@ -58,11 +58,22 @@ echo "...closing chroot apps..." -if [ -f "/bin/gfuser" ] ; then - gfuser "$CHROOT" -k +TEST1=`mount | grep " $CHROOT "` +MAPPER=`mount | grep "/dev/mapper"` +if [ "x$TEST1" != "x" ] && [ "x$MAPPER" == "x" ] ; then + if [ -f "/bin/gfuser" ] ; then + gfuser -m "$CHROOT" -k + else + cd /proc + fuser -m "$CHROOT" -k + fi else - cd /proc - fuser "$CHROOT" -k + if [ -f "/bin/gfuser" ] ; then + gfuser "$CHROOT" -k + else + cd /proc + fuser "$CHROOT" -k + fi fi echo "..Unmounting bound dirs..." @@ -87,9 +98,7 @@ rm "$CHROOT/var/lock/chroot-complete" fi -if [ "$IMGFILE" != "none" ] ; then - /sbin/qumount $CHROOT -fi +/sbin/qumount $CHROOT echo "chroot closed." exit 0 \ No newline at end of file pp900-a:/sbin#
pp900-a:/sbin# diff qchroot qchroot.old --- qchroot +++ qchroot.old @@ -76,10 +76,10 @@ #Mount the user's home dir echo .... >/dev/stderr - mount -o bind /home/user "$CHROOT/home/user" + #mount -o bind /home/user "$CHROOT/home/user" # Do it the Fremantle way. - #mount /dev/mmcblk0p2 "$CHROOT/home" + mount /dev/mmcblk0p2 "$CHROOT/home" mount /dev/mmcblk0p1 "$CHROOT/home/user/MyDocs" #Make DBus work pp900-a:/sbin#