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