Ignore:
Timestamp:
03/16/09 15:32:35 (3 years ago)
Author:
tschmitt
Message:
  • Paket:
    • Fix: Syntaxfehler in debian/rules
    • Link zu /usr/sbin/update-linbofs fuer share/update-linbofs.sh hinzugefuegt
    • Grub4dos: preset_menu.lst diff aktualisiert
  • Serverside scripting:
    • update-linbofs.sh: Server-IP in start.conf wird nun aktualisiert (schließt #53)
  • Kernel:
    • Neuer Upstream 2.6.29-rc8
  • Linbofs:
    • grub4dos 0.4.4-2009-03-15
    • rsync 3.0.5
    • ntfs-3g 2009.2.1
    • Wartezeit vor Windows-Reboot verkuerzt
File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/linuxmuster-linbo/trunk/share/update-linbofs.sh

    r337 r466  
    44# 
    55# Thomas Schmitt <schmitt@lmz-bw.de> 
    6 # 19.11.2008 
     6# 
     7# last change: 24.02.2009 
    78# 
    89 
     
    1011. /usr/share/linuxmuster/config/dist.conf || exit 1 
    1112. $HELPERFUNCTIONS || exit 1 
     13 
     14groups="$@" 
     15 
     16# sets serverip in start.conf 
     17set_serverip(){ 
     18        local conf=$1 
     19        grep -q ^"Server = $serverip" $conf && return 0 
     20        if grep -q ^Server $conf; then 
     21                sed -e "s/^Server.*/Server = $serverip/" -i $conf 
     22        else 
     23                sed -e "/^\[LINBO\]/a\ 
     24Server = $serverip" -i $conf 
     25        fi 
     26} 
     27 
     28# sets group in start.conf 
     29set_group(){ 
     30        local conf=$1 
     31        local group=$2 
     32        grep -q ^"Group = $group" $conf && return 0 
     33        if grep -q ^Group $conf; then 
     34                sed -e "s/^Group.*/Group = $group/" -i $conf 
     35        else 
     36                sed -e "/^Server/a\ 
     37Group = $group" -i $conf 
     38        fi 
     39} 
     40# sets pxe config file 
     41set_pxeconfig(){ 
     42        local group=$1 
     43        local conf="$LINBODIR/pxelinux.cfg/$group" 
     44        local linbofs=linbofs.$group.gz 
     45        [ -e "$conf" ] || cp $PXELINUXCFG $conf 
     46        grep -q $linbofs $conf && return 0 
     47        sed -e "s|initrd=linbofs[.a-zA-Z0-9_-]*.gz|initrd=$linbofs|g" -i $conf 
     48} 
    1249 
    1350# this script makes only sense if imaging=linbo 
     
    6299[ $RC -ne 0 ] && bailout " Failed to unpack linbofs.gz!" 
    63100 
    64 # begin with default linbofs.gz 
    65 echo -n "  * default ... " 
    66  
    67101# store linbo md5 password 
    68102[ -n "$linbo_md5passwd" ] && echo -n "$linbo_md5passwd" > etc/linbo_passwd 
     
    72106echo "mailhub=$serverip:25" > etc/ssmtp/ssmtp.conf 
    73107 
    74 # copy default start.conf 
    75 cp -f $LINBODIR/start.conf . 
     108if [ -z "$groups" ] || stringinstring default "$groups"; then 
     109        # begin with default linbofs.gz 
     110        echo -n "  * default ... " 
    76111 
    77 # pack default linbofs.gz again 
    78 find . | cpio --quiet -o -H newc | gzip -9c > $LINBODIR/linbofs.gz ; RC="$?" 
    79 [ $RC -ne 0 ] && bailout "failed!" 
    80 echo -e "[LINBOFS]\ntimestamp=`date +%Y\%m\%d\%H\%M`\nimagesize=`ls -l $LINBODIR/linbofs.gz | awk '{print $5}'`" > $LINBODIR/linbofs.gz.info 
    81 echo "Ok!" 
     112        # check and copy default start.conf 
     113        set_serverip $LINBODIR/start.conf 
     114        cp -f $LINBODIR/start.conf . 
     115 
     116        # pack default linbofs.gz again 
     117        find . | cpio --quiet -o -H newc | gzip -9c > $LINBODIR/linbofs.gz ; RC="$?" 
     118        [ $RC -ne 0 ] && bailout "failed!" 
     119        echo -e "[LINBOFS]\ntimestamp=`date +%Y\%m\%d\%H\%M`\nimagesize=`ls -l $LINBODIR/linbofs.gz | awk '{print $5}'`" > $LINBODIR/linbofs.gz.info 
     120        echo "Ok!" 
     121fi 
     122 
     123# if no groups are given on cmdline then take all groups from workstations file 
     124[ -z "$groups" ] && groups=`grep -v ^# $WIMPORTDATA | awk -F\; '{ print $3 " " $11 }' | grep -v -w 0 | awk '{ print $1 }' | sort -u` 
    82125 
    83126# now process all groups found in $WIMPORTDATA 
    84 for i in `grep -v ^# $WIMPORTDATA | awk -F\; '{ print $3 " " $11 }' | grep -v -w 0 | awk '{ print $1 }' | sort -u`; do 
     127for i in $groups; do 
     128 
     129        # skip group default 
     130        [ "$group" = "default" ] && continue 
    85131 
    86132        # do nothing if there is no start.conf for this group 
     
    90136        echo -n "  * $i ... " 
    91137 
    92         # adding group name to start.conf 
    93         if grep -q ^Group $LINBODIR/start.conf.$i; then 
    94                 sed -e "s/^Group.*/Group = $i/" -i $LINBODIR/start.conf.$i 
    95         else 
    96                 sed -e "/^Server/a\ 
    97 Group = $i" -i $LINBODIR/start.conf.$i 
    98         fi 
     138        # check and repair necessary conf files 
     139        set_serverip $LINBODIR/start.conf.$i 
     140        set_group $LINBODIR/start.conf.$i $i 
     141        set_pxeconfig $i 
    99142 
    100143        # copy group specific start.conf 
Note: See TracChangeset for help on using the changeset viewer.