Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- name=`basename $0`
- pid_file="/var/run/$name.pid"
- stdout_log="/var/log/$name.log"
- stderr_log="/var/log/$name.err"
- dir="/tmp"
- user="root"
- device="wlan0"
- cmd="/sbin/udhcpc -b -i $device -x hostname:$(/bin/hostname) -p $pid_file >/dev/null"
- get_pid() {
- cat "$pid_file"
- }
- is_running() {
- [ -f "$pid_file" ] && kill -0 `get_pid` > /dev/null 2>&1
- # [ -f "$pid_file" ] && ps `get_pid` > /dev/null 2>&1
- }
- case "$1" in
- start)
- if is_running; then
- echo "Already started"
- else
- echo "Starting $name"
- cd "$dir"
- sudo -u "$user" $cmd >> "$stdout_log" 2>> "$stderr_log"
- fi
- ;;
- stop)
- if is_running; then
- echo -n "Stopping $name.."
- kill `get_pid`
- for i in {1..10}
- do
- if ! is_running; then
- break
- fi
- echo -n "."
- sleep 1
- done
- echo
- if is_running; then
- echo "Not stopped; may still be shutting down or shutdown may have failed"
- exit 1
- else
- echo "Stopped"
- if [ -f "$pid_file" ]; then
- rm "$pid_file"
- fi
- fi
- else
- echo "Not running"
- fi
- ;;
- restart)
- $0 stop
- if is_running; then
- echo "Unable to stop, will not attempt to start"
- exit 1
- fi
- $0 start
- ;;
- status)
- if is_running; then
- echo "Running"
- else
- echo "Stopped"
- exit 1
- fi
- ;;
- *)
- echo "Usage: $0 {start|stop|restart|status}"
- exit 1
- ;;
- esac
- exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement