/etc/rc.d/ 以下の説明 on Slackware
2001.10.21
今となっては必要性はほとんどないが
Slackwate での /etc/rc.d/ 以下のファイルが起動時にどう流れるかをまとめたもの。
折角作ったんだから、ページに載せておこう。

日付を見たら 1999.01.24 だって。
そのころは melchior をメインに使っていたんだろうね。

rc.0: halt
rc.6: reboot
rc.4: xdm
rc.K: single user
rc.S: system initialize
     swapon kerneld readwrite
     rc.modules rc.pcmcia rc.serial
rc.M:
    rc.cdrom /etc/HOSTNAME rc.inet1 rc.inet2
    cron ldconfig rc.font rc.ibcs2
    rc.httpd rc.samba rc.keymap rc.local
rc.modules:
    depmod -a
modprobe lp
# /sbin/kerneld



以下、詳細


rc.0 -> rc.6 ( soft link )

rc.4 Called, when Xdm( run level 4) start.
exec /usr/X11R6/bin/xdm -nodaemon

rc.6 Called, when halt( run level 0 ) or reboot( run level 6 )
killall
/usr/sbin/quotaoff
/sbin/accton
swapoff
umount
sync
halt or reboot

rc.K Call, when Single User mode( run level 1 )
kill -15 -1
/usr/sbin/quotaoff -a
/sbin/accton
telnet -t 1 1
kill -9 -1

rc.S System initialization
/sbin/swapon -a
/sbin/update &
if [ -x /sbin/kerneld ]; then
   /sbin/kerneld
if echo -n >> "Testing filesystem status"
   rm -f "Testing filesystem staus"
   READWRITE=yes
if [ ! $READWRITE = yes ]; then
   /sbin/fsck -A -a
read-only
rdev -R /dev/fd0 1
/bin/rm -f /etc/mtab* /etc/nologin /etc/shutdownpid
/sbin/mount -avt nonfs
/bin/rm -f /var/run/utmp /var/run/*.pid
cat /dev/null > /var/run/utmp
if [ -x /sbin/clock ]; then
   /sbin/clock -s
# /sbin/isapnp /etc/isapnp.conf
if [ -x /etc/rc.d/rc.modules ]; then
   . /etc/rc.d/rc.modules
if [ -x /etc/rc.d/rc.pcmcia ]; then
   . /etc/rc.d/rc.pcmcia start
if [ -x /etc/rc.d/rc/serial ]; then
   . /etc/rc.d/rc.serial

rc.M Call, Multi User( run levels 1 through 6)
initialized and mounting of file systems et al.
/bin/setterm -blank 15
if [ -x /etc/rc.d/rc.cdrom ]; then
   . /etc/rc.d/rc.cdrom
if [ ! -r /etc/HOSTNAME ]; then
   echo "darkstar.frop.org" > /etc/HOSTNAME
/bin/hostname `cat /etc/HOSTNAME | cut -f1 -d .`
   ( set hostname <- Libra )
if [ -x /etc/rc.d/rc.inet1 ]; then
   . /etc/rc.d/rc.inet1
   . /etc/rc.d/rc.inet2
else
if [ -x /usr/sbin/syslogd ]; then
   /usr/sbin/syslogd
   sleep 1 # Prevents a race condition with SMP kernels
   /usr/sbin/klogd
if [ -x /usr/sbin/lpd ]; then
   /usr/sbin/lpd
/usr/sbin/crond -l10 >>/var/adm/cron 2>&1
/bin/rm -f /var/spool/locks/* \ (実際は1行)
  /var/lock/* /var/spool/uucp/LCK..* \
  /tmp/.X*lock /tmp/core \
  /core 1> /dev/null 2> /dev/null
if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then
   /bin/rm -f /tmp/hunt*
chmod 755 /
chmod 1777 /tmp /var/tmp
/sbin/ldconfig
if [ -x /usr/sbin/sendmail ]; then
   /usr/sbin/sendmail -bd -q15m
if [ -x /etc/rc.d/rc.font ]; then
   . /etc/rc.d/rc.font
if [ -x /etc/rc.d/rc.ibcs2 ]; then
   . /etc/rc.d/rc.ibcs2
if [ -x /etc/rc.d/rc.httpd ]; then
   . /etc/rc.d/rc.httpd
if [ -x /etc/rc.d/rc.samba ]; then
   . /etc/rc.d/rc.samba
if [ -x /etc/rc.d/rc.keymap ]; then
   . /etc/rc.d/rc.keymap
if [ -x /etc/rc.d/rc.local ]; then
   . /etc/rc.d/rc.local

rc.inet1 Boots up INET system
/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
# configure eth0 interface

rc.inet2 Boots up INET system
NET="/usr/sbin"
IN_SERV="lpd"
LPSOOL="/var/spool/lpd"
echo "Mounting remote file systems"
/sbin/mount -a -t nfs
echo "Starting daemons"
if [ -f ${NET}/syslodg ]; then
   echo -n " syslogd"
   ${NET}/syslogd
   sleep 1
   echo -n " klogd"
   ${NET}/klogd
if [ -f ${NET}/rpc.portmap ]; then
   ${NET}/rpc.protmap
if [ -f ${NET}/inetd ]; then
   echo -n " inetd"
   ${NET}/inetd
else
   echo "no INETD"
   exit 1
if [ -x /usr/local/sbin/sshd ]; then
   echo -n " sshd"
   /usr/local/sbin/sshd
elif [ -x /usr/sbin/sshd ]; then
   echo -n " sshd"
   /usr/sbin/sshd
   # ${NET}/named
   # ${NET}/routed
   # ${NET}/rwhod
for server in ${IN_SERV}; do
if [ -f ${NET}/${server} ]; then
   echo -n " ${server}"
   ${NET}/${server}
# setting up NIS
if [ -f ${NET}/rpc.protmap ]; then
   if [ -f ${NET}/rpc.mountd ]; then
   echo -n " mountd"
   ${NET}/rpc.mountd
if [ -f ${NET}/rpc.nfsd ]; then
   echo -n " nfsd"
   ${NET}/rpc.nfsd

rc.modules Loads extra dirivers
/sbin/depmod -a
# /sbin/kerneld
/sbin/modprobe lp
/sbin/modprobe slip
/sbin/modprobe ppp
/sbin/modprobe sound
/sbin/modprobe psaux 2> /dev/null
/sbin/modprobe userlink

rc.serial Initializes serial ports
STD_FLAGS="session_lockout"
SETSERIAL=/sbin/setserial
echo -n "Configure serial prots..."
AUTO_IRQ=auto_irq
${SETSERIAL} /dev/cua0 ${AUTO_IRQ} skip_test autoconfig ${STD_FLAGS}
${SETSERIAL} /dev/cua1 ${AUTO_IRQ} skip_test autoconfig ${STD_FLAGS}
${SETSERIAL} /dev/cua2 ${AUTO_IRQ} skip_test autoconfig ${STD_FLAGS}
${SETSERIAL} /dev/cua3 ${AUTO_IRQ} autoconfig ${STD_FLAGS}
${SETSERIAL} /dev/cua8 ${AUTO_IRQ} autoconfig ${STD_FLAGS}
${SETSERIAL} /dev/cua9 ${AUTO_IRQ} autoconfig ${STD_FLAGS}
${SETSERIAL} /dev/cua10 ${AUTO_IRQ} autoconfig ${STD_FLAGS}
${SETSERIAL} /dev/cua11 ${AUTO_IRQ} autoconfig ${STD_FLAGS}
${SETSERIAL} -bg /dev/cua? /dev/cua??

rc.cdrom Search CD-ROM and mount

rc.font Setfont /usr/lib/kbd/consolefonts/sd.fnt

rc.local Local system initialization
# gpm -R -m /dev/mouse -t ps2
/etc/rc.d/rc.canna start
# /usr/X11R6/bin/xfs-xtt -port 7100 &
# /usr/bin/play /home/jun1/lib/sounds/au/start.au &
# cd /home/jun1/work/awesfx-0.4.2/bank-samples
# /usr/local/bin/sfxload synthgm.sbk
# /usr/local/bin/sfxload xgdefault.bnk

rc.keymap Set Japanised keymap j106-d.map
/usr/bin/loadkeys /usr/lib/kbd/keytables/j106-d.map

rc.canna Canna Server
SERVER=/usr/local/canna/bin/cannaserver
KILLER=/usr/local/canna/bin/cannakill
LOCKD=/var/lock/subsys
case
start)
   rm -f /tmp/.irha_unix/IROHA
   $SERVER
   if [ -d $LOCKD ]; then
   touch $LOCKD/canna
stop
   rm -f /var/lock/canna/.CANNALOCK
   $KILLER
   if [ -d $LOCKF ]; then
   rm -f $LOCKD/canna





戻る