dot.instutils revision 1.9 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