diff options
Diffstat (limited to 'abs/mv-core/MythVantage-config/build_diskless.sh')
-rwxr-xr-x | abs/mv-core/MythVantage-config/build_diskless.sh | 162 |
1 files changed, 0 insertions, 162 deletions
diff --git a/abs/mv-core/MythVantage-config/build_diskless.sh b/abs/mv-core/MythVantage-config/build_diskless.sh deleted file mode 100755 index c6cce57..0000000 --- a/abs/mv-core/MythVantage-config/build_diskless.sh +++ /dev/null @@ -1,162 +0,0 @@ -#!/bin/bash -#CD=/mnt/cd -. /etc/profile -. /etc/systemconfig -current_hostname=`hostname` -echo $@ > /tmp/diskless_build.call -TFTP=/data/srv/tftp -CD=/data/srv/tftp/live -DESTCD=/data/srv/tftp/CD -BASE=/data/srv/tftp/masterbuild - -MODULES=$DESTCD/MythVantage/base/ -#only supports eth0 at this point -myip=`ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'|head -n1` -SRCFILES=$BASE/.livesys/medium - -function log () { -echo $1 -} - -function check_xvfb () { -export DISPLAY=127.0.0.1:25 - Xvfb -ac :25 & - -} - - -function create_base_image() { -echo $SRCFILES -if [ -f $SRCFILES/system.sqf ] -then - mkdir $HOST_IMG_DIR - cd $SRCFILES - echo "Creating image..." > $BASE/tmp/.install_state - echo "Transferring system" - unsquashfs -i -f -d \/$HOST_IMG_DIR $DESTCD/system.sqf - - for i in sys proc dev tmp - do - mkdir /$HOST_IMG_DIR/$i - done - - chmod 777 /$HOST_IMG_DIR/tmp - mknod /$HOST_IMG_DIR/dev/null c 1 3 - mknod /$HOST_IMG_DIR/dev/null c 1 5 - mknod /$HOST_IMG_DIR/dev/console c 5 1 - chmod +s /$HOST_IMG_DIR/usr/bin/Xorg - chmod +s /$HOST_IMG_DIR/usr/bin/crontab - chmod +s /$HOST_IMG_DIR/usr/bin/sudo - chmod +s /$HOST_IMG_DIR/bin/mount - echo "configuring boot" > $BASE/tmp/.install_state - sed -ie 's/^MODULES=.*$/MODULES="nfs"/g' $HOST_IMG_DIR/etc/mkinitcpio.conf - sed -ie 's/^HOOKS=.*$/HOOKS="base net udev autodetect pata scsi sata filesystems"/g' $HOST_IMG_DIR/etc/mkinitcpio.conf - #chroot $DEST mkinitcpio -p kernel26 - #copy fstab from masterbuild - cp -f $BASE/etc/fstab /$HOST_IMG_DIR/etc/fstab - echo "Done: installing data" > $BASE/tmp/.install_state - return 0 -else - echo "Error: no modules" > $BASE/tmp/.install_state - log "couldn't find modules to install" - return 1 -fi -} - -function configure_image () { - echo "Configuring system" > $BASE/tmp/.install_state - cp -f $BASE/etc/systemconfig $HOST_IMG_DIR/etc/systemconfig - chown root:mythtv $HOST_IMG_DIR/etc/systemconfig - chmod 775 "$HOST_IMG_DIR" /etc/systemconfig - cp /etc/mtab $HOST_IMG_DIR/etc/mtab - mount --bind /dev $HOST_IMG_DIR/dev -# mount --bind /dev/pts $HOST_IMG_DIR/dev/pts - mount --bind /proc $HOST_IMG_DIR/proc - mount --bind /sys $HOST_IMG_DIR/sys - - chroot "$HOST_IMG_DIR" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,this_is_install,NETINSTALL -#copy syssettings template to here. - SE=$BASE$TEMPLATES/settings/syssettings - mkdir -p $HOST_IMG_DIR/$TEMPLATES/settings/syssettings - cp -rp $SE/* ${HOST_IMG_DIR}/$TEMPLATES/settings/syssettings - chown root:mythtv $HOST_IMG_DIR/etc/systemconfig - chown -R mythtv:mythtv $HOST_IMG_DIR/$TEMPLATES/settings/syssettings - chmod -R 775 $HOST_IMG_DIR/$TEMPLATES/settings/syssettings -#update remotedb with this host settings - OLDDISPLAY=$DISPLAY - check_xvfb - echo "Running MythVantage to restore settings" - DISPLAY=$DISPLAY HOME=/root chroot $HOST_IMG_DIR $MV_ROOT/bin/MythVantage -t restore,default_1 - chroot $HOST_IMG_DIR $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings - if [ ! $? = 0 ] - then - touch $mountpoint/tmp/.dbsysfailed - chmod 777 $mountpoint/tmp/.dbsysfailed - else - #Run second time - chroot "$HOST_IMG_DIR" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,this_is_install,NETINSTALL - chroot "$HOST_IMG_DIR" $MV_ROOT/bin/restore_default_settings.sh -c ACCESSCONTROL - fi -chroot "$HOST_IMG_DIR" $MV_ROOT/bin/systemconfig.sh advanced,this_is_install,NETINSTALL -cp -f $BASE/etc/X11/xorg.conf $HOST_IMG_DIR/etc/X11/xorg.conf -echo "Done" > $BASE/tmp/.install_state -DISPLAY=$OLDDISPLAY -#umount $HOST_IMG_DIR/dev/pts -umount $HOST_IMG_DIR/dev -#umount $HOST_IMG_DIR/dev/pts -#umount $HOST_IMG_DIR/dev -umount $HOST_IMG_DIR/proc -umount $HOST_IMG_DIR/sys -#umount $HOST_IMG_DIR/sys - -#cp /tmp/mythvantage_install.log $HOST_IMG_DIR/var/log/ -} - -function create_tftp_boot () { - - CFGFILE=$TFTP/pxelinux.cfg/01-$2 - echo "DEFAULT mythfe" > $CFGFILE - echo "LABEL mythfe" >> $CFGFILE - echo "kernel masterbuild/boot/vmlinuz26" >> $CFGFILE - echo "append vga=normal root=/dev/nfs rw netboot nfsroot=$myip:/data/srv/tftp/$1 ip=dhcp init=/sbin/runit initrd=masterbuild/boot/kernel26.img" >> $CFGFILE - echo "TIMEOUT 2" >> $CFGFILE -} - -function create_nfs_export () { -grep -q "/data/srv/tftp/$1" /etc/exports -status=$? -if [ ! $status = 0 ] -then - echo "adding $1 to nfs exports" - echo "/data/srv/tftp/$1 *(rw,no_root_squash,anonuid=1000,anongid=1000) " >> /etc/exports - exportfs -arv -fi - -} - -#-------------------------------------------------------------------------------MAIN PROGRAM --------------------------------------------------------------------- -if [ x$1 = x -o x$2 = x ] -then - echo "usage: hostname macaddress" - echo "example: Love 00-0C-29-E6-8A-A9" - exit 1 -fi - -image_name=$1 -mac_address=`echo $2| tr "[:upper:]" "[:lower:]"` - -echo "using image_name of $image_name" -echo "using mac_address of $mac_address" - -HOST_IMG_DIR=$TFTP/$1 - -create_base_image $image_name -configure_image -hostname $current_hostname -umount $HOST_IMG_DIR/dev -create_tftp_boot $image_name $mac_address -create_nfs_export $image_name - -echo "Finshed!" -#create_dhcp_entry $mac_address - |