Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- # For RedHat and cousins:
- # chkconfig: - 99 01
- # description: Encrypted/authenticated DNS proxy
- # processname: /opt/dnscrypt-proxy/dnscrypt-proxy
- ### BEGIN INIT INFO
- # Provides: /opt/dnscrypt-proxy/dnscrypt-proxy
- # Required-Start:
- # Required-Stop:
- # Default-Start: 2 3 4 5
- # Default-Stop: 0 1 6
- # Short-Description: DNSCrypt client proxy
- # Description: Encrypted/authenticated DNS proxy
- ### END INIT INFO
- cmd="/opt/dnscrypt-proxy/dnscrypt-proxy"
- name=$(basename $(readlink -f $0))
- pid_file="/var/run/$name.pid"
- stdout_log="/var/log/$name.log"
- stderr_log="/var/log/$name.err"
- [ -e /etc/sysconfig/$name ] && . /etc/sysconfig/$name
- get_pid() {
- cat "$pid_file"
- }
- is_running() {
- [ -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"
- $cmd >> "$stdout_log" 2>> "$stderr_log" &
- echo $! > "$pid_file"
- if ! is_running; then
- echo "Unable to start, see $stdout_log and $stderr_log"
- exit 1
- fi
- fi
- ;;
- stop)
- if is_running; then
- echo -n "Stopping $name.."
- kill $(get_pid)
- for i in $(seq 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