RC(8)

NAME
rc, rc.boot, rc.local - command scripts for auto-reboot and daemons

SYNOPSIS
/etc/rc

/etc/rc.boot

/etc/rc.local

DESCRIPTION
rc and rc.boot are command scripts that are invoked by init(8) to perform file system housekeeping and to start system daemons. rc.local is a script for commands that are pertinent only to a specific site or client machine.

rc.boot sets the machine name and, if on SunOS 4.1.1 Rev B or later, invokes ifconfig, which uses RARP to obtain the machine's IP address from the NIS network. Then a “whoami” bootparams request is used to retrieve the system's hostname, NIS domain name and default router. The ifconfig and hostconfig programs set the system's hostname, IP address, NIS domain name, and default router in the kernel.

If coming up multi-user, rc.boot runs fsck(8) with the -p option. This “preens” the disks of minor inconsistencies resulting from the last system shutdown and checks for serious inconsistencies caused by hardware or software failure. If fsck(8) detects a serious disk problem, it returns an error and init(8) brings the system up in single-user mode. When coming up single-user, when init(8) is invoked by fastboot(8), or when it is passed the -b flag from boot(8S), functions performed in the rc.local file, including this disk check, are skipped.

Next, rc runs. If the system came up single-user, rc runs when the single-user shell terminates (see init(8)). It mounts 4.2 filesystems and spawns a shell for /etc/rc.local, which mounts NFS filesystems, runs sysIDtool (if on SunOS 4.1.1 Rev B or later) to set the system's configuration information into local configuration files, and starts local daemons. After rc.local returns, rc starts standard daemons, preserves editor files, clears /tmp, starts system accounting (if applicable), starts the network (where applicable), and if enabled, runs savecore(8) to preserve the core image after a crash.

Sun386i
These files operate as described above with the following variations:

fsck(8) is invoked with the -y option to prevent users being put in single-user mode by happenstance.

rc.boot invokes netconfig(8C) to configure the system for the network before booting. netconfig is invoked before the /usr filesystem is mounted, because /usr might be mounted from a server. netconfig writes /etc/net.conf unless the -n option is specified, controlling system booting.

rc.boot dynamically loads device drivers.

rc invokes any programs found in /var/recover to clean up any operations partially completed when the system crashed or was shut down.

rc.local starts the automounter.

The file /etc/net.conf stores these environment variables: The VERBOSE environment variable controls the verbosity of the messages from the rc script; its value is taken from NVRAM. The NETWORKED environment variable controls whether services useful only on a networked system are started in /etc/rc.local. The PNP environment variable, set up during initial system installation, controls whether local network configuration information is used or whether that information comes from the network. (Using automatic system installation causes all systems except boot servers to get this information from the network, facilitating network reconfiguration.) The HOSTNAME and DOMAINNAME environment variables, used together, help determine if this system is a boot server or, with PNP set to no, control the host name and domain name.

FILES
/etc/rc
/etc/rc.boot
/etc/rc.local
/etc/net.conf
/var/recover/*
/var/yp/*
/tmp

SEE ALSO
automount(8), boot(8S), fastboot(8), hostconfig(8), ifconfig(8C), init(8), reboot(8), savecore(8), netconfig(8C)

BUGS
The system message file /var/adm/messages is no longer created automatically.