summaryrefslogtreecommitdiffstats
path: root/os-plugins
diff options
context:
space:
mode:
authorVolker Uhrig2008-10-13 12:47:15 +0200
committerVolker Uhrig2008-10-13 12:47:15 +0200
commit0d17461cb57bfe150b57e6bbfb6913b3b149cfae (patch)
tree584d1117587ff9a1d799f1ca1c0be7460f92ed61 /os-plugins
parent* Some more preparation. Mainly kernel and plugin config (diff)
downloadcore-0d17461cb57bfe150b57e6bbfb6913b3b149cfae.tar.gz
core-0d17461cb57bfe150b57e6bbfb6913b3b149cfae.tar.xz
core-0d17461cb57bfe150b57e6bbfb6913b3b149cfae.zip
* got vmplayer running without their installer and like on our vmware system
* not tested on an OpenSLX Client yet! * kernel modules can become ugly git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@2286 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'os-plugins')
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm33
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm34
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm33
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm36
-rw-r--r--os-plugins/plugins/vmware/XX_vmware.sh11
-rw-r--r--os-plugins/plugins/vmware/files/install-vmpl.sh38
6 files changed, 101 insertions, 84 deletions
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm
index 833a7654..04c72ca4 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm
@@ -72,9 +72,10 @@ sub fillRunlevelScript
if ($kind eq 'local') {
$script .= unshiftHereDoc(<<" End-of-Here");
# to be filled in via the stage1 configuration script
- insmod /lib/modules/\$(uname -r)/misc/vmmon.ko || return 1
- insmod /lib/modules/\$(uname -r)/misc/vmnet.ko || return 1
- insmod /lib/modules/\$(uname -r)/misc/vmblock.ko 2>/dev/null || return 0
+ insmod /lib/modules/\$(uname -r)/misc/vmmon.o || return 1
+ insmod /lib/modules/\$(uname -r)/misc/vmnet.o || return 1
+ insmod /lib/modules/\$(uname -r)/misc/vmblock.o 2>/dev/null || return 0
+ #insmod /lib/modules/\$(uname -r)/misc/vmci.o 2>/dev/null || return 0
# most probably nobody wants to run the parallel port driver ...
#modprobe vm...
End-of-Here
@@ -83,27 +84,27 @@ sub fillRunlevelScript
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
End-of-Here
} elsif ($kind ne "vmpl2.0") {
$script .= unshiftHereDoc(<<" End-of-Here");
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
- insmod \${module_src_path}/vmblock.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
+ insmod \${module_src_path}/vmblock.o
End-of-Here
} elsif ($kind eq 'vmpl2.5') {
$script .= unshiftHereDoc(<<" End-of-Here");
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
- insmod \${module_src_path}/vmci.ko
- insmod \${module_src_path}/vmmon.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
+ #insmod \${module_src_path}/vmci.o
+ insmod \${module_src_path}/vmmon.o
End-of-Here
}
@@ -129,7 +130,13 @@ sub fillRunlevelScript
setup_vmnet0() {
if [ -n "\$vmnet0" ] ; then
# the path might be directly point to the plugin dir
- $location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid /dev/vmnet0 eth0
+ End-of-Here
+ if ($kind eq 'vmpl2.5') {
+ $script .= "\$location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid -n 0";
+ } else {
+ $script .= "\$location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid /dev/vmnet0 eth0";
+ }
+ $script .= unshiftHereDoc(<<" End-of-Here");
fi
}
# we definately prefer the hostonly interface for NATed operation too
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm
index 5597612b..54047aca 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm
@@ -59,9 +59,10 @@ sub fillRunlevelScript
if ($kind eq 'local') {
$script .= unshiftHereDoc(<<" End-of-Here");
# to be filled in via the stage1 configuration script
- insmod /lib/modules/\$(uname -r)/misc/vmmon.ko || return 1
- insmod /lib/modules/\$(uname -r)/misc/vmnet.ko || return 1
- insmod /lib/modules/\$(uname -r)/misc/vmblock.ko 2>/dev/null || return 0
+ insmod /lib/modules/\$(uname -r)/misc/vmmon.o || return 1
+ insmod /lib/modules/\$(uname -r)/misc/vmnet.o || return 1
+ insmod /lib/modules/\$(uname -r)/misc/vmblock.o 2>/dev/null || return 0
+ #insmod /lib/modules/\$(uname -r)/misc/vmci.o 2>/dev/null || return 0
# most probably nobody wants to run the parallel port driver ...
#modprobe vm...
End-of-Here
@@ -70,27 +71,27 @@ sub fillRunlevelScript
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
End-of-Here
} elsif ($kind ne "vmpl2.0") {
$script .= unshiftHereDoc(<<" End-of-Here");
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
- insmod \${module_src_path}/vmblock.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
+ insmod \${module_src_path}/vmblock.o
End-of-Here
} elsif ($kind eq 'vmpl2.5') {
$script .= unshiftHereDoc(<<" End-of-Here");
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
- insmod \${module_src_path}/vmci.ko
- insmod \${module_src_path}/vmmon.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
+ #insmod \${module_src_path}/vmci.o
+ insmod \${module_src_path}/vmmon.o
End-of-Here
}
@@ -114,7 +115,14 @@ sub fillRunlevelScript
setup_vmnet0() {
if [ -n "\$vmnet0" ] ; then
# the path might be directly point to the plugin dir
- $location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid /dev/vmnet0 eth0
+ End-of-Here
+ if ($kind eq 'vmpl2.5') {
+ $script .= "\$location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid -n 0";
+ } else {
+ $script .= "\$location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid /dev/vmnet0 eth0";
+ }
+ $script .= unshiftHereDoc(<<" End-of-Here");
+ exit 0
fi
}
# we definately prefer the hostonly interface for NATed operation too
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm
index d42646c9..ea734467 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm
@@ -55,9 +55,10 @@ sub fillRunlevelScript
if ($kind eq 'local') {
$script .= unshiftHereDoc(<<" End-of-Here");
# to be filled in via the stage1 configuration script
- insmod /lib/modules/\$(uname -r)/misc/vmmon.ko || return 1
- insmod /lib/modules/\$(uname -r)/misc/vmnet.ko || return 1
- insmod /lib/modules/\$(uname -r)/misc/vmblock.ko 2>/dev/null || return 0
+ insmod /lib/modules/\$(uname -r)/misc/vmmon.o || return 1
+ insmod /lib/modules/\$(uname -r)/misc/vmnet.o || return 1
+ insmod /lib/modules/\$(uname -r)/misc/vmblock.o 2>/dev/null || return 0
+ #insmod /lib/modules/\$(uname -r)/misc/vmci.o 2>/dev/null || return 0
# most probably nobody wants to run the parallel port driver ...
#modprobe vm...
End-of-Here
@@ -66,27 +67,27 @@ sub fillRunlevelScript
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
End-of-Here
} elsif ($kind ne "vmpl2.0") {
$script .= unshiftHereDoc(<<" End-of-Here");
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
- insmod \${module_src_path}/vmblock.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
+ insmod \${module_src_path}/vmblock.o
End-of-Here
} elsif ($kind eq 'vmpl2.5') {
$script .= unshiftHereDoc(<<" End-of-Here");
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
- insmod \${module_src_path}/vmci.ko
- insmod \${module_src_path}/vmmon.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
+ #insmod \${module_src_path}/vmci.o
+ insmod \${module_src_path}/vmmon.o
End-of-Here
}
@@ -112,7 +113,13 @@ sub fillRunlevelScript
setup_vmnet0() {
if [ -n "\$vmnet0" ] ; then
# the path might be directly point to the plugin dir
- $location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid /dev/vmnet0 eth0
+ End-of-Here
+ if ($kind eq 'vmpl2.5') {
+ $script .= "\$location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid -n 0";
+ } else {
+ $script .= "\$location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid /dev/vmnet0 eth0";
+ }
+ $script .= unshiftHereDoc(<<" End-of-Here");
fi
}
# we definately prefer the hostonly interface for NATed operation too
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm
index 97d0f4f7..e9b8f121 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm
@@ -60,9 +60,10 @@ sub fillRunlevelScript
if ($kind eq 'local') {
$script .= unshiftHereDoc(<<" End-of-Here");
# to be filled in via the stage1 configuration script
- insmod /lib/modules/\$(uname -r)/misc/vmmon.ko || return 1
- insmod /lib/modules/\$(uname -r)/misc/vmnet.ko || return 1
- insmod /lib/modules/\$(uname -r)/misc/vmblock.ko 2>/dev/null || return 0
+ insmod /lib/modules/\$(uname -r)/misc/vmmon.o || return 1
+ insmod /lib/modules/\$(uname -r)/misc/vmnet.o || return 1
+ insmod /lib/modules/\$(uname -r)/misc/vmblock.o 2>/dev/null || return 0
+ #insmod /lib/modules/\$(uname -r)/misc/vmci.o 2>/dev/null || return 0
# most probably nobody wants to run the parallel port driver ...
#modprobe vm...
End-of-Here
@@ -71,27 +72,27 @@ sub fillRunlevelScript
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
End-of-Here
} elsif ($kind ne "vmpl2.0") {
$script .= unshiftHereDoc(<<" End-of-Here");
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
- insmod \${module_src_path}/vmblock.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
+ insmod \${module_src_path}/vmblock.o
End-of-Here
} elsif ($kind eq 'vmpl2.5') {
$script .= unshiftHereDoc(<<" End-of-Here");
# load module manuall
vmware_kind_path=/opt/openslx/plugin-repo/vmware/\${vmware_kind}/
module_src_path=\${vmware_kind_path}/vmroot/modules
- insmod \${module_src_path}/vmmon.ko
- insmod \${module_src_path}/vmnet.ko
- insmod \${module_src_path}/vmci.ko
- insmod \${module_src_path}/vmmon.ko
+ insmod \${module_src_path}/vmmon.o
+ insmod \${module_src_path}/vmnet.o
+ #insmod \${module_src_path}/vmci.o
+ insmod \${module_src_path}/vmmon.o
End-of-Here
}
@@ -115,9 +116,14 @@ sub fillRunlevelScript
setup_vmnet0() {
if [ -n "\$vmnet0" ] ; then
# the path might be directly point to the plugin dir
- $location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid /dev/vmnet0 eth0
- # new style (v6.5)
- #$location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid -n 0
+ End-of-Here
+ if ($kind eq 'vmpl2.5') {
+ $script .= "\$location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid -n 0";
+ } else {
+ $script .= "\$location/vmnet-bridge -d /var/run/vmnet-bridge-0.pid /dev/vmnet0 eth0";
+ }
+ $script .= unshiftHereDoc(<<" End-of-Here");
+ exit 0
fi
}
# we definately prefer the hostonly interface for NATed operation too
diff --git a/os-plugins/plugins/vmware/XX_vmware.sh b/os-plugins/plugins/vmware/XX_vmware.sh
index 92c8c347..88a9b683 100644
--- a/os-plugins/plugins/vmware/XX_vmware.sh
+++ b/os-plugins/plugins/vmware/XX_vmware.sh
@@ -192,6 +192,17 @@ $(ipcalc -m $vmip/$vmpx|sed s/.*=//) {" \
for i in "/dev/vmnet0 c 119 0" "/dev/vmmon c 10 165"; do
mknod $i
done
+ # looks like it gets created by insmod
+ # but permission wasnt correct. 666 was on a testclient
+ # won't work here. two systems, to different node informations
+ # we have to run it after vmci is loaded
+ # and we don't need vmci, because its just for communications
+ # between more as one VM
+ #if [ "${vmware_kind}" = "vmpl2.5" && ! -e /dev/vmci ]; then
+ # mknod --mode=666 /dev/vmci c 10 $(cat /proc/misc|grep vmci|awk '{print $1}')
+ #elsif [ "${vmware_kind}" == "vmpl2.5" ]; then
+ # chmod 666 /dev/vmci
+ #fi
chmod 0700 /dev/vmnet*
chmod 1777 /mnt/etc/vmware/fd-loop
diff --git a/os-plugins/plugins/vmware/files/install-vmpl.sh b/os-plugins/plugins/vmware/files/install-vmpl.sh
index ba1d9c3f..e0795b30 100644
--- a/os-plugins/plugins/vmware/files/install-vmpl.sh
+++ b/os-plugins/plugins/vmware/files/install-vmpl.sh
@@ -176,21 +176,11 @@ else
mkdir -p vmroot/lib/vmware/setup
mv temp/vmware-player-setup/vmware-config vmroot/lib/vmware/setup
mv temp/vmware-player/doc vmroot/
- # files that differ so far... yes the normal hack we know from v1ŮŽ/v2a
- # .../installer/ shouldn't be needed, too
- #vmroot/lib/vmware/installer/lib/libconf/etc/gtk-2.0/gdk-pixbuf.loaders
- #vmroot/lib/vmware/installer/lib/libconf/etc/gtk-2.0/gtk.immodules
- #vmroot/lib/vmware/installer/lib/libconf/etc/pango/pango.modules
- #vmroot/lib/vmware/installer/lib/libconf/etc/pango/pangorc
- #vmroot/lib/vmware/libconf/etc/gtk-2.0/gdk-pixbuf.loaders
- #vmroot/lib/vmware/libconf/etc/gtk-2.0/gtk.immodules
- #vmroot/lib/vmware/libconf/etc/pango/pango.modules
- #vmroot/lib/vmware/libconf/etc/pango/pangorc
+ mv temp/vmware-player/bin vmroot/
##
## left files/dirs
##
- # temp/vmware-player/bin => /usr/bin
# temp/vmware-player/files/index.theme ... hopefully not needed,
# temp/vmware-player/share => /usr/share ... icons
# temp/vmware-player/etc/... => /etc
@@ -209,9 +199,12 @@ else
# vmnet(1|8) => we know it from v1/v2
echo " * fixing file permission"
+ chmod 755 vmroot/lib/vmware/bin/*
chmod 04755 vmroot/lib/vmware/bin/vmware-vmx
- chmod 04755 vmroot/lib/vmware/bin/vmware-debug
- chmod 04755 vmroot/lib/vmware/bin/vmware-stats
+ chmod 04755 vmroot/lib/vmware/bin/vmware-vmx-debug
+ chmod 04755 vmroot/lib/vmware/bin/vmware-vmx-stats
+ chmod 755 vmroot/bin/*
+ chmod 755 vmroot/lib/vmware/lib/wrapper-gtk24.sh
# I don't want to understand what vmware is doing, but without this
# step we need to have LD_LIBRARY_PATH with 53 entrys. welcome to
@@ -251,8 +244,8 @@ else
tar xf vmnet.tar
tar xf vmmon.tar
tar xf vmblock.tar
- tar xf vmci.tar
- tar xf vmppuser.tar
+ #tar xf vmci.tar # just for 2 or more VMs => not needed
+ #tar xf vmppuser.tar # we don't need it
tar xf vsock.tar
echo " * building vmblock module"
@@ -276,21 +269,6 @@ else
mv vmnet.ko vmnet.o ../../../../../modules
cd ..
- echo " * building vmci module"
- cd vmci-only
- sed -i "s%^VM_UNAME = .*%VM_UNAME = $(find /boot/vmlinuz* -maxdepth 0|sed 's,/boot/vmlinuz-,,g'|sort|tail -n 1)%" Makefile
- make -s
- mv vmci.ko vmci.o ../../../../../modules
- cd ..
-
- # This module is optional and compilation can become painful
- #echo " * building vmppuser module"
- #cd vmppuser-only
- #sed -i "s%^VM_UNAME = .*%VM_UNAME = $(find /boot/vmlinuz* -maxdepth 0|sed 's,/boot/vmlinuz-,,g'|sort|tail -n 1)%" Makefile
- #make -s
- #mv vmppuser.ko vmppuser.o ../../../../../modules
- #cd ..
-
echo " * building vmsock module"
cd vsock-only
sed -i "s%^VM_UNAME = .*%VM_UNAME = $(find /boot/vmlinuz* -maxdepth 0|sed 's,/boot/vmlinuz-,,g'|sort|tail -n 1)%" Makefile