diff --git a/ChangeLog b/ChangeLog
index 4b5e9f7862d12a59883e13aedb0e3a3fe4e81008..0037fbb2451ca0bc8d9f28b0d309402960fab049 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -29,6 +29,7 @@ version 0.9.3 -- unreleased
     lib changes
 	vserver:
 	 . improved VROOTDIR detection
+	 . test in a stricter way the real vservers availability
     known bugs:
         easydialog: 
          . formDisplay does not return exit status.
diff --git a/lib/vserver.in b/lib/vserver.in
index 6a61afc2dd4419ac9f5a75538990877ff77e8be1..7108dac78563aea64ffef4c43e6f040a04d2c261 100644
--- a/lib/vserver.in
+++ b/lib/vserver.in
@@ -41,6 +41,16 @@ init_vservers() {
    host_or_vservers=host
    # check vservers real availability
    if [ $vservers = yes ]; then
+      if [ ! -x "$VSERVERINFO" ]; then
+         `if [ "$arg" = nodialog ]; then echo fatal; else echo "msgBox warning"; fi` \
+            "vservers enabled in $conffile, but vserver-info command was not found. Please set the VSERVERINFO configuration variable to its full path."
+            return
+      fi
+      if [ ! -x "$VSERVER" ]; then
+         `if [ "$arg" = nodialog ]; then echo fatal; else echo "msgBox warning"; fi` \
+            "vservers enabled in $conffile, but vserver command was not found. Please set the VSERVER configuration variable to its full path."
+            return
+      fi
       if [ -z "$VROOTDIR" ]; then
          `if [ "$arg" = nodialog ]; then echo fatal; else echo "msgBox warning"; fi` \
             "vservers enabled in $conffile, but VROOTDIR is not set and could not be guessed."