]> git.pld-linux.org Git - packages/pure-ftpd.git/blame_incremental - pure-ftpd.init
- release 11
[packages/pure-ftpd.git] / pure-ftpd.init
... / ...
CommitLineData
1#!/bin/sh
2#
3# pureftpd PureFTPD server
4#
5# chkconfig: 345 85 15
6# description: PureFTPD is fast, production-quality, standard-conformant FTP server
7#
8
9# Source function library
10. /etc/rc.d/init.d/functions
11
12# Get network config
13. /etc/sysconfig/network
14
15# Get service config
16[ -f /etc/sysconfig/pure-ftpd ] && . /etc/sysconfig/pure-ftpd
17
18# Check for available parsers
19if [ -x /usr/sbin/pure-config ] ; then
20 CFG=/usr/sbin/pure-config
21elif [ -x /usr/sbin/pure-config.pl -a -x /usr/bin/perl ] ; then
22 CFG=/usr/sbin/pure-config.pl
23elif [ -x /usr/sbin/pure-config.py -a -x /usr/bin/python ] ; then
24 CFG=/usr/sbin/pure-config.py
25else
26 echo 'Error: pure-config{,.pl,.py} not found. Giving up.'
27 exit 1
28fi
29
30# Check that networking is up.
31if is_yes "${NETWORKING}"; then
32 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
33 msg_network_down pure-ftpd
34 exit 1
35 fi
36else
37 exit 0
38fi
39
40RETVAL=0
41# See how we were called.
42case "$1" in
43 start)
44 # Check if the service is already running?
45 if [ ! -f /var/lock/subsys/pure-ftpd ]; then
46 msg_starting pure-ftpd
47 rm -f /var/run/pure-ftpd/client*
48 if [ x"$CFG" = "x/usr/sbin/pure-config" ] ; then
49 daemon /usr/sbin/pure-ftpd \
50 $(/usr/sbin/pure-config -f /etc/ftpd/pureftpd.conf) \
51 --daemonize
52 RETVAL=$?
53 else
54 daemon $CFG /etc/ftpd/pureftpd.conf --daemonize
55 RETVAL=$?
56 fi
57 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/pure-ftpd
58 else
59 msg_already_running pure-ftpd
60 fi
61 ;;
62 stop)
63 # Stop daemons.
64 if [ -f /var/lock/subsys/pure-ftpd ]; then
65 msg_stopping pure-ftpd
66 killproc pure-ftpd
67 rm -f /var/lock/subsys/pure-ftpd > /dev/null 2>&1
68 else
69 msg_not_running pure-ftpd
70 fi
71 ;;
72 status)
73 status pure-ftpd
74 RETVAL=$?
75 if [ $RETVAL -eq 0 ]; then
76 pure-ftpwho
77 fi
78 ;;
79 restart|force-reload)
80 $0 stop
81 $0 start
82 exit $?
83 ;;
84 *)
85 msg_usage "$0 {start|stop|restart|force-reload|status}"
86 exit 3
87 ;;
88esac
89
90exit $RETVAL
This page took 0.055795 seconds and 4 git commands to generate.