From: Michael Prokop Date: Mon, 9 Apr 2007 21:27:52 +0000 (+0200) Subject: fix stage() function X-Git-Tag: 0.6~8 X-Git-Url: https://git.grml.org/?p=grml-debootstrap.git;a=commitdiff_plain;h=d4febfefadb645cf5461bd891170c892ed0461e1 fix stage() function --- diff --git a/chroot-script b/chroot-script index 1bdfca6..f735d40 100644 --- a/chroot-script +++ b/chroot-script @@ -4,7 +4,7 @@ # Authors: grml-team (grml.org), (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2. -# Latest change: Mon Apr 09 15:33:33 CEST 2007 [mika] +# Latest change: Mon Apr 09 23:27:30 CEST 2007 [mika] ################################################################################ set -e # exit on any error @@ -29,10 +29,8 @@ stage() { return 1 fi # main function - if [ -f "$STAGES/$1" ] ; then - if grep -q done "$STAGES/$1" ; then - ewarn "Notice: stage $1 has been executed already, skipping execution therefore." ; eend 0 - fi + if grep -q done "$STAGES/$1" 2>/dev/null ; then + ewarn "Notice: stage $1 has been executed already, skipping execution therefore." ; eend 0 else echo "$2" > "$STAGES/$1" fi diff --git a/grml-debootstrap b/grml-debootstrap index 674a3ad..5d9b699 100644 --- a/grml-debootstrap +++ b/grml-debootstrap @@ -4,7 +4,7 @@ # Authors: grml-team (grml.org), (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2. -# Latest change: Mon Apr 09 15:34:02 CEST 2007 [mika] +# Latest change: Mon Apr 09 23:23:18 CEST 2007 [mika] ################################################################################ # http://www.debian.org/releases/stable/i386/index.html.en @@ -60,8 +60,11 @@ bailout(){ # make sure $TARGET is not mounted when exiting grml-debootstrap if [ -n "$TARGET" ] ; then if grep -q $TARGET /proc/mounts ; then + # make sure nothing is left inside chroot so we can unmount it [ -x "$TARGET"/etc/init.d/ssh ] && "$TARGET"/etc/init.d/ssh stop [ -x "$TARGET"/etc/init.d/mdadm ] && "$TARGET"/etc/init.d/mdadm stop + chroot "$TARGET" umount /sys 1>/dev/null 2>&1 + chroot "$TARGET" umount /proc 1>/dev/null 2>&1 echo "Unmounting $TARGET" umount "$TARGET" fi @@ -83,10 +86,8 @@ stage() { return 1 fi # main function - if [ -f "$STAGES/$1" ] ; then - if grep -q done "$STAGES/$1" ; then - ewarn "Notice: stage $1 has been executed already, skipping execution therefore." ; eend 0 - fi + if grep -q done "$STAGES/$1" 2>/dev/null ; then + ewarn "Notice: stage $1 has been executed already, skipping execution therefore." ; eend 0 else echo "$2" > "$STAGES/$1" fi