#!/bin/sh # # /etc/rc.sysinit # . /etc/rc.conf . /etc/rc.d/functions if [ "$USECOLOR" = "YES" -o "$USECOLOR" = "yes" ]; then echo -e "\n\033[1;32mArch Linux v0.6 \033[1;37m(\033[1;33mWidget\033[1;37m)" echo -e "\033[1;32m|\033[1;0m" echo -e "\033[1;32m|\033[1;37m http://www.archlinux.org\033[1;0m" echo -e "\033[1;32m|\033[1;0m Copyright 2002-2003 Judd Vinet" echo -e "\033[1;32m|\033[1;0m Distributed under the GNU General Public License (GPL)" echo -e "\033[1;32m|\033[1;0m" else echo -e "\nArch Linux v0.6 (Widget)" echo "|" echo "| http://www.archlinux.org" echo "| Copyright 2002-2003 Judd Vinet" echo "| Distributed under the GNU General Public License (GPL)" echo "|" fi # start up our mini logger until syslog takes over /sbin/minilogd # anything more serious than KERN_WARNING goes to the console /bin/dmesg -n 3 if [ -e /dev/.devfsd -a -x /sbin/devfsd ]; then status "Starting DevFS Daemon" /sbin/devfsd /dev fi if [ -f /etc/lvmtab ]; then # /proc is temporarily mounted to check for LVM support - it is # re-mounted later from /etc/fstab /bin/mount -n -t proc none /proc if [ -f /proc/lvm/global -a -x /sbin/vgchange ]; then stat_busy "Activating LVM groups" /sbin/vgchange -a y stat_done fi umount /proc fi status "Activating Swap" /sbin/swapon -a status "Mounting Root Read-only" /bin/mount -n -o remount,ro / if [ -x /sbin/fsck ]; then stat_busy "Checking Filesystems" /sbin/fsck -A -T -C -a if [ $? -gt 1 ]; then stat_fail echo echo "***************** FILESYSTEM CHECK FAILED ****************" echo "* *" echo "* Please repair manually and reboot. Note that the root *" echo "* file system is currently mounted read-only. To remount *" echo "* it read-write type: mount -n -o remount,rw / *" echo "* When you exit the maintenance shell the system will *" echo "* reboot automatically. *" echo "* *" echo "************************************************************" echo /sbin/sulogin -p echo "Automatic reboot in progress..." /bin/umount -a /bin/mount -n -o remount,ro / /sbin/reboot -f exit 0 fi stat_done fi stat_busy "Mounting Local Filesystems" /bin/mount -n -o remount,rw / /bin/rm -f /etc/mtab* /bin/mount /proc /bin/mount -a -t nonfs,nosmbfs,noncpfs stat_done stat_busy "Configuring System Clock" if [ "$HARDWARECLOCK" = "UTC" ]; then /sbin/hwclock --utc --hctosys else /sbin/hwclock --localtime --hctosys fi if [ ! -f /var/lib/hwclock/adjtime ]; then echo "0.0 0 0.0" > /var/lib/hwclock/adjtime fi if [ "$TIMEZONE" != "" ]; then /bin/ln -sf /usr/share/zoneinfo/$TIMEZONE /etc/localtime fi stat_done stat_busy "Removing Leftover Files" /bin/rm -f /etc/nologin &> /dev/null /bin/rm -f /etc/shutdownpid &> /dev/null /bin/rm -f /var/locks/* &> /dev/null /bin/rm -f /var/run/*.pid &> /dev/null /bin/rm -f /var/run/daemons/* &>/dev/null /bin/rm -rf /tmp/* /tmp/.* &> /dev/null : > /var/run/utmp stat_done status "Updating Shared Library Links" /sbin/ldconfig if [ "$HOSTNAME" != "" ]; then status "Setting Hostname: $HOSTNAME" /bin/hostname $HOSTNAME fi kernel_version=`uname -r` if [ -e "/lib/modules/$kernel_version/modules.dep" ]; then new_mods=`/usr/bin/find /lib/modules/$kernel_version -type f -newer /lib/modules/$kernel_version/modules.dep` if [ ! -z "$new_mods" ]; then status "Updating Module Dependencies" /sbin/depmod -a fi else status "Updating Module Dependencies" /sbin/depmod -a fi if [ -f /var/run/random-seed ]; then stat_busy "Initializing Random Seed" /bin/cat /var/run/random-seed >/dev/urandom stat_done fi if [ "$KEYMAP" != "" ]; then status "Loading Keyboard Map: $KEYMAP" /bin/loadkeys -q $KEYMAP fi if [ "$CONSOLEFONT" != "" ]; then stat_busy "Loading Console Font: $CONSOLEFONT" for i in `seq 1 12`; do /usr/bin/setfont $CONSOLEFONT -C /dev/vc/${i}; done stat_done fi # Load modules from the MODULES array defined in rc.conf stat_busy "Loading Modules" for mod in "${MODULES[@]}"; do if [[ `echo $mod | grep '^[^\!]' | wc -l` -eq 1 ]]; then /sbin/modprobe $mod fi done stat_done # Screen blanks after 15 minutes idle time /usr/bin/setterm -blank 15 # End of file