5 kx #!/bin/sh
5 kx #
5 kx # rc.M This file is executed by init(8) when the system is being
5 kx # initialized for one of the "multi user" run levels (i.e.
5 kx # levels 1 through 6). It usually does mounting of file
5 kx # systems et al.
5 kx #
5 kx # Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org>
5 kx # Modified by: Patrick Volkerding, <volkerdi@slackware.com>,
406 kx # Andrey V. Kosteltsev, <kx@radix-linux.su>
5 kx #
5 kx
5 kx # Tell the viewers what's going to happen.
5 kx echo "Going multiuser..."
5 kx
5 kx # Update all the shared library links:
5 kx if [ -x /sbin/ldconfig ]; then
5 kx echo "Updating shared library links: /sbin/ldconfig &"
5 kx /sbin/ldconfig &
5 kx fi
5 kx
5 kx #
5 kx # create cracklib dictionary on first start up:
5 kx #
5 kx extra_words=
5 kx if [ -x /bin/hostname ] ; then
5 kx echo `/bin/hostname` >> /usr/share/dict/host-name
5 kx extra_words=/usr/share/dict/host-name
5 kx fi
5 kx
5 kx if [ ! -r var/cache/cracklib/pq_dict.hwm -o \
5 kx ! -r var/cache/cracklib/pq_dict.pwd -o \
5 kx ! -r var/cache/cracklib/pq_dict.pwi ]; then
5 kx LD_PRELOAD=/usr/lib/libcrack.so \
5 kx /sbin/create-cracklib-dict -o /var/cache/cracklib/pq_dict /usr/share/dict/cracklib ${extra_words}
5 kx fi
5 kx
5 kx # Call the setterm init script to set screen blanking and power management defaults:
5 kx if [ -x /etc/rc.d/rc.setterm ]; then
5 kx /etc/rc.d/rc.setterm
5 kx fi
5 kx
5 kx # Set the hostname.
5 kx if [ -r /etc/HOSTNAME ]; then
5 kx /bin/hostname $(cat /etc/HOSTNAME | cut -f1 -d .)
5 kx else
5 kx # fall back on this old default:
5 kx echo "@HARDWARE@.example.org" > /etc/HOSTNAME
5 kx /bin/hostname radix
5 kx fi
5 kx
5 kx # Set the permissions on /var/log/dmesg according to whether the kernel
5 kx # permits non-root users to access kernel dmesg information:
5 kx if [ -r /proc/sys/kernel/dmesg_restrict ]; then
5 kx if [ $(cat /proc/sys/kernel/dmesg_restrict) = 1 ]; then
5 kx touch /var/log/dmesg
5 kx chmod 640 /var/log/dmesg
5 kx fi
5 kx else
5 kx touch /var/log/dmesg
5 kx chmod 644 /var/log/dmesg
5 kx fi
5 kx # Save the contents of 'dmesg':
5 kx /bin/dmesg -s 65536 > /var/log/dmesg
5 kx
5 kx # Initialize PCMCIA devices:
5 kx #
5 kx # NOTE: This used to be started near the top of rc.S so that PCMCIA devices
5 kx # could be fsck'ed along with the other drives. This had some unfortunate
5 kx # side effects, however, since root isn't yet read-write, and /var might not
5 kx # even be mounted the .pid files can't be correctly written in /var/run and
5 kx # the pcmcia system can't be correctly shut down. If you want some PCMCIA
5 kx # partition to be mounted at boot (or when the card is inserted) then add
5 kx # the appropriate lines to /etc/pcmcia/scsi.opts.
5 kx #
5 kx # Note that the stuff in /etc/pcmcia/ is only for 2.4.x kernels using
5 kx # 16-bit PCMCIA cards (not 32-bit Cardbus cards!). For example, with a
5 kx # wireless card you might need to set options in /etc/pcmcia OR in
5 kx # /etc/rc.d/rc.wireless.conf, or even in /etc/rc.d/rc.inet1.conf (with
5 kx # extra options if needed for the encryption key, ESSID, etc.)
5 kx #
5 kx # Hopefully this situation will be unified in the future, but for now
5 kx # that's how it is...
5 kx #
5 kx if [ -x /etc/rc.d/rc.pcmcia ]; then
5 kx /etc/rc.d/rc.pcmcia start
5 kx # The cards might need a little extra time here to initialize.
5 kx sleep 5
5 kx fi
5 kx
5 kx # Start the system logger:
5 kx if [ -x /etc/rc.d/rc.syslog ]; then
5 kx /etc/rc.d/rc.syslog start
5 kx fi
5 kx
5 kx
5 kx #######
5 kx ####### Update the X font indexes (check fonts.dir, fonts.scale also):
5 kx #######
5 kx
5 kx if [ -d /usr/share/fonts/100dpi ] ; then
5 kx if [ ! -r /usr/share/fonts/100dpi/fonts.dir -o ! -r /usr/share/fonts/100dpi/fonts.scale ] ; then
5 kx if [ -x /usr/bin/mkfontscale -a -x /usr/bin/mkfontdir ] ; then
5 kx echo "Updating fonts.dir, fonts.scale in /usr/share/fonts/100dpi directory"
5 kx ( cd /usr/share/fonts/100dpi ; /usr/bin/mkfontscale . ; /usr/bin/mkfontdir . )
5 kx fi
5 kx fi
5 kx fi
5 kx if [ -d /usr/share/fonts/75dpi ] ; then
5 kx if [ ! -r /usr/share/fonts/75dpi/fonts.dir -o ! -r /usr/share/fonts/75dpi/fonts.scale ] ; then
5 kx if [ -x /usr/bin/mkfontscale -a -x /usr/bin/mkfontdir ] ; then
5 kx echo "Updating fonts.dir, fonts.scale in /usr/share/fonts/75dpi directory"
5 kx ( cd /usr/share/fonts/75dpi ; /usr/bin/mkfontscale . ; /usr/bin/mkfontdir . )
5 kx fi
5 kx fi
5 kx fi
5 kx if [ -d /usr/share/fonts/OTF ] ; then
5 kx if [ ! -r /usr/share/fonts/OTF/fonts.dir -o ! -r /usr/share/fonts/OTF/fonts.scale ] ; then
5 kx if [ -x /usr/bin/mkfontscale -a -x /usr/bin/mkfontdir ] ; then
5 kx echo "Updating fonts.dir, fonts.scale in /usr/share/fonts/OTF directory"
5 kx ( cd /usr/share/fonts/OTF ; /usr/bin/mkfontscale . ; /usr/bin/mkfontdir . )
5 kx fi
5 kx fi
5 kx fi
5 kx if [ -d /usr/share/fonts/Speedo ] ; then
5 kx if [ ! -r /usr/share/fonts/Speedo/fonts.dir -o ! -r /usr/share/fonts/Speedo/fonts.scale ] ; then
5 kx if [ -x /usr/bin/mkfontscale -a -x /usr/bin/mkfontdir ] ; then
5 kx echo "Updating fonts.dir, fonts.scale in /usr/share/fonts/Speedo directory"
5 kx ( cd /usr/share/fonts/Speedo ; /usr/bin/mkfontscale . ; /usr/bin/mkfontdir . )
5 kx fi
5 kx fi
5 kx fi
5 kx if [ -d /usr/share/fonts/TTF ] ; then
5 kx if [ ! -r /usr/share/fonts/TTF/fonts.dir -o ! -r /usr/share/fonts/TTF/fonts.scale ] ; then
5 kx if [ -x /usr/bin/mkfontscale -a -x /usr/bin/mkfontdir ] ; then
5 kx echo "Updating fonts.dir, fonts.scale in /usr/share/fonts/TTF directory"
5 kx ( cd /usr/share/fonts/TTF ; /usr/bin/mkfontscale . ; /usr/bin/mkfontdir . )
5 kx fi
5 kx fi
5 kx fi
5 kx if [ -d /usr/share/fonts/Type1 ] ; then
5 kx if [ ! -r /usr/share/fonts/Type1/fonts.dir -o ! -r /usr/share/fonts/Type1/fonts.scale ] ; then
5 kx if [ -x /usr/bin/mkfontscale -a -x /usr/bin/mkfontdir ] ; then
5 kx echo "Updating fonts.dir, fonts.scale in /usr/share/fonts/Type1 directory"
5 kx ( cd /usr/share/fonts/Type1 ; /usr/bin/mkfontscale . ; /usr/bin/mkfontdir . )
5 kx fi
5 kx fi
5 kx fi
5 kx if [ -d /usr/share/fonts/cyrillic ] ; then
5 kx if [ ! -r /usr/share/fonts/cyrillic/fonts.dir -o ! -r /usr/share/fonts/cyrillic/fonts.scale ] ; then
5 kx if [ -x /usr/bin/mkfontscale -a -x /usr/bin/mkfontdir ] ; then
5 kx echo "Updating fonts.dir, fonts.scale in /usr/share/fonts/cyrillic directory"
5 kx ( cd /usr/share/fonts/cyrillic ; /usr/bin/mkfontscale . ; /usr/bin/mkfontdir . )
5 kx fi
5 kx fi
5 kx fi
5 kx if [ -d /usr/share/fonts/terminus ] ; then
5 kx if [ ! -r /usr/share/fonts/terminus/fonts.dir -o ! -r /usr/share/fonts/terminus/fonts.scale ] ; then
5 kx if [ -x /usr/bin/mkfontscale -a -x /usr/bin/mkfontdir ] ; then
5 kx echo "Updating fonts.dir, fonts.scale in /usr/share/fonts/terminus directory"
5 kx ( cd /usr/share/fonts/terminus ; /usr/bin/mkfontscale . ; /usr/bin/mkfontdir . )
5 kx fi
5 kx fi
5 kx fi
5 kx if [ -d /usr/share/fonts/misc ] ; then
5 kx if [ ! -r /usr/share/fonts/misc/fonts.dir -o ! -r /usr/share/fonts/misc/fonts.scale ] ; then
5 kx if [ -x /usr/bin/mkfontscale -a -x /usr/bin/mkfontdir ] ; then
5 kx echo "Updating fonts.dir, fonts.scale in /usr/share/fonts/misc directory"
5 kx ( cd /usr/share/fonts/misc ; /usr/bin/mkfontscale . ; /usr/bin/mkfontdir -e /usr/share/fonts/encodings -e /usr/share/fonts/encodings/large . )
5 kx fi
5 kx fi
5 kx fi
5 kx
5 kx if [ -x /usr/bin/fc-cache ]; then
5 kx echo "Updating X font indexes: /usr/bin/fc-cache -f &"
5 kx /usr/bin/fc-cache -f &
5 kx fi
5 kx
5 kx
5 kx #######
5 kx ####### Update the ca-certificates at first system boot:
5 kx #######
5 kx
5 kx if [ -d /etc/ssl/certs ] ; then
5 kx if [ ! -r /etc/ssl/certs/ca-certificates.crt -a -x /usr/sbin/update-ca-certificates ] ; then
5 kx echo "Updating ca-certificates in /etc/ssl/certs directory"
5 kx /usr/sbin/update-ca-certificates
5 kx fi
5 kx fi
5 kx
5 kx
5 kx # Run rc.udev again. This will start udev if it is not already running
5 kx # (for example, upon return from runlevel 1), otherwise it will trigger it
5 kx # to look for device changes and to generate persistent rules if needed.
5 kx if grep -wq sysfs /proc/mounts && grep -q devtmpfs /proc/filesystems ; then
5 kx if ! grep -wq nohotplug /proc/cmdline ; then
5 kx if [ -x /etc/rc.d/rc.udev ]; then
5 kx /bin/sh /etc/rc.d/rc.udev start
5 kx fi
5 kx fi
5 kx fi
5 kx
5 kx # Start the haveged entropy daemon:
5 kx if [ -x /etc/rc.d/rc.haveged ]; then
5 kx /etc/rc.d/rc.haveged start
5 kx fi
5 kx
5 kx # Start the rngd entropy daemon:
5 kx if [ -x /etc/rc.d/rc.rngd ]; then
5 kx /etc/rc.d/rc.rngd start
5 kx fi
5 kx
5 kx
5 kx # Initialize the networking hardware:
5 kx if [ -x /etc/rc.d/rc.inet1 ]; then
5 kx /etc/rc.d/rc.inet1
5 kx fi
5 kx
5 kx # Start D-Bus:
5 kx if [ -x /etc/rc.d/rc.messagebus ]; then
5 kx /etc/rc.d/rc.messagebus start
5 kx fi
5 kx
5 kx # Start the session/seat daemon:
5 kx if [ -x /etc/rc.d/rc.elogind -a -x /bin/loginctl ]; then
5 kx /etc/rc.d/rc.elogind start
5 kx elif [ -x /etc/rc.d/rc.consolekit -a -x /usr/sbin/console-kit-daemon ]; then
5 kx /etc/rc.d/rc.consolekit start
5 kx fi
5 kx
5 kx # Start Bluetooth:
5 kx if [ -x /etc/rc.d/rc.bluetooth ]; then
5 kx /etc/rc.d/rc.bluetooth start
5 kx fi
5 kx
5 kx # Start wicd or networkmanager:
5 kx if [ -x /etc/rc.d/rc.wicd -a -x /usr/sbin/wicd ]; then
5 kx /etc/rc.d/rc.wicd start
5 kx elif [ -x /etc/rc.d/rc.networkmanager ]; then
5 kx /etc/rc.d/rc.networkmanager start
5 kx fi
5 kx
5 kx # Start networking daemons:
5 kx if [ -x /etc/rc.d/rc.inet2 ]; then
5 kx /etc/rc.d/rc.inet2
5 kx fi
5 kx
5 kx # Mount any additional filesystem types that haven't already been mounted:
5 kx mount -a -v 2> /dev/null | grep -v -e "already mounted" -e "ignored" | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep "${dev} " ; done
5 kx
5 kx # Start the Control Script for automounter:
5 kx if [ -x /etc/rc.d/rc.autofs ]; then
5 kx /etc/rc.d/rc.autofs start
5 kx fi
5 kx
5 kx # Start the Network Time Protocol daemon:
5 kx if [ -x /etc/rc.d/rc.ntpd ]; then
5 kx /etc/rc.d/rc.ntpd start
5 kx fi
5 kx
5 kx # Remove stale locks and junk files (must be done after mount -a!)
5 kx /bin/rm -f /var/lock/* /var/spool/uucp/LCK..* /tmp/.X*lock /tmp/.X11-unix/* /tmp/core /core 2> /dev/null
5 kx /bin/rm -rf /var/spool/cron/cron.?????? 2> /dev/null
5 kx
5 kx # Remove stale hunt sockets so the game can start.
5 kx if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then
5 kx echo "Removing your stale hunt sockets from /tmp."
5 kx /bin/rm -f /tmp/hunt*
5 kx fi
5 kx
5 kx # Ensure basic filesystem permissions sanity.
5 kx chmod 755 / 2> /dev/null
5 kx chmod 1777 /tmp /var/tmp
5 kx
5 kx # Start ACPI daemon.
5 kx if [ -x /etc/rc.d/rc.acpid ]; then
5 kx /etc/rc.d/rc.acpid start
5 kx fi
5 kx
5 kx # Enable CPU frequency scaling:
5 kx if [ -x /etc/rc.d/rc.cpufreq ]; then
5 kx /etc/rc.d/rc.cpufreq start
5 kx fi
5 kx
5 kx # Update any existing icon cache files:
5 kx if find /usr/share/icons -maxdepth 2 2> /dev/null | grep -q icon-theme.cache ; then
5 kx for theme_dir in /usr/share/icons/* ; do
5 kx if [ -r ${theme_dir}/icon-theme.cache ]; then
5 kx echo "Updating icon-theme.cache in ${theme_dir}..."
5 kx /usr/bin/gtk-update-icon-cache -t -f ${theme_dir} 1> /dev/null 2> /dev/null &
5 kx fi
5 kx done
5 kx # This would be a large file and probably shouldn't be there.
5 kx if [ -r /usr/share/icons/icon-theme.cache ]; then
5 kx echo "Deleting icon-theme.cache in /usr/share/icons..."
5 kx #/usr/bin/gtk-update-icon-cache -t -f /usr/share/icons 1> /dev/null 2> /dev/null &
5 kx rm -f /usr/share/icons/icon-theme.cache
5 kx fi
5 kx fi
5 kx
5 kx # Update mime database:
5 kx if [ -x /usr/bin/update-mime-database -a -d /usr/share/mime ]; then
5 kx echo "Updating MIME database: /usr/bin/update-mime-database /usr/share/mime &"
5 kx /usr/bin/update-mime-database /usr/share/mime 1> /dev/null 2> /dev/null &
5 kx fi
5 kx
5 kx # Start HAL:
5 kx if [ -x /etc/rc.d/rc.hald ]; then
5 kx sh /etc/rc.d/rc.hald start
5 kx fi
5 kx
5 kx # Start system-wide PulseAudio daemon (not recommended, nor required in
5 kx # order to use PulseAudio -- see the script for details):
5 kx if [ -x /etc/rc.d/rc.pulseaudio ]; then
5 kx /etc/rc.d/rc.pulseaudio start
5 kx fi
5 kx
5 kx # These GTK+/pango files need to be kept up to date for
5 kx # proper input method, pixbuf loaders, and font support.
5 kx if [ -x /usr/bin/update-gtk-immodules ]; then
5 kx echo "Updating gtk.immodules:"
5 kx echo " /usr/bin/update-gtk-immodules &"
5 kx /usr/bin/update-gtk-immodules > /dev/null 2>&1 &
5 kx fi
5 kx if [ -x /usr/bin/update-gdk-pixbuf-loaders ]; then
5 kx echo "Updating gdk-pixbuf.loaders:"
5 kx echo " /usr/bin/update-gdk-pixbuf-loaders &"
5 kx HOME=/root /usr/bin/update-gdk-pixbuf-loaders > /dev/null 2>&1 &
5 kx fi
5 kx if [ -x /usr/bin/update-pango-querymodules ]; then
5 kx echo "Updating pango.modules:"
5 kx echo " /usr/bin/update-pango-querymodules &"
5 kx /usr/bin/update-pango-querymodules > /dev/null 2>&1 &
5 kx fi
5 kx if [ -x /usr/bin/glib-compile-schemas ]; then
5 kx echo "Compiling GSettings XML schema files:"
5 kx echo " /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas &"
5 kx /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1 &
5 kx fi
5 kx
5 kx # Start dnsmasq, a simple DHCP/DNS server:
5 kx if [ -x /etc/rc.d/rc.dnsmasq ]; then
5 kx /etc/rc.d/rc.dnsmasq start
5 kx fi
5 kx
5 kx # Start snmpd:
5 kx if [ -x /etc/rc.d/rc.snmpd ]; then
5 kx /etc/rc.d/rc.snmpd start
5 kx fi
5 kx
5 kx # Start the print spooling system. This will usually be LPRng (lpd) or CUPS.
5 kx if [ -x /etc/rc.d/rc.cups ]; then
5 kx # Start CUPS:
5 kx /etc/rc.d/rc.cups start
5 kx elif [ -x /etc/rc.d/rc.lprng ]; then
5 kx # Start LPRng (lpd):
5 kx /etc/rc.d/rc.lprng start
5 kx fi
5 kx
5 kx # Start netatalk. (a file/print server for Macs using Appletalk)
5 kx if [ -x /etc/rc.d/rc.atalk ]; then
5 kx /etc/rc.d/rc.atalk start
5 kx fi
5 kx
5 kx # Start smartd, which monitors the status of S.M.A.R.T. compatible
5 kx # hard drives and reports any problems:
5 kx if [ -x /etc/rc.d/rc.smartd ]; then
5 kx /etc/rc.d/rc.smartd start
5 kx fi
5 kx
5 kx ## Monitor the UPS with genpowerd.
5 kx ## To use this, uncomment this section and edit your settings in
5 kx ## /etc/genpowerd.conf (serial device, UPS type, etc). For more information,
5 kx ## see "man genpowerd" or the extensive documentation in the
5 kx ## /usr/doc/genpower-*/ directory.
5 kx ## You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want
5 kx ## support for stopping the UPS's inverter after the machine halts.
5 kx ##if [ -x /sbin/genpowerd ]; then
5 kx ## echo "Starting genpowerd daemon..."
5 kx ## /sbin/genpowerd
5 kx ##fi
5 kx
5 kx # Turn on process accounting. To enable process accounting, make sure the
5 kx # option for BSD process accounting is enabled in your kernel, and then
5 kx # create the file /var/log/pacct (touch /var/log/pacct). By default, process
5 kx # accounting is not enabled (since /var/log/pacct does not exist). This is
5 kx # because the log file can get VERY large.
5 kx if [ -x /sbin/accton -a -r /var/log/pacct ]; then
5 kx chmod 640 /var/log/pacct
5 kx /sbin/accton /var/log/pacct
5 kx fi
5 kx
5 kx # Start crond (Dillon's crond):
5 kx if [ -x /etc/rc.d/rc.crond ]; then
5 kx /etc/rc.d/rc.crond start
5 kx fi
5 kx
5 kx # Start atd (manages jobs scheduled with 'at'):
5 kx if [ -x /etc/rc.d/rc.atd ]; then
5 kx /etc/rc.d/rc.atd start
5 kx fi
5 kx
5 kx ## Mini-Quota-HOWTO:
5 kx # To really activate quotas, you'll need to add 'usrquota' and/or 'grpquota' to
5 kx # the appropriate partitions as listed in /etc/fstab. Here's an example:
5 kx #
5 kx # /dev/hda2 /home ext3 defaults,usrquota 1 1
5 kx #
5 kx # You'll then need to setup initial quota files at the top of the partitions
5 kx # to support quota, like this:
5 kx # touch /home/aquota.user /home/aquota.group
5 kx # chmod 600 /home/aquota.user /home/aquota.group
5 kx #
5 kx # Then, reboot to activate the system.
5 kx # To edit user quotas, use 'edquota'. See 'man edquota'. Also, the
5 kx # official Quota Mini-HOWTO has lots of useful information. That can be found
5 kx # here: /usr/doc/Linux-HOWTOs/Quota
5 kx
5 kx # Check quotas and then turn quota system on:
5 kx if grep -q quota /etc/fstab ; then
5 kx for quotafs in $(awk '/quota/ {print $2}' /etc/fstab) ; do
5 kx /bin/rm -f $quotafs/{a,}quota.{group,user}.new
5 kx done
5 kx if [ -x /sbin/quotacheck ]; then
5 kx echo "Checking filesystem quotas: /sbin/quotacheck -avugm"
5 kx /sbin/quotacheck -avugm
5 kx fi
5 kx if [ -x /sbin/quotaon ]; then
5 kx echo "Activating filesystem quotas: /sbin/quotaon -avug"
5 kx /sbin/quotaon -avug
5 kx fi
5 kx fi
5 kx
5 kx # Start the SASL authentication server. This provides SASL
5 kx # authentication services for sendmail:
5 kx if [ -x /etc/rc.d/rc.saslauthd ]; then
5 kx /etc/rc.d/rc.saslauthd start
5 kx fi
5 kx
5 kx # Start the IMAP daemon:
5 kx if [ -x /etc/rc.d/rc.cyrus-imapd ]; then
5 kx /etc/rc.d/rc.cyrus-imapd start
5 kx fi
5 kx
5 kx # Start the mail server:
5 kx if [ -x /etc/rc.d/rc.sendmail -a -x usr/sbin/makemap ]; then
5 kx /etc/rc.d/rc.sendmail start
5 kx elif [ -x /etc/rc.d/rc.postfix -a -x usr/sbin/postdrop ]; then
5 kx /etc/rc.d/rc.postfix start
5 kx fi
5 kx
5 kx # Start the Memcached daemon:
5 kx if [ -x /etc/rc.d/rc.memcached ]; then
5 kx /etc/rc.d/rc.memcached start
5 kx fi
5 kx
5 kx # Start the Tomcat daemon:
5 kx if [ -x /etc/rc.d/rc.tomcat ]; then
5 kx /etc/rc.d/rc.tomcat start
5 kx fi
5 kx
5 kx # Load ALSA (sound) defaults:
5 kx if [ -x /etc/rc.d/rc.alsa ]; then
5 kx /etc/rc.d/rc.alsa
5 kx fi
5 kx
5 kx # Load a custom screen font if the user has an rc.font script.
5 kx if [ -x /etc/rc.d/rc.font ]; then
5 kx /etc/rc.d/rc.font
5 kx fi
5 kx
5 kx # Load a custom keymap if the user has an rc.keymap script.
5 kx if [ -x /etc/rc.d/rc.keymap ]; then
5 kx /etc/rc.d/rc.keymap
5 kx fi
5 kx
5 kx # Start the MySQL database:
5 kx if [ -x /etc/rc.d/rc.mysqld ]; then
5 kx /etc/rc.d/rc.mysqld start
5 kx fi
5 kx
5 kx # Startup postgresql:
5 kx if [ -x /etc/rc.d/rc.postgresql ]; then
5 kx /etc/rc.d/rc.postgresql start
5 kx fi
5 kx
5 kx # Start FastCGI PHP server:
5 kx if [ -x /etc/rc.d/rc.php-fpm ]; then
5 kx /etc/rc.d/rc.php-fpm start
5 kx fi
5 kx
5 kx # Start uWSGI for cGit server:
5 kx if [ -x /etc/rc.d/rc.cgit-uwsgi ]; then
5 kx /etc/rc.d/rc.cgit-uwsgi start
5 kx fi
5 kx
5 kx # Start key-value store Redis:
5 kx if [ -x /etc/rc.d/rc.redis ]; then
5 kx /etc/rc.d/rc.redis start
5 kx fi
5 kx
5 kx # Start Message broker RabbitMQ:
5 kx if [ -x /etc/rc.d/rc.rabbitmq ]; then
5 kx /etc/rc.d/rc.rabbitmq start
5 kx fi
5 kx
5 kx # Start Nginx server:
5 kx if [ -x /etc/rc.d/rc.nginx ]; then
5 kx /etc/rc.d/rc.nginx start
5 kx fi
5 kx
5 kx # Start Apache web server:
5 kx if [ -x /etc/rc.d/rc.httpd ]; then
5 kx /etc/rc.d/rc.httpd start
5 kx fi
5 kx
5 kx # Start OpenLDAP:
5 kx if [ -x /etc/rc.d/rc.openldap ]; then
5 kx /etc/rc.d/rc.openldap start
5 kx fi
5 kx
5 kx # Start local LDAP name service daemon (from nss-pam-ldapd):
5 kx if [ -x /etc/rc.d/rc.nslcd ]; then
5 kx /etc/rc.d/rc.nslcd start
5 kx fi
5 kx
5 kx # Start Dovecot:
5 kx if [ -x /etc/rc.d/rc.dovecot ]; then
5 kx /etc/rc.d/rc.dovecot start
5 kx fi
5 kx
5 kx # Start Samba (a file/print server for Win95/NT machines).
5 kx # Samba can be started in /etc/inetd.conf instead.
5 kx if [ -x /etc/rc.d/rc.samba ]; then
5 kx /etc/rc.d/rc.samba start
5 kx fi
5 kx
385 kx # Start the MiniDLNA server:
385 kx if [ -x /etc/rc.d/rc.minidlna ]; then
385 kx /etc/rc.d/rc.minidlna start
385 kx fi
385 kx
385 kx # Start transmission daemon
385 kx if [ -x /etc/rc.d/rc.transmission ]; then
385 kx /etc/rc.d/rc.transmission start
385 kx fi
385 kx
5 kx # Start the GPM mouse server:
5 kx if [ -x /etc/rc.d/rc.gpm ]; then
5 kx /etc/rc.d/rc.gpm start
5 kx fi
5 kx
5 kx # Start the Icecream scheduler. This needs to run on
5 kx # only one machine that is part of the compile cluster:
5 kx if [ -x /etc/rc.d/rc.icecc-scheduler ]; then
5 kx /etc/rc.d/rc.icecc-scheduler start
5 kx fi
5 kx
5 kx # Start the Icecream daemon. This needs to run on every machine that will be
5 kx # part of the compile cluster (including the machine running the scheduler):
5 kx if [ -x /etc/rc.d/rc.iceccd ]; then
5 kx /etc/rc.d/rc.iceccd start
5 kx fi
5 kx
5 kx # If there are SystemV init scripts for this runlevel, run them:
5 kx if [ -x /etc/rc.d/rc.sysvinit ]; then
5 kx /etc/rc.d/rc.sysvinit
5 kx fi
5 kx
5 kx # Start the local setup procedure.
5 kx if [ -x /etc/rc.d/rc.local ]; then
5 kx /etc/rc.d/rc.local
5 kx fi
5 kx
5 kx # All done.