Differences

This shows you the differences between two versions of the page.


redhat [2008/02/08 19:49] (current) – created - external edit 127.0.0.1
Line 1: Line 1:
 +====== RedHat Linux Startup Script ====== 
 +
 +<code>
 +  ---- SCRIPT START file called: popfile
 +  -!/bin/sh
 +  -
 +  - Copyright (C) 2003 John Zoetebier <[email protected]>
 +  -
 +  - This program is free software; you can redistribute it and/or
 +  - modify it under the terms of the GNU General Public License
 +  - 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., 675 Mass Ave, Cambridge, MA 02139, USA.
 +  -
 +  - ==============
 +  - History
 +  - --------------
 +  - Modified by Peter Davie to include RedHat specific features (e.g. using the 'functions' scripts)
 +  - 19 Nov 2003 10:49am MYT
 +  -
 +  - NOTE TO PETER DAVIE: Please clarify whether or not this still works on SuSE after your changes.
 +  -
 +  - popfile
 +  -
 +  - A shell-script wrapper for popfile designed for use in the SysV-init
 +  - system (/etc/init.d).
 +  -
 +  -
 +  - usage: popfile { start | stop | restart | }
 +  -
 +  - See also: LSB, start_daemon (lsb), startproc (suse), install_initd (lsb),
 +  - insserv (suse), /usr/share/doc/initscripts*/sysvinitfiles (redhat)
 +  -
 +
 +    -
 +  - RedHat comment block...
 +  -
 +  - chkconfig: 345 80 20
 +  - description: popfile is a POP3 proxy and mail filter
 +  - pidfile: /var/run/popfile.pid # processname: popfile
 +  -
 +  -
 +
 +    -
 +  - LSB comment block...
 +  -
 +  - The bogus 345 run-levels are a workround for a buggy RedHat chkconfig which
 +  - reads the LSB comment block (incorrectly) as an undocumented 'feature'.
 +  -
 +      - BEGIN INIT INFO
 +  - Provides: popfile
 +  - Required-Start: $network
 +  - Required-Stop: $network
 +  - Default-Start: 345 3 4 5
 +  - Default-Stop: 345 3 4 5
 +  - Description: popfile is a POP3 proxy and mail filter
 +      - END INIT INFO ##
 +
 +  - Source function library.
 +if [ -f /etc/init.d/functions ] ; then
 +<code> /etc/init.d/functions</code>
 +elif [ -f /etc/rc.d/init.d/functions ] ; then
 +<code> /etc/rc.d/init.d/functions</code>
 +else
 +<code> exit 0</code>
 +fi
 +
 +popfile_home=/usr/popfile
 +popfile="${popfile_home}/popfile.pl" # file must be executable, otherwise perl will not start
 +
 +  - Setup variables
 +folder_saved=`pwd`
 +
 +start() {
 +<code> cd ${popfile_home}
 + echo -n "Starting popfile: "
 + ${popfile} >> /dev/null 2>&1 &
 + echo -n "started as background process" && echo success && echo
 + # echo -en "\033[${RES_COL}G[  OK  ]"  -- Commented out PD, see history above.</code>
 +}
 +
 +stop() {
 +<code> echo -n "Stopping popfile ... "
 + pid=`ps -ef | grep perl | grep popfile.pl | gawk '{print $2}'`
 +
 + if [ "${pid}" = "" ] ; then
 +   echo "popfile is not running"
 + else
 +   kill $pid
 + fi
 + #echo -en "\033[${RES_COL}G[  OK  ]"
 + echo success && echo</code>
 +}
 +
 +status() {
 +<code> pid=`ps -ef | grep perl | grep popfile.pl | gawk '{print $2}'`
 +
 + if [ "${pid}" = "" ] ; then
 +   echo "stopped"
 + else
 +   echo "running"
 + fi</code>
 +}
 +
 +case "$1" in
 +start)
 +<code> start
 + ;;</code>
 +stop)
 +<code> stop
 + ;;</code>
 +restart)
 +<code> stop
 + start
 + ;;</code>
 +status)
 +<code> status
 + ;;</code>
 +  *)
 +<code> echo $"Usage: $0 {start|stop|restart|status}"
 + exit 1
 + ;;</code>
 +esac
 +
 +  - Back to original folder
 +cd $folder_saved
 +exit 0
 +
 +  ---- SCRIPT END
 +
 +</code>
  
 
Old revisions

Should you find anything in the documentation that is incomplete, unclear, outdated or just plain wrong, please let us know and leave a note in the Documentation Forum.

Recent changes RSS feed Donate Driven by DokuWiki
The content of this wiki is protected by the GNU Fee Documentation License