That's what I'm guessing.  Files attached.

   Jeremy

Andrea Righi wrote:

Can you post the autoinstallscript.conf and the master autoinstall script? IMO there is something wrong during the LVM volumes creation that could cause a fail when mounting some paths... so the image is stored in tmpfs, since the right mount point in /a/ is unmounted...

Regards,
-Andrea

Jeremy Enos wrote:

The tmpfs filling up issue is most definitely related to LVM based images. I tried 3.6.2 on the FC3, all else the same other than LVM or not... tmpfs filled up when using LVM.

   Jeremy

Jeremy Enos wrote:

Bad wording... I'm just giving up on LVM at the moment- not SI!  ;-)

   Jeremy

Bernard Li wrote:

Don't give up Jeremy!  I'm sure we can figure it out :-)
Cheers, Bernard

------------------------------------------------------------------------ *From:* [EMAIL PROTECTED] on behalf of Jeremy Enos
*Sent:* Wed 04/01/2006 15:06
*To:* Jeremy Enos
*Cc:* sisuite-devel@lists.sourceforge.net
*Subject:* Re: [Sisuite-devel] tmpfs problem?

Ignore that... tmpfs is filling up, but not with the image. I'm giving up on this I think.

Jeremy Enos wrote:

Not sure why, but even when I use the TMPFS_STAGING=no option on the kernel append line when I network boot, it looks like I'm getting the image dumped into tmpfs. Why might this be?

    Jeremy

Jeremy Enos wrote:

Also, just read up on tmpfs and saw that it tries to spool the entire 6GB image into that 2GB... no surprise at that failure now that I understand how it works.

However... when not using tmpfs to spool (as in the first failure), why would I get an error that tmpfs is full?

    Jeremy

Bernard Li wrote:

Just FYI this is probably off stable branch 3.6.x.

Cheers,

Bernard
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jeremy Enos
Sent: Tuesday, January 03, 2006 16:10
To: sisuite-devel@lists.sourceforge.net
Subject: [Sisuite-devel] tmpfs problem?

Using this version:
[EMAIL PROTECTED] root]# rpm -qa |grep systemimager
systemimager-client-3.6.3-1
systemimager-common-3.6.3-1
systemimager-i386boot-standard-3.6.3-1
systemimager-server-3.6.3-1
systemimager-i386initrd_template-3.6.3-1
systemimager-flamethrower-3.6.3-1
[EMAIL PROTECTED] root]#

It goes through most of the synchronization process:
<snip>
usr/X11R6/lib/X11/doc/Versions usr/X11R6/lib/X11/doc/VideoBoard98 usr/X11R6/lib/X11/doc/Xprint_FAQ.txt usr/X11R6/lib/X11/doc/html/Xprint_FAQ.html rsync: write failed on "/a/usr/X11R6/lib/X11/doc/html/Xprint_FAQ.html": No spac) rsync error: error in file IO (code 11) at receiver.c(291) rsync: connection unexpectedly closed (8560707 bytes received so far) [generato] rsync error: error in rsync protocol data stream (code 12) at io.c(434) Killing off running processes. si_monitortk shows:
<snip>
par4(141.142.237.53):> lvcreate -L2031616K -n LogVol01 VolGroup00 || shellout par4(141.142.237.53):> lvscan > /dev/null; lvchange -a y /dev/VolGroup00/LogVol01 || shellout
par4(141.142.237.53):> Load additional filesystem drivers.
par4(141.142.237.53):> mke2fs -j /dev/sda1 || shellout
par4(141.142.237.53):> tune2fs -L /boot /dev/sda1
par4(141.142.237.53):> mount /dev/sda1 /a/boot -t ext3 -o defaults || shellout
par4(141.142.237.53):> mkdir -p /a/proc || shellout
par4(141.142.237.53):> mount proc /a/proc -t proc -o defaults || shellout
par4(141.142.237.53):> mkdir -p /a/sys || shellout
par4(141.142.237.53):> mount sysfs /a/sys -t sysfs -o defaults || shellout
par4(141.142.237.53):> Evaluating image size.
par4(141.142.237.53):> Report task started.
par4(141.142.237.53):> rsync -aHSv --exclude=lost+found/ --exclude=/proc/* --numeric-ids 141.142.237.40::fc3image/ /a/
par4(141.142.237.53):> WARNING: Your tmpfs filesystem is 95% full!
par4(141.142.237.53):> WARNING: Your tmpfs filesystem is 96% full!
par4(141.142.237.53):> WARNING: Your tmpfs filesystem is 98% full!
par4(141.142.237.53):> WARNING: Your tmpfs filesystem is 99% full!
par4(141.142.237.53):> Search the FAQ for tmpfs to learn about sizing options.
par4(141.142.237.53):> Killing off running processes.
par4(141.142.237.53):> write_variables
par4(141.142.237.53):> Installation failed!! Stopping report task.
par4(141.142.237.53):> Report task stopped.

My boot params were:
label autoinstall-serial
 kernel kernel
append initrd=initrd.img MONITOR_SERVER=141.142.237.40 console=tty0 console=ttyS0,9600n8

So I changed them to:
label autoinstall-serial
 kernel kernel
append initrd=initrd.img tmpfs_size=2G tmpfs_nr_inodes=2000 MONITOR_SERVER=141.142.237.40 console=tty0 console=ttyS0,9600n8

Which started syncing for a very short time until failures plague the output thereafter:
<snip>
etc/gconf/gconf.xml.defaults/apps/panel/default_setup/applets/
show_desktop_butt/
etc/gconf/gconf.xml.defaults/apps/panel/default_setup/applets/
systray/ etc/gconf/gconf.xml.defaults/apps/panel/default_setup/applets/ window_list/ etc/gconf/gconf.xml.defaults/apps/panel/default_setup/applets/
workspace_switche/
etc/gconf/gconf.xml.defaults/apps/panel/default_setup/applets/
workspace_switche/
etc/gconf/gconf.xml.defaults/apps/panel/default_setup/general/
etc/gconf/gconf.xml.defaults/apps/panel/default_setup/objects/ etc/gconf/gconf.xml.defaults/apps/panel/default_setup/objects/ email_launcher/ rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/objects/m) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/objects/p) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/objects/s) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/objects/w) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/objects/w) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/toplevels) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/toplevels) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/toplevels) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/toplevels) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/defaul) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/default_setup/toplevels) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/global) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/global" failed: No such) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/profil) rsync: stat "/a/etc/gconf/gconf.xml.defaults/apps/panel/profiles" failed: No su) rsync: recv_generator: mkdir "/a/etc/gconf/gconf.xml.defaults/apps/panel/profil)
<snip>

Nothing out of the ordinary is kicked out to si_monitortk or to /tmp/si.log.

What should I try?

   Jeremy



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Sisuite-devel mailing list
Sisuite-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sisuite-devel




-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_idv37&alloc_id865&op=click
_______________________________________________
Sisuite-devel mailing list
Sisuite-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sisuite-devel


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Sisuite-devel mailing list
Sisuite-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sisuite-devel





-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Sisuite-devel mailing list
Sisuite-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sisuite-devel

#!/bin/sh
#
#   "SystemImager"
#
#   Copyright (C) 1999-2004 Brian Elliott Finley
#
#   28.07.2005 Erich Focht : SCSI device detection and generation of
#                            /a/etc/systemconfig/hardware.lst
#
#   David N. Lombard : Disks enumeration and disk editing
#
#   $Id: autoinstallscript.template 3292 2005-12-12 12:58:45Z arighi $
#

# This master autoinstall script was created with SystemImager v3.6.2

# Pull in variables left behind by the linuxrc script.
# This information is passed from the linuxrc script on the autoinstall media 
# via /tmp/variables.txt.  Apparently the shell we use in BOEL is not 
# intelligent enough to take a "set -a" parameter.
#
. /tmp/variables.txt || shellout

# Load functions and other variables
. /etc/init.d/functions

get_arch

if [ -z $NO_LISTING ]; then
    VERBOSE_OPT="v"
else
    VERBOSE_OPT=""
fi

[ -z $IMAGENAME ] && IMAGENAME=lvmtest
[ -z $OVERRIDES ] && OVERRIDES="lvmtest"

### BEGIN Check to be sure this not run from a working machine ###
# Test for mounted SCSI or IDE disks
mount | grep [hs]d[a-z][1-9] > /dev/null 2>&1
[ $? -eq 0 ] &&  logmsg Sorry.  Must not run on a working machine... && shellout

# Test for mounted software RAID devices
mount | grep md[0-9] > /dev/null 2>&1
[ $? -eq 0 ] &&  logmsg Sorry.  Must not run on a working machine... && shellout

# Test for mounted hardware RAID disks
mount | grep c[0-9]+d[0-9]+p > /dev/null 2>&1
[ $? -eq 0 ] &&  logmsg Sorry.  Must not run on a working machine... && shellout
### END Check to be sure this not run from a working machine ###


################################################################################
#
#   Stop RAID devices before partitioning begins
#
# Q1) Why did they get started in the first place?  
# A1) So we can pull a local.cfg file off a root mounted software RAID system.
#     They may not be started on your system -- they would only be started if
#     you did the stuff in Q3 below.
#
# Q2) Why didn't my local.cfg on my root mounted software RAID work for me 
#     with the standard kernel flavour?
# A2) The standard kernel flavour uses modules for the software RAID drivers --
#     therefore, software RAID is not available at the point in the boot process
#     where BOEL needs to read the local.cfg file.  They are only pulled over 
#     when this script is run, which is, of course, only runnable if it was
#     pulled over the network using the settings that you would have wanted it
#     to get from the local.cfg file, which it couldn't.  Right?
#
# Q3) Whatever.  So how do I make it work with a local.cfg file on my root
#     mounted software RAID?  
# A3) Compile an autoinstall kernel with software RAID, and any other drivers 
#     you might need built in (filesystem, SCSI drivers, etc.).
#
if [ -f /proc/mdstat ]; then
  RAID_DEVICES=` cat /proc/mdstat | grep ^md | sed 's/ .*$//g' `

  # raidstop will not run unless a raidtab file exists
  echo "" >> /etc/raidtab || shellout

  # turn dem pesky raid devices off!
  for RAID_DEVICE in ${RAID_DEVICES}
  do
    DEV="/dev/${RAID_DEVICE}"
    # we don't do a shellout here because, well I forgot why, but we don't.
    logmsg "raidstop ${DEV}" && raidstop ${DEV}
  done
fi
#
################################################################################
# BEGIN disk enumeration
#
# Note the kludgey way to get /dev/sd* and /dev/*/c*d* to sort properly...
#
# Parse the correct file depending by the kernel release -AR-
if [ `uname -r | sed s/^\(2\.[64]\).*/\1/` = "2.4" ]; then
    diskfile=/proc/partitions
else
    diskfile=/proc/diskstats
fi 
echo DISKORDER=${DISKORDER=sd,cciss,ida,rd,hd}
[ -z $DISKORDER ] || {
  logmsg enumerate_disks
  order=`echo "$DISKORDER" | sed 's/ /,/g' | sed s/,,*/,/g | sed s/^,//`
  DISKS=0
  while : ; do
    [ -z $order ] && break
    type=`expr $order : '\([^,]*\),' \| $order`
    case $type in
    cciss | ida | rd )
      for dev in `cat $diskfile | sed -ne "s/.*\($type\\/c[0-9]d[0-9]\).*/\1/p" 
| sort -u` ; do
        logmsg " $dev"
        eval DISK$DISKS=/dev/${dev}
        DISKS=`expr $DISKS + 1`
      done
      ;;
    hd | sd )
      for dev in `cat $diskfile | sed -ne "s/.*\($type[a-z]\+\).*/\1/p" | sort 
-u` ; do
        logmsg " $dev"
        eval DISK$DISKS=/dev/${dev}
        DISKS=`expr $DISKS + 1`
      done
      ;;
    * )
      logmsg "type='$type'"
      shellout
      ;;
    esac
    order=`expr $order : '[^,]*,\(.*\)'`
  done
  logmsg DISKS=$DISKS
  [ $DISKS -eq 0 ] && {
    beep
    beep
    logmsg ""
    logmsg "NO DISK DEVICE FILES WERE FOUND.  THIS USUALLY MEANS THE KERNEL DID 
NOT"
    logmsg "RECOGNIZE ANY OF THE ATTACHED DISKS."
    logmsg ""
    logmsg "The kernel boot messages, which preceded this, may indicate why."
    logmsg ""
    logmsg "Reverting to disk configuration specified by image master script."
    DISKORDER=
    logmsg ""
  }
  echo
  beep
}
#
# END disk enumeration
################################################################################

if [ -z $DISKORDER ] ; then
  DISK0=/dev/sda
elif [ -z $DISK0 ] ; then
  echo "Undefined: DISK0"
  shellout
fi
### BEGIN partition $DISK0 ###
logmsg "Partitioning $DISK0..."
logmsg "Old partition table for $DISK0:"
parted -s -- $DISK0 print

# Create disk label.  This ensures that all remnants of the old label, whatever
# type it was, are removed and that we're starting with a clean label.
logmsg "parted -s -- $DISK0 mklabel msdos || shellout"
parted -s -- $DISK0 mklabel msdos || shellout

# Get the size of the destination disk so that we can make the partitions fit 
properly.
DISK_SIZE=`parted -s $DISK0 unit MB print | grep 'Disk geometry for' | sed 
's/^.*-//g' | sed 's/\..*$//' | sed 's/MB//' `
[ -z $DISK_SIZE ] && shellout
if [ "$ARCH" = "alpha" ]; then
    END_OF_LAST_PRIMARY=1
else
    END_OF_LAST_PRIMARY=0
fi


logmsg "Creating partition ${DISK0}1."
START_MB=$END_OF_LAST_PRIMARY
END_MB=$(echo "scale=3; ($START_MB + 101)" | bc)
logmsg "parted -s -- $DISK0 mkpart primary ext2 $START_MB $END_MB || shellout"
parted -s -- $DISK0 mkpart primary ext2 $START_MB $END_MB || shellout
END_OF_LAST_PRIMARY=$END_MB
logmsg parted -s -- $DISK0 set 1 boot on || shellout
parted -s -- $DISK0 set 1 boot on || shellout

logmsg "Creating partition ${DISK0}2."
START_MB=$END_OF_LAST_PRIMARY
END_MB=$(( $DISK_SIZE - 0 ))
logmsg "parted -s -- $DISK0 mkpart primary ext2 $START_MB $END_MB || shellout"
parted -s -- $DISK0 mkpart primary ext2 $START_MB $END_MB || shellout
END_OF_LAST_PRIMARY=$END_MB
logmsg parted -s -- $DISK0 set 2 lvm on || shellout
parted -s -- $DISK0 set 2 lvm on || shellout

logmsg "New partition table for $DISK0:"
logmsg "parted -s -- $DISK0 print"
parted -s -- $DISK0 print
### END partition $DISK0 ###



### BEGIN software-RAID initialization commands -AR- ###
### END software-RAID initialization commands ###

logmsg "Load device mapper driver (for LVM)."
modprobe dm-mod

### BEGIN LVM initialization commands -AR- ###
logmsg "Initializing partition /dev/sda2 for use by LVM."
logmsg "pvcreate -M2 -ff -y /dev/sda2 || shellout"
pvcreate -M2 -ff -y /dev/sda2 || shellout
### END LVM initialization commands ###

### BEGIN LVM groups creation commands -AR- ###
logmsg "lvremove -f /dev/VolGroup00 >/dev/null 2>&1 && vgremove VolGroup00 
>/dev/null 2>&1"
lvremove -f /dev/VolGroup00 >/dev/null 2>&1 && vgremove VolGroup00 >/dev/null 
2>&1
logmsg "vgcreate -M2 -l 0 -p 0 -s 32768K VolGroup00 ${DISK0}2 || shellout"
vgcreate -M2 -l 0 -p 0 -s 32768K VolGroup00 ${DISK0}2 || shellout
### END LVM groups creation commands ###

### BEGIN LVM volumes creation commands -AR- ###
logmsg "lvcreate  -L15597568K -n LogVol00 VolGroup00 || shellout"
lvcreate  -L15597568K -n LogVol00 VolGroup00 || shellout
logmsg "lvscan > /dev/null; lvchange -a y /dev/VolGroup00/LogVol00 || shellout"
lvscan > /dev/null; lvchange -a y /dev/VolGroup00/LogVol00 || shellout
logmsg "lvcreate  -L2031616K -n LogVol01 VolGroup00 || shellout"
lvcreate  -L2031616K -n LogVol01 VolGroup00 || shellout
logmsg "lvscan > /dev/null; lvchange -a y /dev/VolGroup00/LogVol01 || shellout"
lvscan > /dev/null; lvchange -a y /dev/VolGroup00/LogVol01 || shellout
### END LVM volumes creation commands ###

logmsg "Load additional filesystem drivers."
modprobe reiserfs
modprobe ext2
modprobe ext3
modprobe jfs
modprobe xfs

### BEGIN swap and filesystem creation commands ###
logmsg "mke2fs -j ${DISK0}1 || shellout"
mke2fs -j ${DISK0}1 || shellout
logmsg "tune2fs -L /boot ${DISK0}1"
tune2fs -L /boot ${DISK0}1
logmsg "mkdir -p /a/boot || shellout"
mkdir -p /a/boot || shellout
logmsg "mount ${DISK0}1 /a/boot -t ext3 -o defaults || shellout"
mount ${DISK0}1 /a/boot -t ext3 -o defaults || shellout

### END swap and filesystem creation commands ###

### BEGIN mount proc in image for tools like System Configurator ###
logmsg "mkdir -p /a/proc || shellout"
mkdir -p /a/proc || shellout
logmsg "mount proc /a/proc -t proc -o defaults || shellout"
mount proc /a/proc -t proc -o defaults || shellout
### END mount proc in image for tools like System Configurator ###

### BEGIN mount sysfs in image for tools that might be run during chroot ###
logmsg "mkdir -p /a/sys || shellout"
mkdir -p /a/sys || shellout
logmsg "mount sysfs /a/sys -t sysfs -o defaults || shellout"
mount sysfs /a/sys -t sysfs -o defaults || shellout
### END mount sysfs in image for tools that might be run during chroot ###

################################################################################
#
#   Lay the image down on the freshly formatted disk(s)
#
if [ ! -z $MONITOR_SERVER ]; then
    start_report_task
fi

if [ ! -z $FLAMETHROWER_DIRECTORY_PORTBASE ]; then 

    # Use multicast 
    MODULE_NAME="${IMAGENAME}"
    DIR=/a
    RETRY=7
    FLAMETHROWER_TARPIPE=y
    flamethrower_client
else 
    # Use rsync 
    if [ $NO_LISTING ]; then
        logmsg "Quietly installing image... "
        start_spinner
    fi
    if [ "${TMPFS_STAGING}" = "yes" ]; then 

        # Deposit image into tmpfs
        DIR=/tmp/tmpfs_staging
        logmsg
        logmsg "TMPFS_STAGING=${TMPFS_STAGING} -- Staging in ${DIR}"
        mkdir -p ${DIR}

        logmsg "rsync -aHS${VERBOSE_OPT} --exclude=lost+found/ --numeric-ids 
${IMAGESERVER}::${IMAGENAME}/ ${DIR}/" 
        rsync -aHS${VERBOSE_OPT} --exclude=lost+found/ --exclude=/proc/* 
--numeric-ids \
              ${IMAGESERVER}::${IMAGENAME}/ ${DIR}/ || shellout 

        # Move from staging in tmpfs to disk
        rsync -aHS${VERBOSE_OPT} --exclude=lost+found/ --numeric-ids ${DIR}/ /a/
    else
        logmsg "rsync -aHS${VERBOSE_OPT} --exclude=lost+found/ 
--exclude=/proc/* --numeric-ids ${IMAGESERVER}::${IMAGENAME}/ /a/" 
        rsync -aHS${VERBOSE_OPT} --exclude=lost+found/ --exclude=/proc/* 
--numeric-ids ${IMAGESERVER}::${IMAGENAME}/ /a/ || shellout 
    fi
fi 

beep

#
################################################################################


if [ $NO_LISTING ]; then
    stop_spinner
fi

# Leave notice of which image is installed on the client
echo $IMAGENAME > /a/etc/systemimager/IMAGE_LAST_SYNCED_TO || shellout

if [ ! -z $MONITOR_SERVER ]; then
    stop_report_task 100
fi

# Copy the raidtab into the image.
cp -f /etc/raidtab /a/etc/raidtab

### BEGIN generate new fstab file from autoinstallscript.conf ###
cat <<'EOF' > /a/etc/fstab
# This file is edited by fstab-sync - see 'man fstab-sync' for details
/dev/VolGroup00/LogVol00        /       ext3    defaults        1       1
LABEL=/boot     /boot   ext3    defaults        1       2
none    /dev/pts        devpts  gid=5,mode=620  0       0
none    /dev/shm        tmpfs   defaults        0       0
none    /proc   proc    defaults        0       0
none    /sys    sysfs   defaults        0       0
/dev/VolGroup00/LogVol01        swap    swap    defaults        0       0
rc-home:/home   /home   nfs     defaults        0       0
srcmap:/opt/intel       /opt/intel      nfs     
ro,rsize=8192,timeo=14,intr,soft        0       0
srcmap:/opt/intel_cc_81 /opt/intel_cc_81        nfs     
ro,rsize=8192,timeo=14,intr,soft        0       0
srcmap:/opt/intel_fc_81 /opt/intel_fc_81        nfs     
ro,rsize=8192,timeo=14,intr,soft        0       0
srcmap:/opt/intel_flexlm_81     /opt/intel_flexlm_81    nfs     
ro,rsize=8192,timeo=14,intr,soft        0       0
srcmap:/opt/intel_idb_81        /opt/intel_idb_81       nfs     
ro,rsize=8192,timeo=14,intr,soft        0       0
srcmap:/opt/intel_ide_81        /opt/intel_ide_81       nfs     
ro,rsize=8192,timeo=14,intr,soft        0       0
srcmap:/opt/srcci       /opt/srcci      nfs     
ro,rsize=8192,timeo=14,intr,soft        0       0
srcmap:/opt/Xilinx712   /opt/Xilinx712  nfs     
ro,rsize=8192,timeo=14,intr,soft        0       0
/dev/hda        /media/cdrom    auto    pamconsole,exec,noauto,managed  0       0
/dev/fd0        /media/floppy   auto    pamconsole,exec,noauto,managed  0       0
EOF
### END generate new fstab file from autoinstallscript.conf ###

################################################################################
#
#   Process override directories
#
for OVERRIDE in $OVERRIDES
do
    if [ ! -z $FLAMETHROWER_DIRECTORY_PORTBASE ]; then
        # Use multicast
        MODULE_NAME="override_${OVERRIDE}"
        DIR=/a
        RETRY=7
        FLAMETHROWER_TARPIPE=y
        flamethrower_client
    else
        # Use rsync
        logmsg "rsync -av --numeric-ids $IMAGESERVER::overrides/$OVERRIDE/ /a/"
        rsync -av --numeric-ids $IMAGESERVER::overrides/$OVERRIDE/ /a/ || 
logmsg "Override directory $OVERRIDE doesn't seem to exist, but that may be OK."
    fi
done

beep

#
################################################################################

################################################################################
# BEGIN disk edits
#
[ -z $DISKORDER ] || {
  echo "Editing files for actual disk configuration..."
  echo " /dev/sda -> $DISK0"
  for file in /etc/fstab /etc/raidtab /etc/systemconfig/systemconfig.conf; do
    [ -f /a/$file ] || continue
    echo " $file"
    cp /a/$file /a/$file.image
    cat /a/$file.image |
    sed s:/dev/sda:%DISK0%:g |
    sed s:%DISK0%:$DISK0:g |
    cat > /a/$file
  done
  echo
  beep
}
#
# END disk edits
################################################################################


##################################################################
#
# Uncomment the line below to leave your hostname blank.
# Certain distributions use this as an indication to take on the
# hostname provided by a DHCP server.  The default is to have
# SystemConfigurator assign your clients the hostname that
# corresponds to the IP address the use during the install.
# (If you used to use the static_dhcp option, this is your man.)
#
#HOSTNAME=""


################################################################################
#
# mount /dev /a/dev -o bind if needed
#
#not needed for this image
#
################################################################################


################################################################################
#
#   Detect scsi hardware and include the device IDs into the hardware.lst
#   file used by systemconfigurator. Do nothing if the hardware.lst file
#   already exists (which is a sign that it has been already prepared).
#   Would be shorter if discover could return numerical device IDs...
#
if [ ! -f /a/etc/systemconfig/hardware.lst ]; then
   SCSI_MODS=`discover -f "%m\n" scsi | grep -v ide-scsi | uniq`
   for MOD in $SCSI_MODS; do
      DEVID=`grep $MOD /proc/bus/pci/devices | cut -f 2 | sort | uniq`
      for MYDEV in $DEVID; do
         VENDOR=`echo $MYDEV | cut -b 1-4`
         MODEL=`echo $MYDEV | cut -b 5-8`
         echo "$VENDOR $MODEL scsi $MOD" >> /a/etc/systemconfig/hardware.lst
         echo "Added SCSI device $VENDOR:$MODEL using module $MOD to 
hardware.lst"
      done
   done
fi
#
################################################################################

################################################################################
#
#   System Configurator
#
# Configure the client's hardware, network interface, and boot loader.
#
[ -z $DEVICE ] && DEVICE=eth0
chroot /a/ systemconfigurator 
--excludesto=/etc/systemimager/systemconfig.local.exclude --configsi --stdin << 
EOL || shellout
[NETWORK]
HOSTNAME = $HOSTNAME
DOMAINNAME = $DOMAINNAME

[INTERFACE0]
DEVICE = eth0
EOL
#
################################################################################


################################################################################
#
#   Post Install Scripts
#
run_post_install_scripts
#
################################################################################


################################################################################
#
#   Unmount filesystems
#
logmsg "umount /a/sys || shellout"
umount /a/sys || shellout

logmsg "umount /a/proc || shellout"
umount /a/proc || shellout

logmsg "umount /a/boot || shellout"
umount /a/boot || shellout

logmsg "umount /a/ || shellout"
umount /a/ || shellout

#
################################################################################


################################################################################
#
#   Tell the image server we're done
#   
rsync $IMAGESERVER::scripts/imaging_complete > /dev/null 2>&1
#
################################################################################

# Take network interface down
[ -z $DEVICE ] && DEVICE=eth0
ifconfig $DEVICE down || shellout

# Announce completion (even for non beep-incessantly --post-install options)
beep 3

# reboot the autoinstall client
shutdown -r now

Reply via email to