summaryrefslogtreecommitdiffstats
path: root/initrd/initrd-stuff/etc/vmware-prep
diff options
context:
space:
mode:
Diffstat (limited to 'initrd/initrd-stuff/etc/vmware-prep')
-rw-r--r--initrd/initrd-stuff/etc/vmware-prep148
1 files changed, 29 insertions, 119 deletions
diff --git a/initrd/initrd-stuff/etc/vmware-prep b/initrd/initrd-stuff/etc/vmware-prep
index 21333ed7..df83fd96 100644
--- a/initrd/initrd-stuff/etc/vmware-prep
+++ b/initrd/initrd-stuff/etc/vmware-prep
@@ -1,140 +1,50 @@
#!/bin/sh
#
-# Description: Kernel of a generic runlevel script file for use with
-# Diskless X Stations (v4.0) - script prepares vmware
-# environment. Start and stop functionality is added within
-# initial ramdisk
+# Kernel of a generic runlevel script file for use with OpenSLX diskless
+# linux machines - script prepares vmware environment. Start and stop
+# functionality is added within initialramfs
#
-# Author(s): Michael Janczyk <mj0@uni-freiburg.de>, 15-04-2006
-# Dirk von Suchodoletz <dirk@goe.net>, 23-08-2006
-# Copyright: (c) 2003, 2006 - RZ Universitaet Freiburg
+# Michael Janczyk <mj0@uni-freiburg.de>, 15-04-2006
+# Dirk von Suchodoletz <dirk@goe.net>, 03-09-2006
+#
+# (c) 2003, 2006 - RZ Universitaet Freiburg
#
# Version: 0.2.324
#
-################################################################################
-
-
-
-### VERBOSE? ###################################################################
+#######################################################################
# set verbose mode (set -x(v))
#set -xv
-
-
-### CONFIGURATION ##############################################################
+### CONFIGURATION #####################################################
# read configuration information
. /etc/machine-setup
-
-
-### VARIABLES SECTION ##########################################################
+### VARIABLES SECTION #################################################
# Declaration of default variables
vmdir=/var/lib/vmware
-#path=/var/X11R6/bin
-#sessions=
-#session_name=
-
-
-
-### FUNCTIONS SECTION ##########################################################
-# NOT NEEDED NOW
-# unionfs used?
-#pathtest () {
-# if `touch /usr/X11R6/bin/touch >/dev/null 2>&1`; then
-# path=/usr/X11R6/bin/
-# rm ${path}/touch >/dev/null 2>&1
-# else
-# test -d ${path} || mkdir -p ${path}
-# fi
-#}
-
-
-# loop file for exchanging information between linux and vmware
-mount_loop () {
- modprobe loop >/dev/null 2>&1
- mkdir -p /tmp/loop0
- cp ${vmdir}/templ/fd0.img /tmp/${clientip}-fd0.img
- chmod a+rw /tmp/${clientip}-fd0.img
- mount -n -t msdos -o loop,umask=000 /tmp/${clientip}-fd0.img \
- /tmp/loop0
-}
-
-
-# device creation - the module does not trigger udev properly
-vmnet () {
- for i in 0 1 2 3 4 5 6 7 8 9; do
- [ -c /dev/vmnet${i} ] || mknod /dev/vmnet${i} c 119 ${i};
- done
- chmod 0700 /dev/vmnet*
-}
-
-# MOVED TO INITRD
-# special start script for vmware with predefined image
-#copyscript () {
-# # runvmware
-# cp ${vmdir}/templ/runvmware ${path}
-# chmod 755 ${path}/runvmware >/dev/null 2>&1
-#
-# # default kdm session. Xdialog with WM and VMware images
-# cp ${vmdir}/templ/defaultwm ${path}/defaultwm
-# chmod 755 ${path}/defaultwm >/dev/null 2>&1
-#}
-
-
-# MOVED TO INITRD
-# blabla sessiondinens
-#desktop_session () {
-# echo -e "#!/bin/sh\n#\n# file generated by ${0} at ${date}\
-# \n# set to black background\nxsetroot -solid \"black\"\
-# \nstartvm=\$(echo \$0 | sed -e \"s,.*/,,\")\
-# \nxterm -bg black -fg white -geometry 100x30+0-0 +sb \
-# -e \"${path}/runvmware -s \${startvm} ${debug}\"\n" \
-# > ${path}/desktop-session
-# chmod 755 ${path}/desktop-session
-#}
-
-
-# MOVED TO INITRD
-# copy nach blabla
-#vmsession2desktop_session () {
-# sessions=$(ls ${vmdir}/vmsessions/*.desktop 2>/dev/null)
-# if [ -n "${sessions}" ]; then
-# for i in ${vmdir}/vmsessions/*.desktop; do
-# session_name=$(cat ${i} | grep -iw "exec" \
-# | awk -F "=" '{print $2}')
-# ln -s ${path}/desktop-session ${path}/${session_name}
-# done
-# fi
-#}
+### START SCRIPT ######################################################
-### START SCRIPT ###############################################################
-
-# create vmdir
-#mkdir -p /var/lib/vmware 2>&1
-
-# mount von zeugs (wohl besser in der InitRD, da sonst Sessions nicht
-# rechtzeitig fuer gdm/kdm verfuegbar)
-#mount -t nfs -o ro,nolock,intr,nodev,soft,timeo=2,nosuid ${imgsrv} ${vmdir}
-
-# check path
-#pathtest
+modprobe loop >/dev/null 2>&1
# device creation - the module does not trigger udev properly
-vmnet
-
-# special start script for vmware with predefined image
-#copyscript
+for i in 0 1 2 3 4 5 6 7 8 9; do
+ [ -c /dev/vmnet${i} ] || mknod /dev/vmnet${i} c 119 ${i};
+done
+chmod 0700 /dev/vmnet*
# loop file for exchanging information between linux and vmware guest
-mount_loop
-
-# blabla sessiondinens
-#desktop_session
-
-# copy nach blabla
-#vmsession2desktop_session
-
-# mount usbfs
-mount -t usbfs usbfs /proc/bus/usb
+loopsrc=/etc/vmware/loopimg
+loopdst=/etc/vmware/fd-loop
+mkdir -p $loopsrc
+grep "unionfs" /proc/mounts >/dev/null && \
+ mount -o size=1500k -t tmpfs vm-loopimg $loopsrc
+mkdir -p $loopdst
+cp ${vmdir}/templ/fd0.img /$loopsrc/fd1.img
+chmod a+rw /$loopsrc/fd1.img
+mount -n -t msdos -o loop,umask=000 /$loopsrc/fd1.img $loopdst
+
+# mount usbfs needed for vmware to detect usb devices
+grep "/proc/bus/usb" /proc/mounts >/dev/null || \
+ mount -t usbfs usbfs /proc/bus/usb