X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=scripts%2Fvserver.functions;h=77ca912b97af9272610a6c13c645e74d9de69e7a;hb=HEAD;hp=95ada0da80ee045862558085a07d2207526d2c34;hpb=b86560b87e73f011c96a303dcaca640eea1f2551;p=util-vserver.git diff --git a/scripts/vserver.functions b/scripts/vserver.functions index 95ada0d..77ca912 100644 --- a/scripts/vserver.functions +++ b/scripts/vserver.functions @@ -42,6 +42,7 @@ declare -a OPTS_VCONTEXT_CREATE=() declare -a OPTS_VCONTEXT_MIGRATE=() declare -a OPTS_VCONTEXT_ENTER=() OPT_VCONTEXT_CHROOT=--chroot +OPT_VCONTEXT_CLOSE_FD="" declare -a OPTS_VATTRIBUTE=( --flag fakeinit ) declare -a OPTS_VSCHED=() declare -a OPTS_ENV=() @@ -355,7 +356,7 @@ function _generateInitOptions ! isNumber "${RUNLEVEL_START:-3}" || INITCMD_PREPARE=( $_FAKE_RUNLEVEL "${RUNLEVEL_START:-3}" /var/run/utmp ) ;; - (xgentoo) + (xgentoo|xopenrc) test -n "$RUNLEVEL_START" || RUNLEVEL_START="default" RC_PATH=/usr/sbin:/usr/bin:/sbin:/bin @@ -467,6 +468,8 @@ function _generateChcontextOptions OPTS_VCONTEXT_CREATE=( $SILENT_OPT \ ${ctx:+--xid "$ctx"} ) + findFile file "$vdir"/keepfds "$__CONFDIR/.defaults/keepfds" "" + test -n "$file" || OPT_VCONTEXT_CLOSE_FD="--closefd" ## put '--secure' at front so that it can be overridden OPTS_VATTRIBUTE=( --secure --flag default "${OPTS_VATTRIBUTE[@]}" ) } @@ -1491,7 +1494,7 @@ function _generateCgroupOptions findFile file "$__CONFDIR/.defaults/cgroup/mnt" "" if test -n "$file"; then read CGROUP_MNT < "$file" - elif test -d /sys/fs/cgroup; then + elif test -d /sys/fs/cgroup -a -d /sys/fs/cgroup/"${CGROUP_SUBSYS[0]}"; then CGROUP_MNT=/sys/fs/cgroup CGROUP_MNT_PER_SS=1 fi