rc revision 7390
1167518Skmacy#!/bin/sh 2167518Skmacy# $Id: rc,v 1.55 1995/03/24 00:16:24 jkh Exp $ 3207643Snp# From: @(#)rc 5.27 (Berkeley) 6/5/91 4167518Skmacy 5167518Skmacy# System startup script run by init on autoboot 6167518Skmacy# or after single-user. 7167518Skmacy# Output and error are redirected to console by init, 8167518Skmacy# and the console is the controlling terminal. 9167518Skmacy 10167518Skmacystty status '^T' 11167518Skmacy 12167518Skmacy# Set shell to ignore SIGINT (2), but not children; 13167518Skmacy# shell catches SIGQUIT (3) and returns to single user after fsck. 14167518Skmacytrap : 2 15167518Skmacytrap : 3 # shouldn't be needed 16167518Skmacy 17167518SkmacyHOME=/; export HOME 18167518SkmacyPATH=/sbin:/bin:/usr/sbin:/usr/bin 19167518Skmacyexport PATH 20167518Skmacy 21167518Skmacyswapon -a 22167518Skmacy 23167518Skmacyif [ $1x = autobootx ] 24167518Skmacythen 25167518Skmacy echo Automatic reboot in progress... 26167518Skmacy fsck -p 27167518Skmacy case $? in 28167518Skmacy 0) 29167518Skmacy ;; 30167518Skmacy 2) 31167518Skmacy exit 1 32167518Skmacy ;; 33167518Skmacy 4) 34167518Skmacy reboot 35167518Skmacy echo "reboot failed... help!" 36167518Skmacy exit 1 37167518Skmacy ;; 38167518Skmacy 8) 39167518Skmacy echo "Automatic file system check failed... help!" 40167518Skmacy exit 1 41167518Skmacy ;; 42167518Skmacy 12) 43167518Skmacy echo "Reboot interrupted" 44167518Skmacy exit 1 45167518Skmacy ;; 46167518Skmacy 130) 47167518Skmacy # interrupt before catcher installed 48167518Skmacy exit 1 49167518Skmacy ;; 50167518Skmacy *) 51167518Skmacy echo "Unknown error in reboot" 52167518Skmacy exit 1 53167518Skmacy ;; 54167518Skmacy esac 55167518Skmacyelse 56167518Skmacy echo Skipping disk checks ... 57182899Skmacyfi 58167518Skmacy 59167518Skmacytrap "echo 'Reboot interrupted'; exit 1" 3 60167518Skmacy 61167518Skmacy# root must be read/write both for NFS diskless and for VFS LKMs before 62167518Skmacy# proceeding any further. 63167518Skmacymount -u -o rw / 64167518Skmacy 65167518Skmacyumount -a >/dev/null 2>&1 66167518Skmacymount -a -t nonfs 67167518Skmacy 68167589Skmacy# If the machine runs wall CMOS clock (compatible with MSDOS), 69167589Skmacy# activate following line by creating empty file /etc/wall_cmos_clock 70167518Skmacy# If this file not exist, following line does nothing (assumed 71167518Skmacy# the machine runs UTC CMOS clock). See adjkerntz(8) for details. 72167518Skmacyadjkerntz -i 73167518Skmacy 74167518Skmacy# If there is a global system configuration file, suck it in. 75167518Skmacyif [ -f /etc/sysconfig ]; then 76167518Skmacy . /etc/sysconfig 77167518Skmacyfi 78167518Skmacy 79167518Skmacy# configure serial devices 80167518Skmacyif [ -f /etc/rc.serial ]; then 81167518Skmacy . /etc/rc.serial 82167518Skmacyfi 83182594Skmacy 84167518Skmacy# start up the network 85167518Skmacyif [ -f /etc/netstart ]; then 86167518Skmacy . /etc/netstart 87167518Skmacyfi 88204267Snp 89204267Snp# Do system maintainance functions. 90167518Skmacyif [ -f /etc/rc.maint ]; then 91167518Skmacy . /etc/rc.maint 92167518Skmacyfi 93182594Skmacy 94182594Skmacy# Now start up miscellaneous daemons that don't belong anywhere else 95182594Skmacy# 96207643Snpecho -n standard daemons: 97207643Snpecho -n ' cron'; cron 98207643Snpif [ "X${xtend}" != X"NO" -a -x /usr/libexec/xtend ]; then 99189643Sgnn echo -n ' xtend'; /usr/libexec/xtend 100189643Sgnnfi 101182594Skmacyecho -n ' printer'; lpd 102182594Skmacyecho '.' 103167518Skmacy 104167518Skmacymount -a -t nfs >/dev/null 2>&1 & # XXX shouldn't need background 105182594Skmacy 106182594Skmacy# Make shared lib searching a little faster. Leave /usr/lib first if you 107167518Skmacy# add your own entries or you may come to grief. 108182594Skmacyif [ -x /sbin/ldconfig ]; then 109182594Skmacy _LDC=/usr/lib 110182594Skmacy if [ -d /usr/X11R6/lib ]; then _LDC="${_LDC} /usr/X11R6/lib" ; fi 111182594Skmacy if [ -d /usr/X386/lib ]; then _LDC="${_LDC} /usr/X386/lib" ; fi 112182594Skmacy if [ -d /usr/local/lib ]; then _LDC="${_LDC} /usr/local/lib" ; fi 113167518Skmacy if [ -d /usr/gnu/lib ]; then _LDC="${_LDC} /usr/gnu/lib" ; fi 114182594Skmacy echo 'setting ldconfig path:' ${_LDC} 115182594Skmacy ldconfig ${_LDC} 116182594Skmacyfi 117182594Skmacy 118167518Skmacy######################### Start Of Syscons Section ####################### 119167518Skmacy 120182594Skmacykbdadjust=NO 121167518Skmacy[ "X${keymap}" != X"NO" -o "X${keyrate}" != X"NO" ] && kbdadjust=YES 122167518Skmacyvidadjust=NO 123167518Skmacy[ "X${scrnmap}" != X"NO" -o "X${font8x16}" != X"NO" -o \ 124167518Skmacy "X${font8x14}" != X"NO" -o "X${font8x8}" != X"NO" -o \ 125167518Skmacy "X${blanktime}" != X"NO" ] && vidadjust=YES 126167518Skmacy 127167518Skmacy[ "X${kbdadjust}" != X"NO" -o "X${vidadjust}" != X"NO" -o \ 128167518Skmacy "X${saver}" != X"NO" ] && echo "starting syscons:" 129167518Skmacy 130167518Skmacy[ "X${kbdadjust}" != X"NO" ] && echo "kbdcontrol: " 131167518Skmacy 132167518Skmacy# keymap 133167518Skmacyif [ "X${keymap}" != X"NO" ]; then 134167518Skmacy echo -n "keymap " 135167518Skmacy kbdcontrol -l ${keymap} 136167518Skmacyfi 137182594Skmacy 138167518Skmacy# keyrate 139167518Skmacyif [ "X${keyrate}" != X"NO" ]; then 140167518Skmacy echo -n "keyrate " 141167518Skmacy kbdcontrol -r ${keyrate} 142167518Skmacyfi 143204267Snp 144204267Snp[ "X${kbdadjust}" != X"NO" ] && echo 145167518Skmacy[ "X${vidadjust}" != X"NO" ] && echo "vidcontrol: " 146167518Skmacy 147167518Skmacy# screen mapping 148167518Skmacyif [ "X${scrnmap}" != X"NO" ]; then 149167518Skmacy echo -n "screen_map " 150167518Skmacy vidcontrol -l ${scrnmap} 151167518Skmacyfi 152167518Skmacy 153167518Skmacy# font 8x16 154167518Skmacyif [ "X${font8x16}" != X"NO" ]; then 155167518Skmacy echo -n "font8x16 " 156167518Skmacy vidcontrol -f 8x16 ${font8x16} 157167518Skmacyfi 158167518Skmacy 159167518Skmacy# font 8x14 160167518Skmacyif [ "X${font8x14}" != X"NO" ]; then 161167518Skmacy echo -n "font8x14 " 162167518Skmacy vidcontrol -f 8x14 ${font8x14} 163167518Skmacyfi 164167518Skmacy 165167518Skmacy# font 8x8 166167518Skmacyif [ "X${font8x8}" != X"NO" ]; then 167167518Skmacy echo -n "font8x8 " 168167518Skmacy vidcontrol -f 8x8 ${font8x8} 169167518Skmacyfi 170167518Skmacy 171167518Skmacy# blank time 172167518Skmacyif [ "X${blanktime}" != X"NO" ]; then 173167518Skmacy echo -n "blank_time " 174167518Skmacy vidcontrol -t ${blanktime} 175167518Skmacyfi 176167518Skmacy 177167518Skmacy[ "X${vidadjust}" != X"NO" ] && echo 178167518Skmacy 179167518Skmacy# screen saver 180204267Snpif [ "X${saver}" != X"NO" ] ; then 181204267Snp echo -n "screensaver: " 182167518Skmacy modstat | grep _saver || modload -u -o /tmp/saver_mod -e \ 183167518Skmacy saver_init -q /lkm/${saver}_saver_mod.o 184167518Skmacyfi 185204267Snp 186167518Skmacy######################### End Of Syscons Section ####################### 187167518Skmacy 188167518Skmacy# Start the SCO binary emulation if requested. 189167518Skmacyif [ "X${ibcs2}" = X"YES" ]; then 190167518Skmacy ibcs2 191167518Skmacyfi 192167518Skmacy 193204267Snp# Do traditional (but rather obsolete) rc.local file if it exists. 194167518Skmacyif [ -f /etc/rc.local ]; then 195167518Skmacy sh /etc/rc.local 196167518Skmacyfi 197167518Skmacy 198167518Skmacydate 199167518Skmacyexit 0 200204267Snp