20 changed files with 363 additions and 99 deletions
			
			
		| @ -0,0 +1,14 @@ | |||
| #
 | |||
| # makefile to install system files
 | |||
| #
 | |||
| # -----------------------------------------------------------------------------
 | |||
| 
 | |||
| files-etc: \ | |||
| 	$(TARGET_DIR)/etc/default/rcS \
 | |||
| 	$(TARGET_DIR)/etc/inittab | |||
| 
 | |||
| $(TARGET_DIR)/etc/default/rcS: | |||
| 	$(INSTALL_DATA) -D $(TARGET_FILES)/files-etc/default/rcS $(@) | |||
| 
 | |||
| $(TARGET_DIR)/etc/inittab: | |||
| 	$(INSTALL_DATA) -D $(TARGET_FILES)/files-etc/inittab $(@) | |||
| @ -0,0 +1,29 @@ | |||
| # | |||
| #	Defaults for the boot scripts in /etc/rcS.d | |||
| # | |||
| 
 | |||
| # Time files in /tmp are kept in days. | |||
| TMPTIME=0 | |||
| # Set to yes if you want sulogin to be spawned on bootup | |||
| SULOGIN=no | |||
| # Set to no if you want to be able to login over telnet/rlogin | |||
| # before system startup is complete (as soon as inetd is started) | |||
| DELAYLOGIN=no | |||
| # Assume that the BIOS clock is set to UTC time (recommended) | |||
| UTC=yes | |||
| # Set VERBOSE to "no" if you would like a more quiet bootup. | |||
| VERBOSE=no | |||
| # Set EDITMOTD to "no" if you don't want /etc/motd to be edited automatically | |||
| EDITMOTD=no | |||
| # Whether to fsck root on boot | |||
| ENABLE_ROOTFS_FSCK=no | |||
| # Set FSCKFIX to "yes" if you want to add "-y" to the fsck at startup. | |||
| FSCKFIX=yes | |||
| # Set TICKADJ to the correct tick value for this specific machine | |||
| #TICKADJ=10000 | |||
| # Enable caching in populate-volatile.sh | |||
| VOLATILE_ENABLE_CACHE=yes | |||
| # Indicate whether the rootfs is intended to be read-only or not. | |||
| # Setting ROOTFS_READ_ONLY to yes and rebooting will give you a read-only rootfs. | |||
| # Normally you should not change this value. | |||
| ROOTFS_READ_ONLY=no | |||
| @ -0,0 +1,180 @@ | |||
| #!/bin/sh | |||
| # | |||
| # rc		This file is responsible for starting/stopping | |||
| #		services when the runlevel changes. | |||
| # | |||
| #		Optimization feature: | |||
| #		A startup script is _not_ run when the service was | |||
| #		running in the previous runlevel and it wasn't stopped | |||
| #		in the runlevel transition (most Debian services don't | |||
| #		have K?? links in rc{1,2,3,4,5} ) | |||
| # | |||
| # Author:	Miquel van Smoorenburg <miquels@cistron.nl> | |||
| #		Bruce Perens <Bruce@Pixar.com> | |||
| # | |||
| # Version:	@(#)rc  2.78  07-Nov-1999  miquels@cistron.nl | |||
| # | |||
| 
 | |||
| . /etc/default/rcS | |||
| export VERBOSE | |||
| 
 | |||
| startup_progress() { | |||
|     step=$(($step + $step_change)) | |||
|     if [ "$num_steps" != "0" ]; then | |||
|         progress=$((($step * $progress_size / $num_steps) + $first_step)) | |||
|     else | |||
|         progress=$progress_size | |||
|     fi | |||
|     #echo "PROGRESS is $progress $runlevel $first_step + ($step of $num_steps) $step_change $progress_size" | |||
|     #if type psplash-write >/dev/null 2>&1; then | |||
|     #    TMPDIR=/mnt/.psplash psplash-write "PROGRESS $progress" || true | |||
|     #fi | |||
|     if [ $progress -gt 0 -a -e /proc/progress ]; then | |||
|         echo $(($progress / 2)) > /proc/progress | |||
|     elif [ $progress -gt 0 -a -e /proc/vfd ]; then | |||
|         echo Loading $(($progress / 2)) % > /proc/vfd | |||
|     elif [ $progress -gt 0 -a -e /usr/bin/displayvfd ]; then | |||
|         displayvfd -s 18 -t "Booting $progress" | |||
|     elif [ $progress -gt 0 -a -e /dev/mcu ]; then | |||
|         echo $(($progress / 2)) > /dev/mcu | |||
|     fi | |||
| } | |||
| 
 | |||
| 
 | |||
| # | |||
| # Start script or program. | |||
| # | |||
| startup() { | |||
|   # Handle verbosity | |||
|   [ "$VERBOSE" = very ] && echo "INIT: Running $@..." | |||
| 
 | |||
|   case "$1" in | |||
| 	*.sh) | |||
| 		# Source shell script for speed. | |||
| 		( | |||
| 			trap - INT QUIT TSTP | |||
| 			scriptname=$1 | |||
| 			shift | |||
| 			. $scriptname | |||
| 		) | |||
| 		;; | |||
| 	*) | |||
| 		"$@" | |||
| 		;; | |||
|   esac | |||
|   startup_progress | |||
| } | |||
| 
 | |||
|   # Ignore CTRL-C only in this shell, so we can interrupt subprocesses. | |||
|   trap ":" INT QUIT TSTP | |||
| 
 | |||
|   # Set onlcr to avoid staircase effect. | |||
|   stty onlcr 0>&1 | |||
| 
 | |||
|   # Limit stack size for startup scripts | |||
|   [ "$STACK_SIZE" == "" ] || ulimit -S -s $STACK_SIZE | |||
| 
 | |||
|   # Now find out what the current and what the previous runlevel are. | |||
| 
 | |||
|   runlevel=$RUNLEVEL | |||
|   # Get first argument. Set new runlevel to this argument. | |||
|   [ "$1" != "" ] && runlevel=$1 | |||
|   if [ "$runlevel" = "" ] | |||
|   then | |||
| 	echo "Usage: $0 <runlevel>" >&2 | |||
| 	exit 1 | |||
|   fi | |||
|   previous=$PREVLEVEL | |||
|   [ "$previous" = "" ] && previous=N | |||
| 
 | |||
|   export runlevel previous | |||
| 
 | |||
|   # Is there an rc directory for this new runlevel? | |||
|   if [ -d /etc/rc$runlevel.d ] | |||
|   then | |||
| 	# Find out where in the progress bar the initramfs got to. | |||
| 	PROGRESS_STATE=0 | |||
| 	#if [ -f /dev/.initramfs/progress_state ]; then | |||
| 	#    . /dev/.initramfs/progress_state | |||
| 	#fi | |||
| 
 | |||
| 	# Split the remaining portion of the progress bar into thirds | |||
| 	progress_size=$(((100 - $PROGRESS_STATE) / 3)) | |||
| 
 | |||
| 	case "$runlevel" in | |||
| 		0|6) | |||
| 			# Count down from -100 to 0 and use the entire bar | |||
| 			first_step=-100 | |||
| 			progress_size=100 | |||
| 			step_change=1 | |||
| 			;; | |||
| 	        S) | |||
| 			# Begin where the initramfs left off and use 2/3 | |||
| 			# of the remaining space | |||
| 			first_step=$PROGRESS_STATE | |||
| 			progress_size=$(($progress_size * 2)) | |||
| 			step_change=1 | |||
| 			;; | |||
| 		*) | |||
| 			# Begin where rcS left off and use the final 1/3 of | |||
| 			# the space (by leaving progress_size unchanged) | |||
| 			first_step=$(($progress_size * 2 + $PROGRESS_STATE)) | |||
| 			step_change=1 | |||
| 			;; | |||
| 	esac | |||
| 
 | |||
| 	num_steps=0 | |||
| 	for s in /etc/rc$runlevel.d/[SK]*; do | |||
|             case "${s##/etc/rc$runlevel.d/S??}" in | |||
|                 gdm|xdm|kdm|reboot|halt) | |||
|                     break | |||
|                     ;; | |||
|             esac | |||
|             num_steps=$(($num_steps + 1)) | |||
|         done | |||
|         step=0 | |||
| 
 | |||
| 	# First, run the KILL scripts. | |||
| 	if [ $previous != N ] | |||
| 	then | |||
| 		for i in /etc/rc$runlevel.d/K[0-9][0-9]* | |||
| 		do | |||
| 			# Check if the script is there. | |||
| 			[ ! -f $i ] && continue | |||
| 
 | |||
| 			# Stop the service. | |||
| 			startup $i stop | |||
| 		done | |||
| 	fi | |||
| 
 | |||
| 	# Now run the START scripts for this runlevel. | |||
| 	for i in /etc/rc$runlevel.d/S* | |||
| 	do | |||
| 		[ ! -f $i ] && continue | |||
| 
 | |||
| 		if [ $previous != N ] && [ $previous != S ] | |||
| 		then | |||
| 			# | |||
| 			# Find start script in previous runlevel and | |||
| 			# stop script in this runlevel. | |||
| 			# | |||
| 			suffix=${i#/etc/rc$runlevel.d/S[0-9][0-9]} | |||
| 			stop=/etc/rc$runlevel.d/K[0-9][0-9]$suffix | |||
| 			previous_start=/etc/rc$previous.d/S[0-9][0-9]$suffix | |||
| 			# | |||
| 			# If there is a start script in the previous level | |||
| 			# and _no_ stop script in this level, we don't | |||
| 			# have to re-start the service. | |||
| 			# | |||
| 			[ -f $previous_start ] && [ ! -f $stop ] && continue | |||
| 		fi | |||
| 		case "$runlevel" in | |||
| 			0|6) | |||
| 				startup $i stop | |||
| 				;; | |||
| 			*) | |||
| 				startup $i start | |||
| 				;; | |||
| 		esac | |||
| 	done | |||
|   fi | |||
| @ -0,0 +1,37 @@ | |||
| # /etc/inittab: init configuration. | |||
| 
 | |||
| # The default runlevel. | |||
| id:3:initdefault: | |||
| 
 | |||
| # Boot-time system configuration/initialization script. | |||
| # This is run first except when booting in emergency (-b) mode. | |||
| si::sysinit:/etc/init.d/rcS | |||
| 
 | |||
| # /etc/init.d executes the S and K scripts upon change | |||
| # of runlevel. | |||
| # | |||
| # Runlevel 0 is halt. | |||
| # Runlevel 1 is single-user. | |||
| # Runlevels 2-5 are multi-user. | |||
| # Runlevel 6 is reboot. | |||
| 
 | |||
| l0:0:wait:/etc/init.d/rc 0 | |||
| l1:1:wait:/etc/init.d/rc 1 | |||
| l2:2:wait:/etc/init.d/rc 2 | |||
| l3:3:wait:/etc/init.d/rc 3 | |||
| l4:4:wait:/etc/init.d/rc 4 | |||
| l5:5:wait:/etc/init.d/rc 5 | |||
| l6:6:wait:/etc/init.d/rc 6 | |||
| 
 | |||
| # run neutrino gui | |||
| gui:3:respawn:/etc/init.d/start_neutrino | |||
| 
 | |||
| # Stuff to do for the 3-finger salute | |||
| #ca::ctrlaltdel:/sbin/reboot | |||
| 
 | |||
| # Stuff to do before halt or reboot | |||
| shd0:06:wait:/etc/init.d/rcK | |||
| 
 | |||
| # The usual halt or reboot actions | |||
| hlt0:0:wait:/sbin/halt -dhp | |||
| reb0:6:wait:/sbin/reboot | |||
| @ -1,10 +0,0 @@ | |||
| # /etc/inittab: init configuration. | |||
| 
 | |||
| ::sysinit:/etc/init.d/rcS | |||
| ::once:/etc/init.d/start_neutrino | |||
| 
 | |||
| ::askfirst:-/bin/sh | |||
| 
 | |||
| ::restart:/sbin/init | |||
| ::ctrlaltdel:/sbin/reboot | |||
| ::shutdown:/etc/init.d/rcK | |||
| @ -1,10 +0,0 @@ | |||
| # /etc/inittab: init configuration. | |||
| 
 | |||
| ::sysinit:/etc/init.d/rcS | |||
| ::once:/etc/init.d/start_neutrino | |||
| 
 | |||
| ::askfirst:-/bin/sh | |||
| 
 | |||
| ::restart:/sbin/init | |||
| ::ctrlaltdel:/sbin/reboot | |||
| ::shutdown:/etc/init.d/rcK | |||
| @ -1,10 +0,0 @@ | |||
| # /etc/inittab: init configuration. | |||
| 
 | |||
| ::sysinit:/etc/init.d/rcS | |||
| ::once:/etc/init.d/start_neutrino | |||
| 
 | |||
| ::askfirst:-/bin/sh | |||
| 
 | |||
| ::restart:/sbin/init | |||
| ::ctrlaltdel:/sbin/reboot | |||
| ::shutdown:/etc/init.d/rcK | |||
| @ -1,10 +0,0 @@ | |||
| # /etc/inittab: init configuration. | |||
| 
 | |||
| ::sysinit:/etc/init.d/rcS | |||
| ::once:/etc/init.d/start_neutrino | |||
| 
 | |||
| ::askfirst:-/bin/sh | |||
| 
 | |||
| ::restart:/sbin/init | |||
| ::ctrlaltdel:/sbin/reboot | |||
| ::shutdown:/etc/init.d/rcK | |||
| @ -1,10 +0,0 @@ | |||
| # /etc/inittab: init configuration. | |||
| 
 | |||
| ::sysinit:/etc/init.d/rcS | |||
| ::once:/etc/init.d/start_neutrino | |||
| 
 | |||
| ::askfirst:-/bin/sh | |||
| 
 | |||
| ::restart:/sbin/init | |||
| ::ctrlaltdel:/sbin/reboot | |||
| ::shutdown:/etc/init.d/rcK | |||
					Loading…
					
					
				
		Reference in new issue