declare -a OPTS_VCONTEXT_CREATE=()
declare -a OPTS_VCONTEXT_MIGRATE=()
-declare -a OPTS_VATTRIBUTE=()
+declare -a OPTS_VATTRIBUTE=( --flag fakeinit )
declare -a OPTS_VSCHED=()
declare -a VSERVER_EXTRA_CMDS=()
while isCtxRunning "$ctx"; do
test -z "$wait" || sleep "$wait"
- $_VKILL -c "$ctx" ${1:+-s "$1"}
+ $_VKILL -c "$ctx" ${1:+-s "$1"} 2>/dev/null || :
test "$2" || break
wait="$2"
shift 2
test "$ip" || { echo $"Can not read ip for '$iface'" >&2; return 1; }
- test ! -e "$iface"/only_ip || {
- ## LEGACY ALERT
- echo $"The 'only_ip' flag for interface '$iface' is deprecated; use 'nodev' instead of" >&2
- unset dev
- }
- test ! -e "$iface"/nodev || unset dev
test ! -e "$iface"/down || up=
- if test "$dev"; then
+ while test "$dev"; do
_transformMask2Prefix prefix "$prefix" "$mask"
+ INTERFACES=( "${INTERFACES[@]}" "$ip${prefix:+/$prefix}" )
+
+ test ! -e "$iface"/nodev || break
+ test ! -e "$iface"/only_ip || {
+ ## LEGACY ALERT
+ echo $"The 'only_ip' flag for interface '$iface' is deprecated; use 'nodev' instead of" >&2
+ break
+ }
case "$dev" in
(*.*)
_addInterfaceCmd IP_ADDR "$ip${prefix:+/$prefix}" dev "$dev"
test -z "$extip" || _addInterfaceCmd IPTABLES "$ip${prefix:+/$prefix}" ${name:+label "$dev:$name"} "$ctx" "$extip"
fi
- INTERFACES=( "${INTERFACES[@]}" "$ip${prefix:+/$prefix}" )
- fi
+
+ break
+ done
}
## Usage: _generateInterfaceOptions <vserver-directory>
{ find var/run ! -type d -print0; \
find var/lock ! -type d -print0; } | xargs -0r $_CHROOT_RM
;;
+ plain)
+ $_CHROOT_RM .autofsck forcefsck 2>/dev/null || :
+ : | $_CHROOT_CAT fastboot 2>/dev/null || :
+ ;;
minit)
;;
esac
if test "$_IS_FAKEINIT"; then
CHCONTEXT_INIT_OPTS=( --disconnect --flag fakeinit )
- OPTS_VCONTEXT_MIGRATE=( "${OPTS_VCONTEXT_MIGRATE[@]}" --fakeinit --disconnect )
+ OPTS_VCONTEXT_MIGRATE=( "${OPTS_VCONTEXT_MIGRATE[@]}" --initpid --disconnect )
fi
}
local fstab="$1"
test -e "$fstab" || return 0
shift
-
- "$@" $_SECURE_MOUNT -a --chroot "$vdir" --fstab "$fstab"
+
+ pushd "$vdir" >/dev/null
+ "$@" $_SECURE_MOUNT -a --chroot --fstab "$fstab"
+ popd >/dev/null
}
function mountVserver