#! /bin/sh # Copyright (c) 1995-2005 SUSE Linux GmbH, Nuernberg, Germany. # All rights reserved. # # Author: Mads Martin Joergensen # # /etc/init.d/vsftpd # and its symbolic link # /usr/sbin/rcvsftpd # # 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. # ### BEGIN INIT INFO # Provides: ftpd # Required-Start: $local_fs $remote_fs $syslog network-remotefs # Required-Stop: $local_fs $remote_fs $syslog network-remotefs # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Description: very secure ftp daemon # Short-Description: very secure ftp daemon ### END INIT INFO # Note on runlevels: # 0 - halt/poweroff 6 - reboot # 1 - single user 2 - multiuser without network exported # 3 - multiuser w/ network (text mode) 5 - multiuser w/ network and X11 (xdm) # # Note on script names: # http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/scrptnames.html # A registry has been set up to manage the init script namespace. # http://www.lanana.org/ # Please use the names already registered or register one or use a # vendor prefix. VSFTPD_BIN=/usr/sbin/vsftpd test -x $VSFTPD_BIN || { echo "$VSFTPD_BIN not installed"; if [ "$1" = "stop" ]; then exit 0; else exit 5; fi; } . /etc/rc.status rc_reset case "$1" in start) echo -n "Starting vsftpd " /sbin/startproc -l /var/log/rcvsftp.log $VSFTPD_BIN rc_status -v ;; stop) echo -n "Shutting down vsftpd " /sbin/killproc -TERM $VSFTPD_BIN rc_status -v ;; try-restart|condrestart) ## Do a restart only if the service was active before. ## Note: try-restart is now part of LSB (as of 1.9). ## RH has a similar command named condrestart. if test "$1" = "condrestart"; then echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}" fi $0 status if test $? = 0; then $0 restart else rc_reset # Not running is not a failure. fi rc_status ;; restart) $0 stop $0 start rc_status ;; force-reload) echo -n "Reload service vsftpd " /sbin/killproc -HUP $VSFTPD_BIN rc_status -v ;; reload) echo -n "Reload service vsftpd " /sbin/killproc -HUP $VSFTPD_BIN rc_status -v ;; status) echo -n "Checking for service vsftpd " /sbin/checkproc $VSFTPD_BIN rc_status -v ;; *) echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}" exit 1 ;; esac rc_exit