_VS_LOCKS="$@"
}
+function get_init_cwd
+{
+ if test -n "$INIT_CWD"; then
+ echo "$INIT_CWD"
+ else
+ pwd
+ fi
+}
+function set_init_cwd
+{
+ INIT_CWD="`pwd`"
+ export INIT_CWD
+}
+
function _getVserverDir
{
local vserver="$1"
case "$vserver" in
- ./*) VSERVER_DIR=`pwd`/$vserver ;;
- /*) VSERVER_DIR=$vserver ;;
- *) VSERVER_DIR=$__CONFDIR/$vserver;;
+ ./*) VSERVER_DIR="`get_init_cwd`/$vserver";;
+ /*) VSERVER_DIR="$vserver" ;;
+ *) VSERVER_DIR="$__CONFDIR/$vserver" ;;
esac
}
# Use /proc/virtual from kernel 2.6 when possible
if test -d "/proc/virtual"; then
- set -- $($_GREP '^PROC:' "/proc/virtual/$1/limit" 2>/dev/null)
+ set -- $($_GREP '^Tasks:' "/proc/virtual/$1/status" 2>/dev/null)
_gp_procnr_cnt=$2
else
_gp_procnr_cnt=$($_VPS ax | $_AWK '{print $2}' | $_GREP -x "$1" | $_WC -l )
eval read "$_gfv_var" <"$_gfv_file"
}
-## Called as 'getFileArray <varname> <filename>'
+## Called as 'getFileArray <varname> <filename>+'
function getFileArray
{
- test -r "$2" || return 1
-
+ local _gfa_var=$1
+ local _gfa_file
+ shift
+
+ findFile _gfa_file "$@" ''
+ test -n "$_gfa_file" -a -r "$_gfa_file" || return 0
local IFS=$_VS_NEWLINE
- eval "$1"='( $(< "$2") )'
+ eval "$_gfa_var"='( $(< "$_gfa_file") )'
}
function checkComponents
vshelper=$(cat "$proc_file")
$_CMP -s "$vshelper" "$_VSHELPER" || {
+ local readable=""
+ test -r "$vshelper" && readable=1
warnings=( "${warnings[@]}"
$"The configured vshelper '$vshelper' does not match the 'vshelper'
- script of the util-vserver package"
+ script of the util-vserver package.${readable:+ Maybe you have two versions installed?}"
)
solution_disable=1
solution_sysctl=1