#!/bin/sh # # vsftpd vsftp server # # chkconfig: 345 85 15 # description: VSFTPD is a Very Secure FTP Daemon # # Source function library . /etc/rc.d/init.d/functions # Get network config . /etc/sysconfig/network # Check that networking is up. if is_yes "${NETWORKING}"; then if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then msg_network_down vsftpd exit 1 fi else exit 0 fi start() { # Check if the service is already running? if [ ! -f /var/lock/subsys/vsftpd ]; then # Check if we have 'Listen=yes' in config if ! egrep -q '^(listen|listen_ipv6)=([Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|1)' /etc/vsftpd.conf; then echo "error: Missing 'listen=yes' or 'listen_ipv6=yes' directive in /etc/vsftpd.conf!" exit 1 fi; # try to load capability module _modprobe capability msg_starting vsftpd daemon --fork /usr/sbin/vsftpd RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/vsftpd else msg_already_running vsftpd fi } stop() { # Stop daemons. if [ -f /var/lock/subsys/vsftpd ]; then msg_stopping vsftpd killproc vsftpd rm -f /var/lock/subsys/vsftpd > /dev/null 2>&1 else msg_not_running vsftpd fi } RETVAL=0 # See how we were called. case "$1" in start) start ;; stop) stop ;; restart|force-reload) stop start ;; *) msg_usage "$0 {start|stop|restart|force-reload}" exit 3 ;; esac exit $RETVAL