diff options
| author | Cecil Hugh Watson <knoppmyth@gmail.com> | 2009-01-02 07:36:39 (GMT) | 
|---|---|---|
| committer | Cecil Hugh Watson <knoppmyth@gmail.com> | 2009-01-02 07:36:39 (GMT) | 
| commit | 27ffd698803e8cf434d5960a5a7164419be035be (patch) | |
| tree | 5bbd1f8c75cda6de4070df8e4a5bd09e8b4823ba | |
| parent | d77878f24a8cfa23eb1b3abbcdac0f0f8c0376c2 (diff) | |
| parent | 598c3f886f1629aae5200495eaeb5df0215d0d62 (diff) | |
| download | linhes_pkgbuild-27ffd698803e8cf434d5960a5a7164419be035be.zip linhes_pkgbuild-27ffd698803e8cf434d5960a5a7164419be035be.tar.gz linhes_pkgbuild-27ffd698803e8cf434d5960a5a7164419be035be.tar.bz2 | |
Merge branch 'HEAD' of ssh://cesman@knoppmyth.net/mount/repository/LinHES-PKGBUILD
| -rwxr-xr-x | abs/core-testing/LinHES-config/PKGBUILD | 2 | ||||
| -rwxr-xr-x | abs/core-testing/LinHES-config/install_proxy.sh | 112 | ||||
| -rw-r--r-- | abs/core-testing/LinHES-config/networkconfig.sh | 7 | ||||
| -rw-r--r-- | abs/core-testing/LinHES-config/restore_km_db_chroot.sh | 9 | ||||
| -rw-r--r-- | abs/mv-core/MythVantage-config/networkconfig.sh | 8 | 
5 files changed, 83 insertions, 55 deletions
| diff --git a/abs/core-testing/LinHES-config/PKGBUILD b/abs/core-testing/LinHES-config/PKGBUILD index 543d182..68f88c9 100755 --- a/abs/core-testing/LinHES-config/PKGBUILD +++ b/abs/core-testing/LinHES-config/PKGBUILD @@ -1,6 +1,6 @@  pkgname=LinHES-config  pkgver=1.0 -pkgrel=103 +pkgrel=115  conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev )  pkgdesc="Install and configure your system"  depends=(bc libstatgrab  mysql-python expect curl dnsutils parted sg3_utils nmbscan ) diff --git a/abs/core-testing/LinHES-config/install_proxy.sh b/abs/core-testing/LinHES-config/install_proxy.sh index e6b0976..f251c70 100755 --- a/abs/core-testing/LinHES-config/install_proxy.sh +++ b/abs/core-testing/LinHES-config/install_proxy.sh @@ -14,6 +14,7 @@ run=$MV_ROOT/bin/install_functions.sh  . /etc/systemconfig 2>/dev/null  . $MV_ROOT/bin/networkconfig.sh  CMDLINE=$(cat /proc/cmdline) +BACKUPFILE="/myth/backup/mythconverg.sql.gz"  #TEMPNET="Hostip"$default_interface  #eval MYTHIP=\$${TEMPNET} @@ -53,11 +54,13 @@ function apply_new_auth () {  function backup_sql_check { - -    if [ -f $mountpoint/myth/backup/mythconverg.sql.gz ] +    if [ -f ${mountpoint}${BACKUPFILE} ]      then + +        echo "found ${mountpoint}${BACKUPFILE} "          return 0      else +        echo "did not find ${mountpoint}${BACKUPFILE} "          return 1      fi  } @@ -66,8 +69,15 @@ function upgrade_mount_search {      MYTH_P=`cat /tmp/etc/fstab |grep /myth| awk ' {print $1 '} `      umount $mountpoint/myth      mount $MYTH_P $mountpoint/myth +    backup_sql_check +    if [ $? = 1  ] +    then +        mkdir -p /new_boot/root/backup +        cp -f /tmp/mythconverg.sql.gz  /new_boot/root/backup/mythconverg.sql.gz +        BACKUPFILE="/root/backup/mythconverg.sql.gz" +        echo "setting BACKUPFILE to $BACKUPFILE" +    fi      return 0 -  } @@ -195,7 +205,7 @@ function upgrade () {          $run mount_it $disk          startsize=`statgrab -M disk.|grep $disk.write_bytes|cut -d= -f 2|tr -d " "`          echo "STARTSIZE=$startsize">/tmp/.startsize.io -        echo "Creating $hostname" > /tmp/.install_state +        echo "Upgrading $hostname" > /tmp/.install_state          sleep 1          cp -rf /tmp/etc /new_boot/etc.old          cp -rf  /tmp/oss /new_boot/var/lib/oss.old @@ -210,7 +220,7 @@ function upgrade () {          cp -fp /new_boot/etc.old/ssh/*.pub   /new_boot/etc/ssh/          cp -fp /new_boot/etc.old/ssh/*.key   /new_boot/etc/ssh/          cp -fp /new_boot/etc.old/ssh/*key   /new_boot/etc/ssh/ - +        cp -fp /new_boot/etc.old/mdadm.conf /new_boot/etc/          if [ ! -f /tmp/etc/KnoppMyth-version ]          then              #passwd/shadow/group @@ -225,27 +235,27 @@ function upgrade () {          fi          $run fstab_fix_it $disk UPGRADE -	#this is here to copy in the systemconfig file as soon as possible. +	    #this is here to copy in the systemconfig file as soon as possible.          cp -f /etc/systemconfig "$mountpoint"/etc          echo "Writing boot sector" > /tmp/.install_state          progress 99          sleep 1          $run grub_it $disk - - -    echo "Configuring system" > /tmp/.install_state +        echo "Configuring system" > /tmp/.install_state          progress          sleep 1          cp /etc/mtab "$mountpoint"/etc/mtab          cp -f /etc/systemconfig "$mountpoint"/etc  #make sure mythconverg.sql.gz is present -        if [ ! backup_sql_check ] +        backup_sql_check +        if [ $? = 1 ]          then              upgrade_mount_search          fi - -        if [  -f /tmp/etc/KnoppMyth-version ] +        echo $CMDLINE | grep -q clean_upgrade +        status=$? +        if [  -f /tmp/etc/KnoppMyth-version -o  $status = 0 ]          then              #run save syssettings to save settings, then copy to new mountpoint              $MV_ROOT/bin/restore_default_settings.sh  -c save -t syssettings -h $MVHOSTNAME -d localhost @@ -255,9 +265,14 @@ function upgrade () {              chown root:mythtv "$mountpoint"/etc/systemconfig              chown -R mythtv:mythtv ${mountpoint}$SE              chmod -R 775   ${mountpoint}$SE -            touch $mountpoint/home/mythtv/.kmupgrade && chmod 777 $mountpoint/home/mythtv/.kmupgrade +            if [ ! $status = 0 ] +            then +                touch $mountpoint/home/mythtv/.kmupgrade && chmod 777 $mountpoint/home/mythtv/.kmupgrade +            fi          fi + +          cp -f $MV_ROOT/bin/*.sh "$mountpoint"$MV_ROOT/bin/          chmod -R 755 ${mountpoint}/root          chown root:mythtv "$mountpoint"/etc/systemconfig @@ -270,29 +285,41 @@ function upgrade () {          #wrap this in a network check_network, no need to update the db if the import worked.          #####  do I need to start mysql?          /etc/rc.d/mysqld stop -        if [ -f /new_boot/myth/backup/mythconverg.sql.gz ] +        echo $CMDLINE | grep -q clean_upgrade +        status=$? +        if [ $status = 0 ]          then +        #new db as part of clean upgrade              echo "--------------------------------" -            echo "Restoring database" +            echo "clean upgrade installing new database"              echo "--------------------------------" -            chroot "$mountpoint"   "$MV_ROOT/bin/restore_km_db_chroot.sh"  >  /tmp/chrootdb_km.out -        else -            echo "--------------------------------" -            echo "Couldn't find backup file, installing new database" -            echo "--------------------------------" -            touch /tmp/.upgrade_db_failed              chroot "$mountpoint"   "$MV_ROOT/bin/install_db_chroot.sh"  >  /tmp/chrootdb.out +        else +        #proceed as normal +            if [ -f "$mountpoint"/$BACKUPFILE ] +            then +                echo "--------------------------------" +                echo "Restoring database" +                echo "--------------------------------" +                chroot "$mountpoint"   "$MV_ROOT/bin/restore_km_db_chroot.sh" "$BACKUPFILE"  >  /tmp/chrootdb_km.out +            else +                echo "--------------------------------" +                echo "Couldn't find backup file, installing new database" +                echo "--------------------------------" +                touch /tmp/.upgrade_db_failed +                chroot "$mountpoint"   "$MV_ROOT/bin/install_db_chroot.sh"  >  /tmp/chrootdb.out +            fi          fi          if [  -f /tmp/etc/KnoppMyth-version ]          then -            chroot "$mountpoint" $MV_ROOT/bin/restore_default_settings.sh -c restore -t hostsettings +           chroot "$mountpoint" $MV_ROOT/bin/restore_default_settings.sh -c restore -t hostsettings  	    #change permissions of /myth (only needed on km->linhes) -	    chown -R mythtv:mythtv $mountpoint/myth -            chown -R root:root $mountpoint/myth/backup +	       chown -R mythtv:mythtv $mountpoint/myth +           chown -R root:root $mountpoint/myth/backup          else -            chroot "$mountpoint" $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings +           chroot "$mountpoint" $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings          fi          #          #Run second time @@ -300,8 +327,6 @@ function upgrade () {          chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh advanced,this_is_install          apply_new_auth - -          umount "$mountpoint/dev"          umount "$mountpoint/proc" @@ -364,10 +389,15 @@ echo "-----------------------------------------------------------------------3--           netboot-full_install   ;;          find_update) +              #TRY TO mount first partition of drive              #copy /etc/systemconfig to live,  import settings into db              #umount drive -            $run mount_it $disk +            echo $CMDLINE | grep -q clean_upgrade +            if [ $? = 1 ] +            then +                $run mount_it $disk +                [ -e "/new_boot/root/backup/mythconverg.sql.gz" ] && cp /new_boot/root/backup/mythconverg.sql.gz /tmp                  if [ -f /new_boot/etc/systemconfig ]                  then                  ###########ADD templates @@ -378,10 +408,11 @@ echo "-----------------------------------------------------------------------3--                      cp /new_boot/etc/systemconfig /etc/systemconfig                      cp -rf  /new_boot/etc /tmp/etc                      cp -rf /new_boot/var/lib/oss  /tmp/oss - +                    [ -e /tmp/etc/mdadm.conf ] && cp -rf /tmp/etc/mdadm.conf /etc/                      $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings -h $MVHOSTNAME  -d 127.0.0.1                  else                      cp -rf  /new_boot/etc /tmp/etc +                    [ -e /tmp/etc/mdadm.conf ] && cp -rf /tmp/etc/mdadm.conf /etc/                      #now we search for the timezone and try to update                      TZREGION=`cat /tmp/etc/timezone | cut -d"/" -f1`                      TZSUB=`cat /tmp/etc/timezone | cut -d"/" -f2 -` @@ -394,20 +425,13 @@ echo "-----------------------------------------------------------------------3--                              $run update_db_it  HostTimeZoneRegion "$TZREGION"                              $run update_db_it  HostTimeZoneRegion_$TZREGION "$TZSUB"                      fi - - -                  fi - - -              $run umount_it $disk +            fi              ;;          upgrade_it) -                #"$MV_ROOT/bin/install_proxy.sh upgrade_it " + install_drive + " " + rootfs +  "&"                  upgrade -              ;;          disk_model_it)                          model="unknown" @@ -420,11 +444,8 @@ echo "-----------------------------------------------------------------------3--                              s*)     model=`sginfo /dev/$2|grep Product|awk ' { print $2 } '`                                      ;;                          esac -                                size=`parted /dev/$2  print |grep Disk|awk  ' { print $3 } '  ` - - -                                echo ""$model" $size " >/tmp/model - +                        size=`parted /dev/$2  print |grep Disk|awk  ' { print $3 } '  ` +                        echo ""$model" $size " >/tmp/model              ;;          network_check_it)                          #Should never return from check_network @@ -437,7 +458,7 @@ echo "-----------------------------------------------------------------------3--                                  check_self)                                              myipdefault=`ifconfig  | grep -C1 $default_interface| grep -v $default_interface | cut -d: -f2 | awk '{ print $1}'`                                              echo "network check myself" -                                            ifconfig  +                                            ifconfig                                              ping -c 1 $myipdefault                                                      if [ ! $? = 0 ]                                                      then @@ -448,12 +469,13 @@ echo "-----------------------------------------------------------------------3--                                  check_gw)                                              #check gateway                                              echo "network check gateway" -                                            /sbin/route -n  +                                            /sbin/route -n                                              mygwdefault=`/sbin/route -n  |grep $default_interface|grep UG|awk '{ print $2}'`                                              echo "Default gateway seems to be $mygwdefault"  					                        if  [ !  x$mygwdefault = x ]  					                        then -	                                            ping -c 1 $mygwdefault +                                                sleep 2 +	                                            ping -c 5 $mygwdefault          	                                    if [ ! $? = 0 ]                  	                            then                          	                        exit 4 diff --git a/abs/core-testing/LinHES-config/networkconfig.sh b/abs/core-testing/LinHES-config/networkconfig.sh index 23e3774..5611265 100644 --- a/abs/core-testing/LinHES-config/networkconfig.sh +++ b/abs/core-testing/LinHES-config/networkconfig.sh @@ -51,8 +51,11 @@ function change_iface_state () {              sed -i -e 's/^DISABLED=.*$/DISABLED=no/g' $ETCNETDIR/$1/options      else              echo "setting $1 to inactive" -            sed -i -e 's/^ONBOOT=.*$/ONBOOT=no/g' $ETCNETDIR/$1/options -            sed -i -e 's/^DISABLED=.*$/DISABLED=yes/g' $ETCNETDIR/$1/options +            if [ -e $ETCNETDIR/$1/options ] +            then +                sed -i -e 's/^ONBOOT=.*$/ONBOOT=no/g' $ETCNETDIR/$1/options +                sed -i -e 's/^DISABLED=.*$/DISABLED=yes/g' $ETCNETDIR/$1/options +            fi              /sbin/ifconfig $1 down              ip address flush $1      fi diff --git a/abs/core-testing/LinHES-config/restore_km_db_chroot.sh b/abs/core-testing/LinHES-config/restore_km_db_chroot.sh index 17ad113..7ff6faf 100644 --- a/abs/core-testing/LinHES-config/restore_km_db_chroot.sh +++ b/abs/core-testing/LinHES-config/restore_km_db_chroot.sh @@ -30,12 +30,11 @@ if  [ $SystemType = "Master_backend" -o $SystemType = "Standalone"  ]                     pacman --noconfirm -R mythdb-initial                     pacman --noconfirm  -S mythdb-initial -                   if [ -f /myth/backup/mythconverg.sql.gz ] +                   if [ -f $DBFILE ]                     then                          echo "restoring old database" -                        gunzip -c /myth/backup/mythconverg.sql.gz > /myth/backup/mythconverg.sql -                        mysql  mythconverg < /myth/backup/mythconverg.sql - +                        gunzip -c $DBFILE > /tmp/mythconverg.sql +                        mysql  mythconverg < /tmp/mythconverg.sql                     else                          echo "Could not restore old database, mythconverg.sql is missing."                          touch /tmp/.upgrade_db_failed @@ -48,7 +47,7 @@ if  [ $SystemType = "Master_backend" -o $SystemType = "Standalone"  ]                  fi              fi          done -        rm -f /myth/backup/mythconverg.sql +        rm -f /tmp/mythconverg.sql      else          exit 0      fi diff --git a/abs/mv-core/MythVantage-config/networkconfig.sh b/abs/mv-core/MythVantage-config/networkconfig.sh index b4ffd5c..5611265 100644 --- a/abs/mv-core/MythVantage-config/networkconfig.sh +++ b/abs/mv-core/MythVantage-config/networkconfig.sh @@ -51,8 +51,11 @@ function change_iface_state () {              sed -i -e 's/^DISABLED=.*$/DISABLED=no/g' $ETCNETDIR/$1/options      else              echo "setting $1 to inactive" -            sed -i -e 's/^ONBOOT=.*$/ONBOOT=no/g' $ETCNETDIR/$1/options -            sed -i -e 's/^DISABLED=.*$/DISABLED=yes/g' $ETCNETDIR/$1/options +            if [ -e $ETCNETDIR/$1/options ] +            then +                sed -i -e 's/^ONBOOT=.*$/ONBOOT=no/g' $ETCNETDIR/$1/options +                sed -i -e 's/^DISABLED=.*$/DISABLED=yes/g' $ETCNETDIR/$1/options +            fi              /sbin/ifconfig $1 down              ip address flush $1      fi @@ -262,6 +265,7 @@ function start_network {  if [ ! $USEVNC = 0 ]  then      /etc/net/scripts/network.init reload +    /etc/net/scripts/network.init restart  else      echo "VNC/NETBOOT in use, will NOT restart network"  fi | 
