diff options
author | Bruce Dubbs <bdubbs@linuxfromscratch.org> | 2012-01-27 20:39:49 +0000 |
---|---|---|
committer | Bruce Dubbs <bdubbs@linuxfromscratch.org> | 2012-01-27 20:39:49 +0000 |
commit | bd899fb2652b66bb206c14c77716064490cf30c1 (patch) | |
tree | 2f612e4ca838795dac850143662aea3a44703f5f /bootscripts | |
parent | 661b74414696d154bdc3f90ed4dda3615d3bdb7f (diff) |
Update scripts to support BLFS bridge devices.
Cosmetic cleanups
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9716 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'bootscripts')
-rw-r--r-- | bootscripts/lfs/lib/services/init-functions | 14 | ||||
-rwxr-xr-x | bootscripts/lfs/lib/services/ipv4-static | 13 | ||||
-rwxr-xr-x | bootscripts/lfs/sbin/ifdown | 32 | ||||
-rwxr-xr-x | bootscripts/lfs/sbin/ifup | 54 |
4 files changed, 66 insertions, 47 deletions
diff --git a/bootscripts/lfs/lib/services/init-functions b/bootscripts/lfs/lib/services/init-functions index 9b200b414..a830a3ae6 100644 --- a/bootscripts/lfs/lib/services/init-functions +++ b/bootscripts/lfs/lib/services/init-functions @@ -67,6 +67,10 @@ SUCCESS_PREFIX="${SUCCESS} * ${NORMAL}" FAILURE_PREFIX="${FAILURE}*****${NORMAL}" WARNING_PREFIX="${WARNING} *** ${NORMAL}" +SUCCESS_SUFFIX="${BRACKET}[${SUCCESS} OK ${BRACKET}]${NORMAL}" +FAILURE_SUFFIX="${BRACKET}[${FAILURE} FAIL ${BRACKET}]${NORMAL}" +WARNING_SUFFIX="${BRACKET}[${WARNING} WARN ${BRACKET}]${NORMAL}" + BOOTLOG=/run/var/bootlog KILLDELAY=3 @@ -567,7 +571,7 @@ timespec() log_success_msg() { echo -n -e "${BMPREFIX}${@}" - echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${BRACKET}[${SUCCESS} OK ${BRACKET}]${NORMAL}" + echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${SUCCESS_SUFFIX}" # Strip non-printable characters from log file local logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'` @@ -581,7 +585,7 @@ log_success_msg() log_success_msg2() { echo -n -e "${BMPREFIX}${@}" - echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${BRACKET}[${SUCCESS} OK ${BRACKET}]${NORMAL}" + echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${SUCCESS_SUFFIX}" echo " OK" >> ${BOOTLOG} @@ -602,7 +606,7 @@ log_success_msg2() log_failure_msg() { echo -n -e "${BMPREFIX}${@}" - echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${BRACKET}[${FAILURE} FAIL ${BRACKET}]${NORMAL}" + echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${FAILURE_SUFFIX}" # Strip non-printable characters from log file @@ -616,7 +620,7 @@ log_failure_msg() log_failure_msg2() { echo -n -e "${BMPREFIX}${@}" - echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${BRACKET}[${FAILURE} FAIL ${BRACKET}]${NORMAL}" + echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${FAILURE_SUFFIX}" echo "FAIL" >> ${BOOTLOG} @@ -635,7 +639,7 @@ log_failure_msg2() log_warning_msg() { echo -n -e "${BMPREFIX}${@}" - echo -e "${CURS_ZERO}${WARNING_PREFIX}${SET_COL}${BRACKET}[${WARNING} WARN ${BRACKET}]${NORMAL}" + echo -e "${CURS_ZERO}${WARNING_PREFIX}${SET_COL}${WARNING_SUFFIX}" # Strip non-printable characters from log file local logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'` diff --git a/bootscripts/lfs/lib/services/ipv4-static b/bootscripts/lfs/lib/services/ipv4-static index 5a5693d09..16c5e473e 100755 --- a/bootscripts/lfs/lib/services/ipv4-static +++ b/bootscripts/lfs/lib/services/ipv4-static @@ -42,8 +42,13 @@ fi case "${2}" in up) - if [ "$(ip addr show ${1} | grep ${IP})" == "" ]; then - log_info_msg2 "\n" # Terminate the previous message + if [ "$(ip addr show ${1} 2>/dev/null | grep ${IP})" == "" ]; then + + # Cosmetic output not needed for multiple services + if ! $(echo ${SERVICE} | grep -q " "); then + log_info_msg2 "\n" # Terminate the previous message + fi + log_info_msg "Adding IPv4 address ${IP} to the ${1} interface..." ip addr add ${args} dev ${1} evaluate_retval @@ -64,7 +69,7 @@ case "${2}" in ;; down) - if [ "$(ip addr show ${1} | grep ${IP})" != "" ]; then + if [ "$(ip addr show ${1} 2>/dev/null | grep ${IP})" != "" ]; then log_info_msg "Removing IPv4 address ${IP} from the ${1} interface..." ip addr del ${args} dev ${1} evaluate_retval @@ -72,7 +77,7 @@ case "${2}" in if [ -n "${GATEWAY}" ]; then # Only remove the gateway if ther are no remaining ipv4 addresses - if [ "$(ip addr show ${1} | grep 'inet ')" != "" ]; then + if [ "$(ip addr show ${1} 2>/dev/null | grep 'inet ')" != "" ]; then log_info_msg "Removing default gateway..." ip route del default evaluate_retval diff --git a/bootscripts/lfs/sbin/ifdown b/bootscripts/lfs/sbin/ifdown index 0ec9867f3..8feba6729 100755 --- a/bootscripts/lfs/sbin/ifdown +++ b/bootscripts/lfs/sbin/ifdown @@ -67,20 +67,26 @@ if [ "$IFACE" = "" ]; then exit 1 fi -# This will run the service script, if SERVICE is set -if [ -n "${SERVICE}" -a -x "/lib/services/${SERVICE}" ]; then - if ip link show ${IFACE} > /dev/null 2>&1; then - IFCONFIG=${file} /lib/services/${SERVICE} ${IFACE} down - else - log_warning_msg "Interface ${1} doesn't exist." - echo_warning - fi +# Reverse the order +SERVICES= +for S in ${SERVICE}; do SERVICES="${SERVICES} ${S}"; done + +# This will run the service scripts +if ip link show ${IFACE} > /dev/null 2>&1; then + for S in ${SERVICES}; do + + if [ -n "${S}" -a -x "/lib/services/${S}" ]; then + IFCONFIG=${file} /lib/services/${S} ${IFACE} down + else + MSG="Unable to process ${file}. Either " + MSG="${MSG}the SERVICE variable was not set " + MSG="${MSG}or the specified service cannot be executed." + log_failure_msg "$MSG" + exit 1 + fi + done else - MSG="Unable to process ${file}. Either " - MSG="${MSG}the SERVICE variable was not set" - MSG="${MSG}or the specified service cannot be executed." - log_failure_msg "$MSG" - exit 1 + log_warning_msg "Interface ${1} doesn't exist." fi link_status=`ip link show ${IFACE} 2>/dev/null` diff --git a/bootscripts/lfs/sbin/ifup b/bootscripts/lfs/sbin/ifup index 42afadfce..2e3d88e49 100755 --- a/bootscripts/lfs/sbin/ifup +++ b/bootscripts/lfs/sbin/ifup @@ -55,7 +55,7 @@ file=/etc/sysconfig/ifconfig.${1} . /lib/lsb/init-functions -log_info_msg "Bringing up the ${1} interface: " +log_info_msg "Bringing up the ${1} interface... " if [ ! -r "${file}" ]; then log_warning_msg "\n${file} is missing or cannot be accessed." @@ -76,35 +76,39 @@ if [ "${IN_BOOT}" = "1" -a "${ONBOOT}" != "yes" ]; then exit 0 fi -if [ -n "${SERVICE}" -a -x "/lib/services/${SERVICE}" ]; then - if [ -z "${CHECK_LINK}" -o \ - "${CHECK_LINK}" = "y" -o \ - "${CHECK_LINK}" = "yes" -o \ - "${CHECK_LINK}" = "1" ]; then +for S in ${SERVICES}; do + if [ ! -n "${S}" -o ! -x "/lib/services/${S}" ]; then + MSG="\nUnable to process ${file}. Either " + MSG="${MSG}the SERVICE variable was not set " + MSG="${MSG}or the specified service cannot be executed." + log_failure_msg "$MSG" + exit 1 + fi +done - # Bring up the interface - if ip link show ${IFACE} > /dev/null 2>&1; then - link_status=`ip link show ${IFACE}` +if [ -z "${CHECK_LINK}" -o \ + "${CHECK_LINK}" = "y" -o \ + "${CHECK_LINK}" = "yes" -o \ + "${CHECK_LINK}" = "1" ]; then - if [ -n "${link_status}" ]; then - if ! echo "${link_status}" | grep -q UP; then - ip link set ${IFACE} up - fi - fi + # Bring up the interface + if ip link show ${IFACE} > /dev/null 2>&1; then + link_status=`ip link show ${IFACE}` - else - log_warning_msg "\nInterface ${IFACE} doesn't exist." + if [ -n "${link_status}" ]; then + if ! echo "${link_status}" | grep -q UP; then + ip link set ${IFACE} up + fi fi - fi - - IFCONFIG=${file} /lib/services/${SERVICE} ${IFACE} up -else - MSG="\nUnable to process ${file}. Either " - MSG="${MSG}the SERVICE variable was not set " - MSG="${MSG}or the specified service cannot be executed." - log_failure_msg "$MSG" - exit 1 + else + log_warning_msg "\nInterface ${IFACE} doesn't exist." + exit 0 + fi fi +for S in ${SERVICE}; do + IFCONFIG=${file} /lib/services/${S} ${IFACE} up +done + # End /sbin/ifup |