X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=scripts%2Fvserver-build.functions;h=3e2b4f9831422ea64726b068ad5f88fe8683db2e;hb=05f8e8a30aa7c113890e3d28341a010c0f994dac;hp=f94a6aac508c5ea72759aeecf447a90d60625bdc;hpb=e73af524ef22868d4980ae13430c205798603c41;p=util-vserver.git diff --git a/scripts/vserver-build.functions b/scripts/vserver-build.functions index f94a6aa..3e2b4f9 100644 --- a/scripts/vserver-build.functions +++ b/scripts/vserver-build.functions @@ -54,7 +54,8 @@ function populateDev { local spec - mkdir -p -m755 "$VDIR"/dev/pts + mkdir -p -m755 "$VDIR"/dev + mkdir -m755 "$VDIR"/dev/pts while read spec; do makeDevEntry "$VDIR"/dev $spec @@ -202,6 +203,9 @@ exist already; please try to use '--force', or remove them manually." mkdir -p -m755 "$VDIR" $_SETATTR --~barrier "$VDIR" + $_SETATTR --barrier "$VDIR"/.. || colwarn $"\ +WARNING: could not set the barrier attribute on '$VDIR/..', + please set it manually." base._addGeneratedFile "$VDIR" mkdir -p -m755 "$SETUP_CONFDIR"/apps "$VDIR"/etc @@ -260,11 +264,16 @@ function base.setSuccess function startSleepingGuest { local guest="$1" - local timeout="$2" + local timeout="${2:-15}" $_VSERVER "$guest" start --rescue --rescue-init bash -c " exec > /dev/null exec 2> /dev/null - sleep $timeout + trap 'kill -s 9 -- -1; exit 0' INT + i=0 + while [ \$i -lt $timeout ]; do + sleep 1 + let ++i + done kill -s 15 -- -1 sleep 1 kill -s 9 -- -1"