X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=scripts%2Fvserver.start;h=c602d4e7e71d38c4fa71364676fdd1e60cb97336;hb=4434ece05f02e6f5bebd6854172e1de056b405c2;hp=7890c13dcf751f2fd86f78c0feb0976b43aa5475;hpb=9c78378bebc1a9f3d400f422df8ede9efea57dea;p=util-vserver.git diff --git a/scripts/vserver.start b/scripts/vserver.start index 7890c13..c602d4e 100644 --- a/scripts/vserver.start +++ b/scripts/vserver.start @@ -83,6 +83,7 @@ inclusive its arguments to the cmdline." INITCMD_RESCUE=( $2 ); have_initcmd=1 shift;; + (--rescue-init) _IS_FAKEINIT=1;; (--) shift; break;; (-*) panic $"vserver ... start: unknown option '$1'";; (*) break; @@ -100,6 +101,10 @@ trap "cleanup" EXIT sanityCheck "$VSERVER_DIR" +pushd "$VSERVER_DIR" >/dev/null +execScriptlets "$VSERVER_DIR" "$VSERVER_NAME" initialize +popd >/dev/null + mountRootFS "$VSERVER_DIR" generateOptions "$VSERVER_DIR" @@ -113,6 +118,7 @@ enableInterfaces "$VSERVER_DIR" && have_interfaces=1 mountVserver "$VSERVER_DIR" && is_mounted=1 prepareInit "$VSERVER_DIR" +addtoCPUSET "$VSERVER_DIR" pushd "$VSERVER_DIR"/vdir/ >/dev/null execScriptlets "$VSERVER_DIR" "$VSERVER_NAME" pre-start @@ -129,13 +135,14 @@ if $_VSERVER_INFO - FEATURE migrate; then $_VCONTEXT --create "${OPTS_VCONTEXT_CREATE[@]}" -- \ ${USE_VNAMESPACE:+$_VNAMESPACE --set -- } \ $_VLIMIT --dir "$VSERVER_DIR"/rlimits --missingok -- \ - $_VSCHED --xid self "${OPTS_VSCHED[@]}" -- \ - $_VUNAME --xid self --dir "$VSERVER_DIR"/uts --missingok -- \ + $_VSCHED --xid self --force "${OPTS_VSCHED[@]}" -- \ + $_VSYSCTL --xid self --dir "$VSERVER_DIR"/sysctl --missingok -- \ + $_VUNAME --xid self --dir "$VSERVER_DIR"/uts --missingok -- \ "${VSERVER_EXTRA_CMDS[@]}" \ $_VUNAME --xid self --set -t context="$VSERVER_DIR" -- \ $_VATTRIBUTE --set "${OPTS_VATTRIBUTE[@]}" -- \ $_SAVE_CTXINFO "$VSERVER_DIR" \ - $_ENV -i -- \ + $_ENV -i "${OPTS_ENV[@]}" \ $_VCONTEXT --migrate-self --endsetup --chroot $SILENT_OPT \ "${OPTS_VCONTEXT_MIGRATE[@]}" "${OPTS_VCONTEXT_ENTER[@]}" -- \ "${INITCMD_START[@]}" @@ -151,7 +158,7 @@ else $_EXEC_ULIMIT "$VSERVER_DIR/ulimits" \ $_CHCONTEXT_COMPAT "${CHCONTEXT_OPTS[@]}" "${CHCONTEXT_INIT_OPTS[@]}" \ $_SAVE_CTXINFO "$VSERVER_DIR" \ - $_ENV -i -- \ + $_ENV -i "${OPTS_ENV[@]}" \ $_CHAINECHO "${_IS_FAKEINIT:+$startsync_pipe}" "" \ $_CAPCHROOT "${CAPCHROOT_OPTS[@]}" . \ "${INITCMD_START[@]}"