#!/bin/bash # Begin services/dhcpcd # Origianlly dased upon lfs-bootscripts-1.12 $NETWORK_DEVICES/if{down,up} # Rewritten by Nathan Coulson # Adapted for dhcpcd by DJ Lucas # Update for LFS 7.0 by Bruce Dubbs # Call with: IFCONFIG= /lib/services/dhcpcd #$LastChangedBy: bdubbs $ #$Date: 2012-04-09 19:48:51 +0000 (Mon, 09 Apr 2012) $ . /lib/lsb/init-functions . $IFCONFIG pidfile="/var/run/dhcpcd-$1.pid" case "$2" in up) # 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 "Starting dhcpcd on the $1 interface..." # Test to see if there is a stale pid file if [ -f "$pidfile" ]; then ps `cat "$pidfile"` | grep dhcpcd > /dev/null if [ $? != 0 ]; then rm -f /var/run/dhcpcd-$1.pid > /dev/null else log_warning_msg "dhcpcd is already running!" exit 2 fi fi /sbin/dhcpcd $1 $DHCP_START evaluate_retval ;; down) log_info_msg "Stopping dhcpcd on the $1 interface..." if [ -z "$DHCP_STOP" ]; then killproc -p "${pidfile}" /sbin/dhcpcd else /sbin/dhcpcd $1 $DHCP_STOP &> /dev/null if [ "$?" -eq 1 ]; then log_warning_msg "dhcpcd not running!" exit 2 fi fi evaluate_retval ;; *) echo "Usage: $0 [interface] {up|down}" exit 1 ;; esac # End services/dhcpcd