diff options
author | DJ Lucas <dj@linuxfromscratch.org> | 2011-05-21 17:22:20 +0000 |
---|---|---|
committer | DJ Lucas <dj@linuxfromscratch.org> | 2011-05-21 17:22:20 +0000 |
commit | d93bdd1e252180cc619b8eba3d75cfdf2b31edb4 (patch) | |
tree | 3241626f9337330de9ab9d8aa1c19a9f50604afe /lsb-bootscripts/etc | |
parent | c2db0877b0203a21182e5aaba75c98e6291d2ea0 (diff) |
Multiple changes - cleanup and udev trigger - see changelog
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9544 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'lsb-bootscripts/etc')
-rw-r--r-- | lsb-bootscripts/etc/default/rc | 57 | ||||
-rw-r--r-- | lsb-bootscripts/etc/default/rc.site | 58 | ||||
-rw-r--r-- | lsb-bootscripts/etc/init.d/lfs-functions | 214 | ||||
-rw-r--r-- | lsb-bootscripts/etc/init.d/mountvirtfs | 6 | ||||
-rw-r--r-- | lsb-bootscripts/etc/init.d/udev | 3 |
5 files changed, 62 insertions, 276 deletions
diff --git a/lsb-bootscripts/etc/default/rc b/lsb-bootscripts/etc/default/rc index 96bd476d9..c530f6535 100644 --- a/lsb-bootscripts/etc/default/rc +++ b/lsb-bootscripts/etc/default/rc @@ -9,6 +9,12 @@ # Source site specific rc configuration . /etc/default/rc.site +# Set base directory information +RC_BASE="/etc" + +# Location of network device scripts and config files +NETWORK_DEVICES="/etc/network" + # This sets default terminal options. # stty sane - this has been removed as nobody recalls # the reason for it in the first place - if no problems arize, @@ -38,7 +44,56 @@ SET_COL="\\033[${COL}G" # at the $COL char SET_WCOL="\\033[${WCOL}G" # at the $WCOL char CURS_UP="\\033[1A\\033[0G" # Up one line, at the 0'th char +# Distro Information +DISTRO="Linux From Scratch" # The distro name +DISTRO_CONTACT="lfs-dev@linuxfromscratch.org" # Bug report address +DISTRO_MINI="lfs" # Short name used in filenames for distro config + +# Define custom colors used in messages printed to the screen +BRACKET="\\033[1;34m" # Blue +FAILURE="\\033[1;31m" # Red +INFO="\\033[1;36m" # Cyan +NORMAL="\\033[0;39m" # Grey +SUCCESS="\\033[1;32m" # Green +WARNING="\\033[1;33m" # Yellow + +# Prefix boot messages for easier reading on framebuffer consoles +PREFIX_SUCCESS=" ${SUCCESS}*${NORMAL} " +PREFIX_WARNING="${WARNING}**${NORMAL} " +PREFIX_FAILURE="${FAILURE}***${NORMAL}" + # Export the environment variables so they are inherited by the scripts -export PATH SET_COL SET_WCOL CURS_UP BOOTLOG_ENAB +export RC_BASE NETWORK_DEVICES PATH SET_COL SET_WCOL CURS_UP +export DISTRO DISTRO_CONTACT DISTRO_MINI +export BRACKET FAILURE INFO NORMAL SUCCESS WARNING +export PREFIX_SUCCESS PREFIX_WARNING PREFIX_FAILURE + +# Interactive startup +dlen="29" # The total length of the distro welcome string +ilen="38" # The total length of the interactive message +welcome_message="Welcome to ${INFO}${DISTRO}${NORMAL}" +i_message="Press '${FAILURE}I${NORMAL}' to enter interactive startup" + +# Error message displayed when a script's exit value is not zero +print_error_msg() +{ + # ${link} and ${error_value} are defined by the rc script + echo -e "${FAILURE}FAILURE: You should not be reading this error message." + echo -e "" + echo -e -n "${FAILURE}It means that an unforseen error took place in" + echo -e -n "${INFO} ${link}" + echo -e "${FAILURE}," + echo -e "${FAILURE}which exited with a return value of ${error_value}." + echo -e "" + echo -e -n "${FAILURE}If you are able to track this error down to a bug" + echo -e "${FAILURE}in one of the files" + echo -e -n "provided by ${INFO}${DISTRO}${FAILURE}, " + echo -e -n "${FAILURE}please be so kind to inform us at " + echo -e "${INFO}${DISTRO_CONTACT}${FAILURE}.${NORMAL}" + echo -e "" + echo -e "${INFO}Press Enter to continue..." + echo -e "${NORMAL}" + $FAILURE_ACTION +} # End /etc/default/rc diff --git a/lsb-bootscripts/etc/default/rc.site b/lsb-bootscripts/etc/default/rc.site index f617c16cb..34f25cc79 100644 --- a/lsb-bootscripts/etc/default/rc.site +++ b/lsb-bootscripts/etc/default/rc.site @@ -1,10 +1,3 @@ -# Set base directory information -RC_BASE="/etc" -RC_FUNCTIONS="${RC_BASE}/init.d/lfs-functions" - -# Location of network device scripts and config files -NETWORK_DEVICES="/etc/network" - # Bootlogging (requires a tempfs mount) BOOTLOG_ENAB="yes" @@ -19,59 +12,10 @@ CLOCKPARAMS= # an error is encountered that interupts the boot/shutdown proceess FAILURE_ACTION="read ENTER" -# Distro Information -DISTRO="Linux From Scratch" # The distro name -DISTRO_CONTACT="lfs-dev@linuxfromscratch.org" # Bug report address -DISTRO_MINI="lfs" # Short name used in filenames for distro config - -# Define custom colors used in messages printed to the screen -BRACKET="\\033[1;34m" # Blue -FAILURE="\\033[1;31m" # Red -INFO="\\033[1;36m" # Cyan -NORMAL="\\033[0;39m" # Grey -SUCCESS="\\033[1;32m" # Green -WARNING="\\033[1;33m" # Yellow - -# Prefix boot messages for easier reading on framebuffer consoles -PREFIX_SUCCESS=" ${SUCCESS}*${NORMAL} " -PREFIX_WARNING="${WARNING}**${NORMAL} " -PREFIX_FAILURE="${FAILURE}***${NORMAL}" - # Export varialbles so that they are inherited by the initscripts -export RC_BASE RC_FUNCTIONS NETWORK_DEVICES BOOTLOG_ENAB -export HOSTNAME UTC CLOCKPARAMS FAILURE_ACTION -export DISTRO DISTRO_CONTACT DISTRO_MINI -export BRACKET FAILURE INFO NORMAL SUCCESS WARNING -export PREFIX_SUCCESS PREFIX_WARNING PREFIX_FAILURE +export BOOTLOG_ENAB HOSTNAME UTC CLOCKPARAMS FAILURE_ACTION # Interactive startup iprompt="yes" # Wether to display the interactive boot promp itime="2" # The ammount of time (in seconds) to display the prompt -dlen="29" # The total length of the distro welcome string -ilen="38" # The total length of the interactive message -welcome_message="Welcome to ${INFO}${DISTRO}${NORMAL}" -i_message="Press '${FAILURE}I${NORMAL}' to enter interactive startup" - -# Error message displayed when a script's exit value is not zero -print_error_msg() -{ - # ${link} and ${error_value} are defined by the rc script - echo -e "${FAILURE}FAILURE: You should not be reading this error message." - echo -e "" - echo -e -n "${FAILURE}It means that an unforseen error took place in" - echo -e -n "${INFO} ${link}" - echo -e "${FAILURE}," - echo -e "${FAILURE}which exited with a return value of ${error_value}." - echo -e "" - echo -e -n "${FAILURE}If you are able to track this error down to a bug" - echo -e "${FAILURE}in one of the files" - echo -e -n "provided by ${INFO}${DISTRO}${FAILURE}, " - echo -e -n "${FAILURE}please be so kind to inform us at " - echo -e "${INFO}${DISTRO_CONTACT}${FAILURE}.${NORMAL}" - echo -e "" - echo -e "${INFO}Press Enter to continue..." - echo -e "${NORMAL}" - $FAILURE_ACTION -} - diff --git a/lsb-bootscripts/etc/init.d/lfs-functions b/lsb-bootscripts/etc/init.d/lfs-functions deleted file mode 100644 index b0fef4c29..000000000 --- a/lsb-bootscripts/etc/init.d/lfs-functions +++ /dev/null @@ -1,214 +0,0 @@ -# Begin /etc/init.d/lfs-functions -# Provides LFS specific functions for LSB style bootscripts - -################################# chkstat() ################################### -# chk_stat checks the status of a script by checking for both a binary file # -# to execute, and if set, a config file that may be needed for the program # -# to run successfully. The calling script will exit with a return value of 5 # -# if the binary does not exist, and a value of 6 if the needed config file is # -# unavailable as per LSB requirements. This function accepts zero, one, or # -# two string arguments. If arguments are passed, the first must be a bin # -# file. If a second argument is passed, it is interpreted as the config # -# file. Optionally, zero arguments can be passed if BIN_FILE, and optinally # -# CONFIG_FILE are set in the calling script. # -############################################################################### -chk_stat() -{ - if [ "${#}" -gt "0" -a "${#}" -lt "3" ]; then - BIN_FILE="${1}" - if [ -z "${2}" ]; then - CONFIG_FILE="" - else - CONFIG_FILE="${2}" - fi - elif [ -z "${BIN_FILE}" ]; then - echo "Usage: 'chk_stat BIN_FILE CONFIG_FILE'" - exit 1 # Generic Error - fi - - if [ ! -e "${BIN_FILE}" ]; then - log_failure_msg "${BIN_FILE} not installed" && - exit 5 - fi - - if [ ! -z "${CONFIG_FILE}" ]; then - if [ ! -e "${CONFIG_FILE}" ]; then - log_failure_msg "${CONFIG_FILE} does not exist" && - exit 6 - fi - fi -} - -################################ loadproc() ################################### -# loadproc is just a wraper to start_daemon for simple scripts, which will # -# require no arguments if $BIN_FILE is set. # -############################################################################### -loadproc() -{ - start_daemon "${BIN_FILE}" "${@}" -} - -################################ endproc() #################################### -# endproc, like loadproc, is just a wraper to killproc for simplicity and is # -# dependent on $BIN_FILE being set. # -############################################################################### -endproc() -{ - killproc "${BIN_FILE}" "${@}" -} - -############################### statusproc() ################################## -# statusproc checks the status of a particular binary and displays the # -# appropriate message (running or not running) and exits on the return value # -# of pidofproc. This function accepts two string arguments or zero arguments # -# if BIN_FILE and MESSAGE are set, else it requires the bin file as the first # -# argument, and the message as the second. Both must be enclosed in quotes. # -############################################################################### -statusproc() -{ - if [ "${#}" -gt "0" -a "${#}" -lt "3" ]; then - BIN_FILE="${1}" - MESSAGE="${2}" - elif [ -z "${BIN_FILE}" -o -z "${MESSAGE}" ]; then - echo "Usage: 'statusproc BIN_FILE MESSAGE'" - exit 1 # Generic Error - fi - - pidlist=`pidofproc "${BIN_FILE}"` - STATUS=$? - echo "Checking ${MESSAGE} status:" - if [ "${STATUS}" -eq "0" ]; then - log_success_msg "Running with PID(s) ${pidlist}" - else - log_warning_msg "Not running!" - fi - - return "${STATUS}" -} - -############################### reloadproc() ################################## -# reloadproc sends a HUP signal to the running program (relaod configuration) # -# It optionally, using the -force switch, checks the status of a particular # -# program and starts it if it is not already running. This function accepts # -# one optional switch (must be the first argument), and either two, or zero # -# string arguments. If BIN_FILE and MESSAGE are set in the script's # -# environment, it will use those values, else it requires the bin file as # -# the first argument (following -force if used), and the message as the # -# second. Both must be enclosed in quotes. If the force option is used, it # -# follows the LSB definition of 'force-reload' - the program is started if # -# not already running. # -############################################################################### -reloadproc() -{ - local force="0" - if [ "${#}" -gt "0" -a "${1}" = "-force" ]; then - force="1" - shift 1 - fi - - if [ "${#}" -gt "0" -a "${#}" -lt "3" ]; then - BIN_FILE="${1}" - MESSAGE="${2}" - elif [ -z "${BIN_FILE}" -o -z "${MESSAGE}" ]; then - echo "Usage: 'reloadproc BIN_FILE MESSAGE'" - exit 1 # Generic Error - fi - - - -} - -############################## evaluate_retval() ############################### -# evaluate_retval requires that you pass exactly one evaluation parameter of # -# (start, stop, other) based on the previous action that is being evaluated. # -# This function is intended for use with start_daemon and killproc to # -# interpret the LSB exit codes properly, othewise the checks only for success # -# or failure. # -################################################################################ -evaluate_retval() -{ - local error_value="${?}" - - # Handle LSB defined return values - case "${1}" in - - start) - case "${error_value}" in - 0) - log_success_msg "Starting ${MESSAGE} " - return "${error_value}" - ;; - 2) - log_failure_msg "Starting ${MESSAGE} Error: Invalid argument!" - return "${error_value}" - ;; - 5) - log_failure_msg "Starting ${MESSAGE} Error: Not available!" - return "${error_value}" - ;; - *) - log_failure_msg "Starting ${MESSAGE} Error: General failure!" - return "${error_value}" - ;; - esac - ;; - - stop) - case "${error_value}" in - 0) - log_success_msg "Stopping ${MESSAGE} " - return "${error_value}" - ;; - 2) - log_failure_msg "Stopping ${MESSAGE} Error: Invalid argument!" - return "${error_value}" - ;; - 5) - log_failure_msg "Stopping ${MESSAGE} Error: Not available!" - return "${error_value}" - ;; - 7) - log_warning_msg "Stopping ${MESSAGE} Warning: Not running!" - return "${error_value}" - ;; - *) - log_failure_msg "Stopping ${MESSAGE} Error: General failure!" - return "${error_value}" - ;; - esac - ;; - - force-reload) - message="Forcefully reloading " - ;; - - reload) - message="Reloading " - ;; - - restart) - message="Restarting " - ;; - - try-restart) - message="Trying restart " - ;; - - standard) - # $message or $MESSAGE must be set, but not both in order - # to use the 'standard' target. - ;; - esac - - # Print messages for the generic force-reload, reload, restart, - # and try-restart targets - if [ "${error_value}" -eq "0" ] - then - log_success_msg "${message}${MESSAGE} " - return "${error_value}" - else - log_failure_msg "${message}${MESSAGE} " - return "${error_value}" - fi -} - diff --git a/lsb-bootscripts/etc/init.d/mountvirtfs b/lsb-bootscripts/etc/init.d/mountvirtfs index 994976934..382404cc1 100644 --- a/lsb-bootscripts/etc/init.d/mountvirtfs +++ b/lsb-bootscripts/etc/init.d/mountvirtfs @@ -9,8 +9,8 @@ # Should-Stop: # Default-Start: S # Default-Stop: -# Short-Description: Mounts /sys, /proc, and /run virtual (virtel) filesystems. -# Description: Mounts /sys, /proc, and run virtual (virtel) filesystems. +# Short-Description: Mounts /sys, /proc, and /run virtual (kernel) filesystems. +# Description: Mounts /sys, /proc, and run virtual (kernel) filesystems. # X-LFS-Provided-By: LFS ### END INIT INFO @@ -18,7 +18,7 @@ case "${1}" in start) - message="Mounting virtel-based file systems:" + message="Mounting virtual file systems:" if ! mountpoint /proc > /dev/null; then message="${message}${INFO} /proc${NORMAL}" diff --git a/lsb-bootscripts/etc/init.d/udev b/lsb-bootscripts/etc/init.d/udev index fd17b5e94..9f04ecb9e 100644 --- a/lsb-bootscripts/etc/init.d/udev +++ b/lsb-bootscripts/etc/init.d/udev @@ -73,7 +73,8 @@ case "${1}" in # Now traverse /sys in order to "coldplug" devices that have # already been discovered - /sbin/udevadm trigger --action=add + /sbin/udevadm trigger --action=add --type=subsystems + /sbin/udevadm trigger --action=add --type=devices # Now wait for udevd to process the uevents we triggered /sbin/udevadm settle |