diff options
author | Volker Uhrig | 2008-02-06 22:22:09 +0100 |
---|---|---|
committer | Volker Uhrig | 2008-02-06 22:22:09 +0100 |
commit | e28f5780fc328d7f8797f62d9350e62f6861014c (patch) | |
tree | 5786b48004e710a801621adbdc0837a0283c2930 /initramfs/initrd-stuff | |
parent | * added the contents of the following dirs to the exclude filter, since (diff) | |
download | core-e28f5780fc328d7f8797f62d9350e62f6861014c.tar.gz core-e28f5780fc328d7f8797f62d9350e62f6861014c.tar.xz core-e28f5780fc328d7f8797f62d9350e62f6861014c.zip |
* vmware plugin is no longer offering the list of available vmwares
* Prepared vmware plugin for the new vm-chooser menu
* VMware plugin could now be broken. Currently untested.
* cleaned servconfig
* check if SuSE systems have /opt/gdm/... perhaps the GDM configuration
is broken. At least it suppresses an error.
git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1519 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'initramfs/initrd-stuff')
-rwxr-xr-x | initramfs/initrd-stuff/bin/servconfig | 149 |
1 files changed, 2 insertions, 147 deletions
diff --git a/initramfs/initrd-stuff/bin/servconfig b/initramfs/initrd-stuff/bin/servconfig index 9b4836b8..552b3fd3 100755 --- a/initramfs/initrd-stuff/bin/servconfig +++ b/initramfs/initrd-stuff/bin/servconfig @@ -106,48 +106,6 @@ echo -e "\t# entries added by $0: $date" >> /mnt/etc/${D_INITDIR}/boot.slx [ -n "${CONSOLE_FONT}" ] && consolefont ############################################################################# -# vmware stuff first part: two scenarios -# * VM images in /usr/share/vmware - then simply link -# * VM images via additional mount (mount source NFS, NBD, ...) -if [ "x$vmware" != "x" ] && [ "x$vmware" != "xno" ] ; then - # map slxgrp to pool, so it's better to understand - pool=${slxgrp} - # if we dont have slxgrp defined - [ -z "$pool" ] && pool="default" - - # get source of vmware image server (get type, server and path) - if strinstr "/" "$vmware" ; then - vmimgprot=$(uri_token $vmware prot) - vmimgserv=$(uri_token $vmware server) - vmimgpath="$(uri_token $vmware path)" - fi - if [ -n "${vmimgserv}" ] ; then - testmkd /mnt/var/lib/vmware - case "${vmimgprot}" in - *nbd) - ;; - lbdev) - # we expect the stuff on toplevel directory, filesystem type should be - # autodetected here ... (vmimgserv is blockdev here) - vmbdev=/dev/${vmimgserv} - waitfor ${vmbdev} 20000 - echo -e "ext2\nreiserfs\nvfat\nxfs" >/etc/filesystems - mount -o ro ${vmbdev} /mnt/var/lib/vmware || error "$scfg_evmlm" nonfatal - ;; - *) - # we expect nfs mounts here ... - for proto in tcp udp fail; do - [ $proto = "fail" ] && { error "$scfg_nfs" nonfatal; - noimg=yes; break;} - mount -n -t nfs -o ro,nolock,$proto ${vmimgserv}:${vmimgpath} \ - /mnt/var/lib/vmware && break - done - ;; - esac - fi -fi - -############################################################################# # setup passwd and shadow for local system users like root, bin, daemon and # nobody if no user/admin provided passwd exists ... # the root password provided by machine-setup is used only if no passwd file @@ -319,111 +277,6 @@ fi config_nscd ############################################################################# -# vmware stuff second part: setting up the environment - -# create needed directories and files -if [ "x$vmware" != "x" ] && [ "x$vmware" != "xno" ] ; then - for i in /etc/vmware/vmnet1/dhcpd /etc/vmware/vmnet8/nat \ - /etc/vmware/vmnet8/dhcpd /var/run/vmware /etc/vmware/loopimg \ - /etc/vmware/fd-loop /var/X11R6/bin /etc/X11/sessions; do - testmkd /mnt/$i - done - # create needed devices (not created automatically via module load) - for i in "/dev/vmnet0 c 119 0" "/dev/vmnet1 c 119 1" \ - "/dev/vmnet8 c 119 8" "/dev/vmmon c 10 165"; do - mknod $i - done - # create the vmware startup configuration file /etc/vmware/locations - # fixme --> ToDo - # echo -e "answer VNET_8_NAT yes\nanswer VNET_8_HOSTONLY_HOSTADDR \n\ -#192.168.100.1\nanswer VNET_8_HOSTONLY_NETMASK 255.255.255.0\n\ -#file /etc/vmware/vmnet8/dhcpd/dhcpd.conf\n\ -# remove_file /etc/vmware/not_configured" >/mnt/etc/vmware/locations - - chmod 0700 /dev/vmnet* - chmod 1777 /mnt/etc/vmware/fd-loop - # loop file for exchanging information between linux and vmware guest - if modprobe ${MODPRV} loop; then - mdev -s - else - : #|| error "" nonfatal - fi - # mount a clean tempfs (bug in UnionFS prevents loopmount to work) - strinfile "unionfs" /proc/mounts && \ - mount -n -o size=1500k -t tmpfs vm-loopimg /mnt/etc/vmware/loopimg - # create an empty floppy image of 1.4MByte size - dd if=/dev/zero of=/mnt/etc/vmware/loopimg/fd.img \ - count=2880 bs=512 2>/dev/null - chmod 0777 /mnt/etc/vmware/loopimg/fd.img - # use dos formatter from rootfs (later stage4) - LD_LIBRARY_PATH=/mnt/lib /mnt/sbin/mkfs.msdos \ - /mnt/etc/vmware/loopimg/fd.img >/dev/null 2>&1 #|| error - mount -n -t msdos -o loop,umask=000 /mnt/etc/vmware/loopimg/fd.img \ - /mnt/etc/vmware/fd-loop - echo -e "usbfs\t\t/proc/bus/usb\tusbfs\t\tauto\t\t 0 0" >> /mnt/etc/fstab - # needed for VMware 5.5.3 and versions below - echo -e "\tmount -t usbfs usbfs /proc/bus/usb 2>/dev/null" \ - >>/mnt/etc/${D_INITDIR}/boot.slx - config_vmware - chmod 1777 /mnt/var/run/vmware - # define a variable where gdm/kdm should look for additional sessions - # do we really need it? - # export vmsessions=/var/lib/vmware/vmsessions - - # directory of templates and xdialog files - vmdir=/mnt/var/lib/vmware - - if cp ${vmdir}/templates/xdialog.sh /mnt/var/X11R6/bin 2>/dev/null; then - # create default.desktop for kdm - echo -e "[Desktop Entry]\nEncoding=UTF8\nName=Default\nName[de]=Standard"\ - >/mnt/etc/X11/sessions/default.desktop - - #I dont like this part, but there is no simple workaround. We need to - #create xdialog.sh on every box :( - echo "Exec=/var/X11R6/bin/xdialog.sh" \ - >>/mnt/etc/X11/sessions/default.desktop - echo "Type=Application" >>/mnt/etc/X11/sessions/default.desktop - - # all virtual machine clients in xdialog - cat ${vmdir}/xdialog-files/${pool}/*.xdialog \ - >>/mnt/var/X11R6/bin/xdialog.sh - - # /usr/share/xsessions/* files for the xdialog menu - for i in /mnt/usr/share/xsessions/*.desktop; do - # execute - echo "\"$(grep '^Exec=' ${i}|sed 's/^Exec=//')\" \\" \ - >>/mnt/var/X11R6/bin/xdialog.sh - # short description - echo "\"$(grep '^Name=' ${i}|sed 's/^Name=//')\" \\" \ - >>/mnt/var/X11R6/bin/xdialog.sh - # long description - echo "\"$(grep '^Comment=' ${i}|sed 's/^Comment=//')\" \\" \ - >>/mnt/var/X11R6/bin/xdialog.sh - done - # closing bracket as last line ends with '\' - echo ")" >>/mnt/var/X11R6/bin/xdialog.sh - chmod 755 /mnt/var/X11R6/bin/xdialog.sh - - # copy xdm files, so we could choose them before we log in - for i in ${vmdir}/xdmsessions/${pool}/*.desktop;do - cp ${i} /mnt/etc/X11/sessions/ - done - else - error "$scfg_vmchs" nonfatal - fi - # we configured vmware, so we can delete the not_configured file - rm /mnt/etc/vmware/not_configured 2>/dev/null - - # copy dhcpd.conf and nat for vmnet8 (nat) - # fixme: It should be possible to start just one vmware dhcp which should - # listen to both interfaces vmnet1 and vmnet8 ... - cp /mnt/var/lib/vmware/templates/dhcpd.conf \ - /mnt/etc/vmware/vmnet8/dhcpd 2>/dev/null - cp /mnt/var/lib/vmware/templates/nat.conf \ - /mnt/etc/vmware/vmnet8/nat 2>/dev/null -fi - -############################################################################# # preparation of /tmp directory (partition 44, nfs scratch, ramdisk). there # might be the chance that we have a disk partition available, so wait for # completion of detection, setup process @@ -456,6 +309,8 @@ if [ -n "$scratch" -a -z "$tmpisdisk" ] ; then umount /mnt/tmp >/dev/null 2>&1 mount -t nfs -o rw,tcp,nolock,intr,nodev,soft,timeo=2,nosuid \ ${tmpserv}:${tmppath}/${clientip} /mnt/tmp >/dev/null 2>&1 + # somehow we need to move it to the vmware plugin. Any ideas + # how to handle the dependencies? # create an empty container file for vmware *.vmem, it does not # like to live on NFS exports if [ "x$vmware" != "x" -a "x$vmware" != "xno" ] ; then |