etc.rc revision 1.4 1 1.4 riastrad # $NetBSD: etc.rc,v 1.4 2020/02/26 16:00:48 riastradh Exp $
2 1.1 martin #
3 1.1 martin # Copyright (c) 1997 Perry E. Metzger
4 1.1 martin # Copyright (c) 1994 Christopher G. Demetriou
5 1.1 martin # All rights reserved.
6 1.1 martin #
7 1.1 martin # Redistribution and use in source and binary forms, with or without
8 1.1 martin # modification, are permitted provided that the following conditions
9 1.1 martin # are met:
10 1.1 martin # 1. Redistributions of source code must retain the above copyright
11 1.1 martin # notice, this list of conditions and the following disclaimer.
12 1.1 martin # 2. Redistributions in binary form must reproduce the above copyright
13 1.1 martin # notice, this list of conditions and the following disclaimer in the
14 1.1 martin # documentation and/or other materials provided with the distribution.
15 1.1 martin # 3. All advertising materials mentioning features or use of this software
16 1.1 martin # must display the following acknowledgement:
17 1.1 martin # This product includes software developed for the
18 1.1 martin # NetBSD Project. See http://www.NetBSD.org/ for
19 1.1 martin # information about NetBSD.
20 1.1 martin # 4. The name of the author may not be used to endorse or promote products
21 1.1 martin # derived from this software without specific prior written permission.
22 1.1 martin #
23 1.1 martin # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
24 1.1 martin # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
25 1.1 martin # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
26 1.1 martin # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
27 1.1 martin # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
28 1.1 martin # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
29 1.1 martin # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30 1.1 martin # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31 1.1 martin # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
32 1.1 martin # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 1.1 martin #
34 1.1 martin # <<Id: LICENSE,v 1.2 2000/06/14 15:57:33 cgd Exp>>
35 1.1 martin
36 1.1 martin PATH=/sbin:/bin:/usr/bin:/usr/sbin:/
37 1.1 martin export PATH
38 1.1 martin
39 1.2 martin lowmemfail()
40 1.2 martin {
41 1.2 martin cat << "EOM"
42 1.2 martin This machine seems to not have enough memory for this install method.
43 1.2 martin Please refer to the installation documentation on how to create and
44 1.2 martin boot a custom kernel and how to install with that.
45 1.2 martin
46 1.2 martin Please use the 'halt' command to stop the machine.
47 1.2 martin EOM
48 1.2 martin exec sh
49 1.2 martin }
50 1.2 martin
51 1.3 martin # if /dev has not been populated by init, it may be a stock "MAKEDEV all"
52 1.3 martin # variant without "opty" - in which case we need to mount a ptyfs
53 1.3 martin if [ ! -r /dev/ttypf ]; then
54 1.3 martin if mount | grep '^ptyfs on /dev/pts' >/dev/null 2>&1; then
55 1.3 martin # do not mount it again
56 1.3 martin else
57 1.3 martin mount -t ptyfs ptyfs /dev/pts
58 1.3 martin fi
59 1.3 martin fi
60 1.3 martin
61 1.1 martin # mount a few tempfs to allow modifications over the CD contents
62 1.2 martin mount -t tmpfs tmpfs /tmp || lowmemfail
63 1.2 martin mount -t tmpfs tmpfs /var || lowmemfail
64 1.2 martin mount -t tmpfs -o union tmpfs /etc || lowmemfail
65 1.1 martin
66 1.1 martin # prepare important directories in the tmpfses, so dhcpcd and vi will work
67 1.1 martin mkdir -p /var/run /var/db /var/tmp
68 1.1 martin
69 1.1 martin # create a gettytab to autologin and run sysinst (etc/gettytab is a symlink
70 1.1 martin # to /tmp/gettytab)
71 1.1 martin echo "# Autostart sysinst" > /tmp/gettytab
72 1.1 martin echo -n "sysinst:al=root:lo=/install.sh:im=:sp#" >> /tmp/gettytab
73 1.1 martin stty speed >> /tmp/gettytab
74 1.1 martin
75 1.1 martin # done, move on to multiuser mode
76 1.1 martin exit 0
77