Home | History | Annotate | Line # | Download | only in inst
      1 # $NetBSD: dot.instutils,v 1.9 2003/07/26 17:06:28 salo Exp $
      2 #
      3 # Copyright (c) 1994 Christopher G. Demetriou
      4 # All rights reserved.
      5 # 
      6 # Redistribution and use in source and binary forms, with or without
      7 # modification, are permitted provided that the following conditions
      8 # are met:
      9 # 1. Redistributions of source code must retain the above copyright
     10 #    notice, this list of conditions and the following disclaimer.
     11 # 2. Redistributions in binary form must reproduce the above copyright
     12 #    notice, this list of conditions and the following disclaimer in the
     13 #    documentation and/or other materials provided with the distribution.
     14 # 3. All advertising materials mentioning features or use of this software
     15 #    must display the following acknowledgement:
     16 #          This product includes software developed for the
     17 #          NetBSD Project.  See http://www.NetBSD.org/ for
     18 #          information about NetBSD.
     19 # 4. The name of the author may not be used to endorse or promote products
     20 #    derived from this software without specific prior written permission.
     21 # 
     22 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     23 # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     24 # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     25 # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     26 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
     27 # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     28 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     29 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     30 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
     31 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     32 # 
     33 # <<Id: LICENSE,v 1.2 2000/06/14 15:57:33 cgd Exp>>
     34 
     35 # Installation configuration utilites (functions), to get NetBSD configured
     36 # reasonably once it is installed on the hard disk.  These are meant to be
     37 # invoked from the shell prompt, by people installing NetBSD.
     38 
     39 Configure()
     40 {
     41 	DEV=/mnt/dev
     42 	ETC=/mnt/etc
     43 
     44 	echo	"You will now be prompted for information about this"
     45 	echo	"machine.  If you hit return, the default answer (in"
     46 	echo	"brackets) will be used."
     47 
     48 	echo	""
     49 	echo -n	"What is this machine's hostname? [unknown.host.domain] "
     50 	read hname
     51 	if [ "$hname" = "" ]; then
     52 		hname=unknown.host.domain
     53 	fi
     54 	echo $hname > ${ETC}/myname
     55 	proto_domain=`echo $hname | sed -e 's/[^.]*\.//'`
     56 
     57 	echo	""
     58 	echo	"What domain is this machine in (this is NOT its YP"
     59 	echo -n	"domain name)? [$proto_domain] "
     60 	read dname
     61 	if [ "$dname" = "" ]; then
     62 		dname=$proto_domain
     63 	fi
     64 
     65 	echo	""
     66 	if [ -e /mnt/etc/sendmail.cf ]; then
     67 		echo	"WARNING: A default sendmail.cf exists, and probably"
     68 		echo	"needs to be tuned and/or replaced, to work properly at"
     69 		echo	"your site!"
     70 	else
     71 		echo	"WARNING: No default sendmail.cf installed.  Did you"
     72 		echo	"forget to install the 'etc' distribution?"
     73 	fi
     74 
     75 	echo	"127.0.0.1	localhost localhost.$dname" > ${ETC}/hosts
     76 
     77 	echo	""
     78 	echo -n	"Does this machine have an ethernet interface? [y] "
     79         read resp
     80         case "$resp" in
     81 	n*)
     82 		;;
     83 	*)
     84 		intf=
     85 		while [ "$intf" = "" ]; do
     86 			echo -n "What is the primary interface name "
     87 			echo -n "(e.g. ae0, ed0, le0, or es0)? "
     88 			read intf
     89 		done
     90 		echo -n "What is the hostname for this interface? [$hname] "
     91 		read ifname
     92 		if [ "$ifname" = "" ]; then
     93 			ifname=$hname
     94 		fi
     95 		ifaddr=
     96 		while [ "$ifaddr" = "" ]; do
     97 			echo -n "What is the IP address associated with "
     98 			echo -n "interface ${intf}? "
     99 			read ifaddr
    100 		done
    101 		echo "$ifaddr	$ifname `echo $ifname | sed -e s/\.$dname//`" \
    102 		    >> ${ETC}/hosts
    103 
    104 		echo -n "Does this interface have a special netmask? [n] "
    105 		read resp
    106 		case "$resp" in
    107 			y*)
    108 				echo -n "What is the netmask? [0xffffff00] "
    109 				read ifnetmask
    110 				if [ "$ifnetmask" = "" ]; then
    111 					ifnetmask=0xffffff00
    112 				fi
    113 				;;
    114 			*)
    115 				ifnetmask=
    116 				;;
    117 		esac
    118 
    119 		echo -n "Does this interface need additional flags? [n] "
    120 		read resp
    121 		case "$resp" in
    122 			y*)
    123 				echo -n "What flags? [link0] "
    124 				read ifflags
    125 				if [ "$ifflags" = "" ]; then
    126 					ifflags=link0
    127 				fi
    128 				;;
    129 			*)
    130 				ifflags=
    131 				;;
    132 		esac
    133 		echo "inet $ifname $ifnetmask $ifflags" > ${ETC}/hostname.$intf
    134 
    135 		echo    ""
    136 		echo -n	"WARNING: if you have any more ethernet interfaces, "
    137 		echo	"you will have to configure"
    138 		echo -n "them by hand.  Read the comments in /etc/rc.d/network "
    139 		echo	"to learn how to do this."
    140 		;;
    141 	esac
    142 	
    143 	echo	""
    144 	echo -n	"Making device nodes (may take a while)..."
    145 	cd ${DEV}
    146 	sh MAKEDEV all
    147 	echo	" done."
    148 
    149         echo    ""
    150         echo -n "Copying the kernel..."
    151         cp /netbsd /mnt/netbsd
    152         echo    "Done."
    153 	echo -n "Installing boot block..."
    154 	read rdev rest < /mnt/etc/fstab
    155 	/mnt/usr/mdec/installboot /mnt/usr/mdec/xxboot `echo $rdev | sed -e 's^/dev/^/dev/r^'`
    156 	echo	" done."
    157 
    158 	sync
    159 
    160 	echo	""
    161 	echo	"You should now halt your machine using the 'halt' command."
    162 	echo	"Once the machine is halted, reboot it."
    163 }
    164