+
+# do not write to /var/run of chroot if it's not present
+if [ -d "$DEST_/tmp" ] ; then
+ STATEDIR="tmp/grml-chroot"
+ mkdir -p "$DEST_/$STATEDIR"
+ touch "$DEST_/$STATEDIR/$$"
+fi
+
+if [ ! -e "$DEST_"/etc/debian_chroot ]; then
+ echo "Writing /etc/debian_chroot ..."
+ cat "$DEST_"/etc/hostname > "$DEST_"/etc/debian_chroot
+fi
+
+if (( $# < 1 )); then
+ chroot "$DEST_"
+ RC=$?
+else
+ chroot "$DEST_" "$@"
+ RC=$?
+fi
+
+if [ -z "$STATEDIR" ] ; then
+ umount_all
+else
+ rm "$DEST_/$STATEDIR/$$"
+
+ if rmdir "$DEST_/$STATEDIR" 2>/dev/null; then
+ umount_all
+ fi
+fi
+
+exit $RC