Magellan Linux

Diff of /trunk/initscripts/sysvinit/rc/rc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/magellan-initscripts/etc/rc.d/init.d/rc revision 782 by niro, Mon Dec 22 22:08:32 2008 UTC trunk/initscripts/sysvinit/rc/rc revision 1788 by niro, Mon Apr 2 11:26:04 2012 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2  # $Header: /home/cvsd/magellan-cvs/magellan-src/magellan-initscripts/etc/rc.d/init.d/rc,v 1.22 2008-12-22 22:08:32 niro Exp $  # $Id$
3    
4  source /etc/conf.d/rc  source /etc/conf.d/rc
5  source ${rc_functions}  source ${rc_functions}
6    
 # load udev helper functions  
 source ${rc_base}/init.d/udev  
   
7  # get mage version  # get mage version
8  MAGEVER="$(< /etc/mageversion)"  if [[ -f /etc/os-release ]]
9    then
10     MAGEVER="$(read_os_release version_id)"
11    elif [ -f /etc/mageversion ]
12    then
13     MAGEVER="$(< /etc/mageversion)"
14    else
15     MAGEVER="unkown"
16    fi
17    
18  # source kernel config if exists  # source kernel config if exists
19  [ -f /etc/conf.d/kernel ] && source /etc/conf.d/kernel  [ -f /etc/conf.d/kernel ] && source /etc/conf.d/kernel
20    
21    # override devicemanager helper functions
22    if [[ ${RC_DEVICEMANAGER} = udev ]] && [[ -f ${rc_base}/init.d/udev ]]
23    then
24     source ${rc_base}/init.d/udev
25    
26    elif [[ ${RC_DEVICEMANAGER} = mdev ]] && [[ -f ${rc_base}/init.d/mdev ]]
27    then
28     source ${rc_base}/init.d/mdev
29    fi
30    
31  trap "" INT QUIT TSTP  trap "" INT QUIT TSTP
32    
33  [ "$1" != "" ] && runlevel=$1  [ "$1" != "" ] && runlevel=$1
34    
35  if [[ $runlevel = sysinit ]]  if [[ $runlevel = sysinit ]]
36  then  then
37   echo   rc_echo
38   echo -e "${COLGREEN}Starting ${COLBLUE}MAGELLAN (v${MAGEVER}) ${COLGREEN}Linux${COLDEFAULT}"   rc_echo -e "${COLGREEN}Starting ${COLBLUE}MAGELLAN (v${MAGEVER}) ${COLGREEN}Linux${COLDEFAULT}"
39   echo -e "Copyright 2001-2008 Niels Rogalla; http://magellan-linux.net"   rc_echo "Copyright 2001-2012 Niels Rogalla; http://magellan-linux.net"
40   echo   rc_echo
41    
42   # mount proc filesystem, needed for bootsplash;   # mount proc filesystem, needed for bootsplash;
43   # no use of '/etc/rc.d/init.d/mountproc' anymore   # no use of '/etc/rc.d/init.d/mountproc' anymore
44   if [ ! -e /proc/mounts ]   if [ ! -e /proc/mounts ]
45   then   then
46   echo -e ${COLOREDSTAR}"Mounting proc file system ..."   rc_print "Mounting proc file system ..."
47   mount -n /proc   mount -n /proc
48   evaluate_retval   evaluate_retval
49   fi   fi
# Line 40  then Line 55  then
55   # mount sys file system before udev   # mount sys file system before udev
56   if [ -d /sys ]   if [ -d /sys ]
57   then   then
58   echo -e ${COLOREDSTAR}"Mounting sysfs file system ..."   rc_print "Mounting sysfs file system ..."
59   mount -n -t sysfs sysfs /sys   mount -n -t sysfs sysfs /sys
60   evaluate_retval   evaluate_retval
61   else   else
62   echo -e ${COLORED}"Fatal: mountpoint /sys missing ..."   rc_echo -e ${COLRED}"Fatal: mountpoint /sys missing ..."
63   echo -e ${COLYELLOW}"Please create the directory /sys (mkdir -p /sys)."   rc_echo -e ${COLYELLOW}"Please create the directory /sys (mkdir -p /sys)."
64   echo -e ${COLYELLOW}"It's essential for a 2.6 kernel."   rc_echo -e ${COLYELLOW}"It's essential for a 2.6 kernel."
65   fi   fi
66    
67     # start device management
68   #### load udev ####   start_devicemanager
  start_udev  
  ## end udev ##  
   
69    
70   ## load devpts ##   ## load devpts ##
71   # devfs/udev with 2.6 has no ptys, so devpts is also needed   # devfs/udev with 2.6 has no ptys, so devpts is also needed
# Line 67  then Line 79  then
79   if [ ! -d "/dev/pts" -a -e "/dev/.devfsd" ] && is_fs_mounted devfs   if [ ! -d "/dev/pts" -a -e "/dev/.devfsd" ] && is_fs_mounted devfs
80   then   then
81   mkdir -p /dev/pts &> /dev/null || \   mkdir -p /dev/pts &> /dev/null || \
82   echo "Could not create /dev/pts !"   rc_echo "Could not create /dev/pts !"
83   fi   fi
84    
85   # now mount devpts   # now mount devpts
86   if [ -d /dev/pts ]   if [ -d /dev/pts ]
87   then   then
88   echo -e ${COLOREDSTAR}"Mounting devpts at /dev/pts ..."   rc_print "Mounting devpts at /dev/pts ..."
89   mount -n -t devpts -o gid=4,mode=0620 devpts /dev/pts   mount -n -t devpts -o gid=4,mode=0620 devpts /dev/pts
90   evaluate_retval   evaluate_retval
91   fi   fi
92   else   else
93   # devpts is not supported, give a warning   # devpts is not supported, give a warning
94   echo -e ${COLRED}"No devpts filesystem found ..."   rc_echo -e ${COLRED}"No devpts filesystem found ..."
95   echo -e ${COLYELLOW}"Your Kernel doesn't support the devpts filesystem."   rc_echo -e ${COLYELLOW}"Your Kernel doesn't support the devpts filesystem."
96   echo -e ${COLYELLOW}"Devfs with a kernel-2.6.x needs devpts,"   rc_echo -e ${COLYELLOW}"Devfs/Udev with a kernel-2.6.x needs devpts,"
97   echo -e ${COLYELLOW}"or no pty's are available."   rc_echo -e ${COLYELLOW}"or no pty's are available."
98   echo -e ${COLYELLOW}"Please make shure that this is enabled in your kernel."   rc_echo -e ${COLYELLOW}"Please make sure that this is enabled in your kernel."
99   echo   rc_echo
100   echo -e ${COLYELLOW}"Press any key to continue ..."   rc_echo -e ${COLYELLOW}"Press any key to continue ..."
101   read   read
102   fi   fi
103   ## end devpts ##   ## end devpts ##
# Line 94  then Line 106  then
106   ## load usbfs ##   ## load usbfs ##
107   if kernel_supports_fs usbfs   if kernel_supports_fs usbfs
108   then   then
109   echo -e ${COLOREDSTAR}"Mounting usbfs at /proc/bus/usb ..."   rc_print "Mounting usbfs at /proc/bus/usb ..."
110   mount -n -t usbfs usbfs /proc/bus/usb   mount -n -t usbfs usbfs /proc/bus/usb
111   evaluate_retval   evaluate_retval
112   fi   fi
113   ## end usbfs ##   ## end usbfs ##
114    
115   ## services state dir ##   ## services state dir ##
116   echo -e ${COLOREDSTAR}"Mounting tmpfs at ${svcdir} ..."   rc_print "Mounting tmpfs at ${svcdir} ..."
117   mount -n -t tmpfs tmpfs "${svcdir}" -o rw,mode=0644,size="${svcsize}"k   mount -n -t tmpfs tmpfs "${svcdir}" -o rw,mode=0644,size="${svcsize}"k
118   evaluate_retval   evaluate_retval
119    
# Line 121  then Line 133  then
133   if [[ ${RC_DEVICE_TARBALL} = yes ]] && \   if [[ ${RC_DEVICE_TARBALL} = yes ]] && \
134   [ -e /dev/.udev -a ! -e /dev/.devfsd -a ! -e /.bootdev ]   [ -e /dev/.udev -a ! -e /dev/.devfsd -a ! -e /.bootdev ]
135   then   then
136   echo -e ${COLOREDSTAR}"Saving /dev device nodes ..."   rc_print "Saving /dev device nodes ..."
137   ( cd /dev; tar -jclpf "/tmp/devices-$$.tar.bz2" * &> /dev/null )   ( cd /dev; tar -jclpf "/tmp/devices-$$.tar.bz2" * &> /dev/null )
138   mv -f "/tmp/devices-$$.tar.bz2" /lib/udev/state/devices.tar.bz2   mv -f "/tmp/devices-$$.tar.bz2" /lib/udev/state/devices.tar.bz2
139   evaluate_retval   evaluate_retval
140   fi   fi
141    
142     # stop device management
143     stop_devicemanager
144  fi  fi
145    
146    
147  if [ "$runlevel" = "" ]  if [ "$runlevel" = "" ]
148  then  then
149   echo "Usage: $0 <runlevel>" >&2   rc_echo "Usage: $0 <runlevel>" >&2
150   exit 1   exit 1
151  fi  fi
152    
# Line 141  previous=$PREVLEVEL Line 156  previous=$PREVLEVEL
156    
157  if [ ! -d $rc_base/rc$runlevel.d ]  if [ ! -d $rc_base/rc$runlevel.d ]
158  then  then
159   echo "$rc_base/rc$runlevel.d does not exist"   rc_echo "$rc_base/rc$runlevel.d does not exist"
160   exit 1   exit 1
161  fi  fi
162    
# Line 161  then Line 176  then
176   if [ ! -f $prev_start ] && [ ! -f $sysinit_start ]   if [ ! -f $prev_start ] && [ ! -f $sysinit_start ]
177   then   then
178   $WARNING   $WARNING
179   echo "$i can't be executed because it was"   rc_echo "$i can't be executed because it was"
180   echo "not started in the previous runlevel ($previous)"   rc_echo "not started in the previous runlevel ($previous)"
181   $NORMAL   $NORMAL
182   continue   continue
183   fi   fi

Legend:
Removed from v.782  
changed lines
  Added in v.1788