In the Customization Guide there's an example for how to sniff out drives on a system, but that's really only pertinent to IDE-interface devices. Is there a similarly clever way to scan scsi controllers? I'd like to do the same as this: for file in /proc/ide/h* do mymedia=`cat $file/media` if [ $mymedia == "disk" ] ; then hds="$hds `basename $file`" fi done ... I suppose that I could just change the $numhd test to be -lt 2. Here is what I've found to be quite handy: #!/bin/sh hds="" mymedia="" for file in /proc/ide/h* do mymedia=`cat $file/media` if [ $mymedia == "disk" ] ; then hds="$hds `basename $file`" fi done set $hds numhd=`echo $#` if [ $numhd == "1" ] ; then #1 drive echo "#partitioning scheme generated in %pre for 1 drive" > \ /tmp/part-include echo "zerombr yes" >> /tmp/part-include echo "clearpart --all --initlabel" >> /tmp/part-include echo "part /boot --fstype ext3 --size 50" >> /tmp/part-include echo "part swap --recommended" >> /tmp/part-include echo "part / --fstype ext3 --size 1 --grow" >> /tmp/part-include else #2 drives echo "#partitioning scheme generated in %pre for 2 drives" > \ /tmp/part-include echo "zerombr yes" >> /tmp/part-include echo "clearpart --all --initlabel" >> /tmp/part-include drive=0 bootdevs='' rootdevs='' for pdev in $hds do bootp=raid."$drive"1 rootp=raid."$drive"2 bootdevs="$bootdevs $bootp" rootdevs="$rootdevs $rootp" echo "part $bootp --size 50 --ondisk $pdev" >> /tmp/part-include echo "part $rootp --size 1 --grow --ondisk $pdev" >> /tmp/part-include echo "part swap --recommended --ondisk $pdev" >> /tmp/part-include let drive=$drive+1 done echo "raid /boot --level=1 --device=md0 --fstype ext3 $bootdevs" >> \ /tmp/part-include echo "raid / --level=1 --device=md1 --fstype ext3 $rootdevs" >> \ /tmp/part-include fi