diff options
author | Dirk von Suchodoletz | 2009-08-15 17:55:04 +0200 |
---|---|---|
committer | Dirk von Suchodoletz | 2009-08-15 17:55:04 +0200 |
commit | c09bfd119f2ed3f1edf1bfbdf7a0beb1b2abea40 (patch) | |
tree | ad40efbc1fcb79c76718d77773cb412e4a04b937 /initramfs/stage3-stuff/etc/functions | |
parent | Some trivial stuff ... (diff) | |
download | core-c09bfd119f2ed3f1edf1bfbdf7a0beb1b2abea40.tar.gz core-c09bfd119f2ed3f1edf1bfbdf7a0beb1b2abea40.tar.xz core-c09bfd119f2ed3f1edf1bfbdf7a0beb1b2abea40.zip |
Re-enabling the functionality to boot from a local block device (mainly
USB sticks). It allows for demonstration purposes and special setups to
have the base filesystem locally (see related #156).
git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@3092 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'initramfs/stage3-stuff/etc/functions')
-rw-r--r-- | initramfs/stage3-stuff/etc/functions | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/initramfs/stage3-stuff/etc/functions b/initramfs/stage3-stuff/etc/functions index 7731790c..51f5173b 100644 --- a/initramfs/stage3-stuff/etc/functions +++ b/initramfs/stage3-stuff/etc/functions @@ -369,8 +369,9 @@ local cfgfile if [ "x$filepath" != "x" ] ; then cfgfile=${filepath} [ "x$fileserv" = "x" ] && fileserv=$(checkip ${serverip}) - # waiting for dns if fireserv is a name - echo ${fileserv} | grep -qi [a-z] && waitfor /tmp/dhcp-done 10000 + # wait for dns if "fileserv" is a name and not lbd device + [ "$fileprot" != "lbd" ] && \ + echo ${fileserv} | grep -qi [a-z] && waitfor /tmp/dhcp-done 10000 [ $DEBUGLEVEL -ge 1 ] && echo "fileget - fileprot:$fileprot, filepath:\ $filepath, fileserv:$fileserv" >>$LOGFILE case "$fileprot" in @@ -378,15 +379,17 @@ $filepath, fileserv:$fileserv" >>$LOGFILE wget_get $cfgfile $fileprot://$fileserv \ && { unpack /tmp/$(basename $cfgfile) && break; } 2>>$LOGFILE ;; - file) + lbd) local ldev=$fileserv - echo "Waiting for /mnt/etc ...." - waitfor /mnt/etc 10000 - mkdir /tmp/$ldev - echo -e "ext2\nreiserfs\nvfat\nxfs" >/etc/filesystems - mount -o ro /dev/$ldev /tmp/$ldev || error "$init_errlfg" - unpack /tmp/$ldev/$cfgfile - umount /dev/$ldev + echo "Waiting for configuration file ${cfgfile} ...." + [ $DEBUGLEVEL -ge 1 ] && echo "fileget - fileprot:$fileprot, filepath:\ +$filepath, fileserv:$fileserv" >>$LOGFILE + waitfor /mnt/${cfgfile} 10000 + if [ -f /mnt/${cfgfile} ]; then + unpack /mnt/$cfgfile + else + error "$init_errlfg" + fi ;; *) tftp_get $cfgfile $fileserv \ |