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=()
! 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
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[@]}" )
}
done
done
+ # keep cgroup mount points
+ list=( "${list[@]}" "${CGROUP_MNT}" )
+ if test -n "$CGROUP_MNT_PER_SS"; then
+ for ss in "${CGROUP_SUBSYS[@]}"; do
+ list=( "${list[@]}" "${CGROUP_MNT}/${ss}" )
+ done
+ fi
+
local -a list_umount
while read -r dev path opts; do
test -n "$path" || continue
- for i in "$root" /dev /proc; do
- path_dir="${path}/"
+ path_dir="${path}/"
+ for i in "$root" /dev /proc /sys; do
test "${path_dir#${i}/}" != "${path_dir}" && continue 2
done
for i in "${list[@]}" /; do