diff options
-rw-r--r-- | Makefile | 1 | ||||
-rwxr-xr-x | initramfs/initrd-stuff/init | 20 | ||||
-rwxr-xr-x | initramfs/mkdxsinitrd | 19 | ||||
-rw-r--r-- | vmware/fd0.img (renamed from vmware/fd1.img) | bin | 1474560 -> 1474560 bytes |
4 files changed, 32 insertions, 8 deletions
@@ -189,6 +189,7 @@ functions via\n# inclusion: '. /etc/functions' ..." \ @ln -sf $(SLX_BIN_PATH)/slxversion $(USR_BIN_PATH)/ vmware_install: + @# we should read the config file here!! @echo "Installing VMware files to $(SLX_VMWARE_PATH)" @mkdir -p $(SLX_VMWARE_PATH)/templ \ -p $(SLX_VMWARE_PATH)/vmsessions/kdm diff --git a/initramfs/initrd-stuff/init b/initramfs/initrd-stuff/init index a2972105..18c06f22 100755 --- a/initramfs/initrd-stuff/init +++ b/initramfs/initrd-stuff/init @@ -2,11 +2,11 @@ # main script for new type of initial ramdisk for OpenSLX linux diskless # clients version 4 # -# Dirk von Suchodoletz <dirk@goe.net>, 19-11-2006 +# Dirk von Suchodoletz <dirk@goe.net>, 02-12-2006 # <mj0@uni-freiburg.de> (xenbr), 27-09-2006 # # (c) 2006 - RZ Universitaet Freiburg -# (c) 2006 - OpenSLX.ORG project +# (c) 2006 - OpenSLX.ORG Project # functions common for all distros, messages contains all error and info # output (for some reason the error output is not produced properly - crash) @@ -197,6 +197,20 @@ nfsroot=\"${nfsroot}\"\n" >> /etc/machine-setup XENBR=1;; esac done +# at this point a timer should be started to ensure an automated reboot +# or halt of the machine if SLX init does not succeed (e.g. missing kernel +# module for the network adaptor) +# fixme/testme!! +# errorhalt () { +# if [ "${DEBUGLEVEL}" -lt 3 ] ; then +# [ ! -f /proc/version ] && mount -n -t proc proc /proc +# [ ! -f /proc/sysrq-trigger ] && echo -e $init_nosysrq +# usleep 100000 +# echo "o" > /proc/sysrq-trigger +# fi +# } +# errorhalt & + # check if at least one type of IP configuration is availabe if [ -z "$DHCP" -a -z "$LDAP" -a -z "$IPINFO" ] ; then echo -e "# You did not specify any advanced configuration mode for your \ @@ -251,7 +265,7 @@ ipsetup 127.0.0.1 255.0.0.0 0.0.0.0 127.255.255.255 lo if [ -n "$IPINFO" ] ; then getip () { val=$IPINFO; i=$(expr $1 - 1); - while [ $i -gt 0 ] ; do + while [ $i -ge 0 ] ; do val=${val#*:} ; i=$(expr $i - 1); done; echo $val|sed "s/:.*//"; } diff --git a/initramfs/mkdxsinitrd b/initramfs/mkdxsinitrd index 5ad2f2a6..089e8d47 100755 --- a/initramfs/mkdxsinitrd +++ b/initramfs/mkdxsinitrd @@ -4,7 +4,7 @@ # ramdisks for linux diskless clients (stage2 system # setup) # -# Author(s): Dirk von Suchodoletz <dirk@goe.net>, 15-10-2006 +# Author(s): Dirk von Suchodoletz <dirk@goe.net>, 02-12-2006 # Nico Dietrich # Felix Endres # <mj0@uni-freiburg.de> (xenbr), 27-09-2006 @@ -68,8 +68,10 @@ SLX_CONFIG_PATH=@@@SLX_CONFIG_PATH@@@ usage() { echo -e "mkdxsinitrd [-bgh] [-k kernel version] [-i path/file] \ -[-f module(s)] [-n module(s)] [-m module(s)] [-r path] [-s theme]\n" +[-f module(s)] [-n module(s)] [-m module(s)] [-r path] [-s theme]\n\ +[-c machine-setup]" echo "OPTIONEN" + echo " -c location of client configuration file (machine-setup)" echo " -g Benutze glibc als Basisbibliothek in der ramdisk." echo " -b Use busybox instead of separate binaries." echo " -h Zeige Informationen zur Benutzung." @@ -322,10 +324,11 @@ cp -a ${themes}* ${INSTDIR}/usr/share/themes ######################################################################### # End of function declaration -while getopts :bhgk:i:r:o:s:f:n:m:Sut:d:v:I:V:a: a ; do +while getopts :bhgk:c:i:r:o:s:f:n:m:Sut:d:v:I:V:a: a ; do case $a in \:|\?) case $OPTARG in + c) echo "-c requires location of machine-setup file";; k) echo "-k requires kernel version parameter";; i) echo "-i requires initrd path parameter";; f) echo "-f requires file system module list parameter";; @@ -345,6 +348,7 @@ while getopts :bhgk:i:r:o:s:f:n:m:Sut:d:v:I:V:a: a ; do exit 1 ;; b) use_busybox=1;; + c) CLCONFFILE=$OPTARG;; g) use_glibc=1;; k) KERNVER=$OPTARG;; i) INITRD_PATH=$OPTARG ;; @@ -724,11 +728,15 @@ chmod 755 ${INSTDIR}/init \ # add the common default client configuration file - just to ensure to # have all major variables defined. !!These settings are most probably # are overwritten by fileget in stage3 within initramfs!! -if [ -f ${SLX_PRIVATE_PATH}/config/default/initramfs/machine-setup ] ; then +# fixme! it should be possible to provide the filename and location via +# parameter +if [ -n "${CLCONFFILE}" ] ; then + cp ${CLCONFFILE} ${INSTDIR}/etc/machine-setup + echo "Using ${CLCONFFILE}" +elif [ -f ${SLX_PRIVATE_PATH}/config/default/initramfs/machine-setup ] ; then cp ${SLX_PRIVATE_PATH}/config/default/initramfs/machine-setup \ ${INSTDIR}/etc/machine-setup echo "Using ${SLX_PRIVATE_PATH}/config/default/initramfs/machine-setup" - # use the installed default machine-setup.default elif [ -f ${SLX_SHARE_PATH}/templates/machine-setup.default ] ; then cp ${SLX_SHARE_PATH}/templates/machine-setup.default \ @@ -749,6 +757,7 @@ elif [ -f ../installer/default_files/machine-setup.default ] ; then echo "Warning: Using ../installer/default_files/machine-setup.default" else #inserted password for root for debugging purposes + # fixme - set more default values?! echo -e "# default for machine-setup does not exist\n# root logins are \ disabled\nroot_pw='"'$1$T7VD/mmQ$aCP1WEaWplEsHe9khv4kK.'"'" \ > ${INSTDIR}/etc/machine-setup diff --git a/vmware/fd1.img b/vmware/fd0.img Binary files differindex 7c47c615..7c47c615 100644 --- a/vmware/fd1.img +++ b/vmware/fd0.img |