123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211 |
- #!/bin/sh
- #
- # "$Id: newsd.sh.in 150 2009-04-10 07:52:29Z mike $"
- #
- # Startup/shutdown script for newsd.
- #
- # Copyright 2003-2004 Michael Sweet
- # Copyright 2002 Greg Ercolano
- #
- # This program is free software; you can redistribute it and/or modify
- # it under the terms of the GNU General Public Licensse as published by
- # the Free Software Foundation; either version 2 of the License, or
- # (at your option) any later version.
- #
- # This program is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- #
- #### OS-Dependent Information
- #
- # Linux chkconfig stuff:
- #
- # chkconfig: 235 99 00
- # description: Startup/shutdown script for newsd.
- #
- #
- # NetBSD 1.5+ rcorder script lines. The format of the following two
- # lines is very strict -- please don't add additional spaces!
- #
- # PROVIDE: newsd
- # REQUIRE: DAEMON
- #
- #### OS-Dependent Configuration
- case "`uname`" in
- IRIX*)
- IS_ON=/sbin/chkconfig
- if $IS_ON verbose; then
- ECHO=echo
- else
- ECHO=:
- fi
- ECHO_OK=:
- ECHO_ERROR=:
- ;;
- *BSD*)
- IS_ON=:
- ECHO=echo
- ECHO_OK=:
- ECHO_ERROR=:
- ;;
- Darwin*)
- . /etc/rc.common
- if test "${NEWSD:=-YES-}" = "-NO-"; then
- exit 0
- fi
- IS_ON=:
- ECHO=ConsoleMessage
- ECHO_OK=:
- ECHO_ERROR=:
- ;;
- Linux*)
- IS_ON=/bin/true
- if test -f /etc/init.d/functions; then
- . /etc/init.d/functions
- ECHO=echo
- ECHO_OK="echo_success"
- ECHO_ERROR="echo_failure"
- else
- ECHO=echo
- ECHO_OK=:
- ECHO_ERROR=:
- fi
- ;;
- *)
- IS_ON=/bin/true
- ECHO=echo
- ECHO_OK=:
- ECHO_ERROR=:
- ;;
- esac
- #### OS-Independent Stuff
- #
- # Set the timezone, if possible... This allows the
- # server and all child processes to know the local
- # timezone when reporting dates and times to the user.
- # If no timezone information is found, then Greenwich
- # Mean Time (GMT) will probably be used.
- #
- for file in /etc/TIMEZONE /etc/rc.config /etc/sysconfig/clock; do
- if test -f $file; then
- . $file
- fi
- done
- if test "x$ZONE" != x; then
- TZ="$ZONE"
- fi
- if test "x$TIMEZONE" != x; then
- TZ="$TIMEZONE"
- fi
- if test "x$TZ" != x; then
- export TZ
- fi
- #
- # See if the server (newsd) is running...
- #
- case "`uname`" in
- HP-UX* | AIX* | SINIX*)
- pid=`ps -e | awk '{if (match($4, ".*/newsd$") || $4 == "newsd") print $1}'`
- ;;
- IRIX* | SunOS*)
- pid=`ps -e | nawk '{if (match($4, ".*/newsd$") || $4 == "newsd") print $1}'`
- ;;
- UnixWare*)
- pid=`ps -e | awk '{if (match($6, ".*/newsd$") || $6 == "newsd") print $1}'`
- . /etc/TIMEZONE
- ;;
- OSF1*)
- pid=`ps -e | awk '{if (match($5, ".*/newsd$") || $5 == "newsd") print $1}'`
- ;;
- Linux* | *BSD* | Darwin*)
- pid=`ps ax | awk '{if (match($5, ".*/newsd$") || $5 == "newsd") print $1}'`
- ;;
- *)
- pid=""
- ;;
- esac
- #
- # Start or stop the server based upon the first argument to the script.
- #
- case $1 in
- start | restart | reload)
- if $IS_ON newsd; then
- if test "$pid" != ""; then
- kill $pid
- sleep 1
- fi
- prefix=@prefix@
- exec_prefix=@exec_prefix@
- @sbindir@/newsd
- if test $? != 0; then
- $ECHO_FAIL
- $ECHO "newsd: unable to $1 NNTP server."
- exit 1
- fi
- $ECHO_OK
- $ECHO "newsd: ${1}ed NNTP server."
- fi
- ;;
- stop)
- if test "$pid" != ""; then
- kill $pid
- $ECHO_OK
- $ECHO "newsd: stopped NNTP server."
- fi
- ;;
- status)
- if test "$pid" != ""; then
- echo "newsd: NNTP server is running."
- else
- echo "newsd: NNTP server is not running."
- fi
- ;;
- *)
- echo "Usage: newsd {reload|restart|start|status|stop}"
- exit 1
- ;;
- esac
- #
- # Exit with no errors.
- #
- exit 0
- #
- # End of "$Id: newsd.sh.in 150 2009-04-10 07:52:29Z mike $".
- #
|