/etc/init.d/pure-ftpd-mysql을 복원하는 방법은 무엇입니까?

/etc/init.d/pure-ftpd-mysql을 복원하는 방법은 무엇입니까?

실수로...이것은 나의 새로운 /etc/init.d/pure-ftpd-mysql입니다:

    /etc/init.d/pure-ftpd-mysql restart

파일을 설치하거나 복원하는 방법은 무엇입니까? 표준을 선택 하거나 apt-get remove파일 을 제공하지 마세요.apt-get installapt-get install --reinstall pure-ftpd-common pure-ftpd-mysql

답변1

바이너리 .deb 파일이 있으면 사용할 수 있습니다미드나잇 커맨더(MC)셸에서 탐색하여 파일을 검색합니다.

귀하의 편의를 위해 다음 위치에 있는 파일을 참조하세요 pure-ftpd-mysql_1.0.36-1.1_i386.deb.

#! /bin/sh
### BEGIN INIT INFO
# Provides:          pure-ftpd-mysql
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Should-Start:      slapd mysql postgresql-8.3 postgresql-8.4
# Should-Stop:       slapd mysql postgresql-8.3 postgresql-8.4
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
### END INIT INFO
#
# pure-ftpd     starts and stops the pure-ftpd ftp daemon
#
# Copyright 2002-2011 by Stefan Hornburg (Racke) <[email protected]>

PATH=/sbin:/bin:/usr/sbin:/usr/bin
NAME=pure-ftpd
DESC="ftp server"
: ${SSDAEMONLOGOPTS:="--quiet"}
UPLOADDAEMON=/usr/sbin/pure-uploadscript
UDNAME=pure-uploadscript
UDDESC="ftp upload handler"
WRAPPER=/usr/sbin/pure-ftpd-wrapper

# load LSB init-functions to get status_of_proc helper
. /lib/lsb/init-functions

PIDFILE=/var/run/pure-ftpd/pure-ftpd.pid

# try to figure with suffix this script is called,
# $0 might be a symlink pointing to this script
if [ -h $0 ]; then
        ME=`/bin/readlink $0`
else
        ME=$0
fi

SUFFIX=`basename $ME | sed -ne 's/^pure-ftpd-\(.*\)/\1/p'`
if [ "$SUFFIX" ] ; then
        DAEMON=/usr/sbin/pure-ftpd-$SUFFIX
else
        DAEMON=/usr/sbin/pure-ftpd
fi

export STANDALONE_OR_INETD=inetd
export VIRTUALCHROOT=
test -r /etc/default/pure-ftpd-common && . /etc/default/pure-ftpd-common

if [ "$VIRTUALCHROOT" = "true" ]; then
        if [ "$SUFFIX" ]; then
                SUFFIX="$SUFFIX-virtualchroot"
        else
                SUFFIX="virtualchroot"
        fi
fi

test -x $DAEMON || exit 0
test -x $WRAPPER || exit 0

set -e

if [ ! -e `dirname $PIDFILE` ];then
       mkdir `dirname $PIDFILE`
fi

start_uploadscript() {
        if [ "$UPLOADSCRIPT" -a "$STANDALONE_OR_INETD" != inetd ] && \
                egrep -i '^[    ]*(yes|1|on)[   ]*' /etc/pure-ftpd/conf/CallUploadScript > /dev/null 2>&1
        then
                UOPTS=""
                test "$UPLOADUID" && UOPTS="$UOPTS -u $UPLOADUID"
                test "$UPLOADGID" && UOPTS="$UOPTS -g $UPLOADGID"
                echo -n "$1 $UDDESC: "
                start-stop-daemon --start $SSDAEMONLOGOPTS --oknodo \
                        --exec $UPLOADDAEMON -- -r "$UPLOADSCRIPT" -B $UOPTS
                echo "$UDNAME."

        fi
}

case "$1" in
  start)
        test "$STANDALONE_OR_INETD" = standalone || exit 0
        echo -n "Starting $DESC: "
        start-stop-daemon --start $SSDAEMONLOGOPTS --pidfile "$PIDFILE" \
                --exec $WRAPPER -- $SUFFIX
        start_uploadscript Starting
        ;;
  stop)
        echo -n "Stopping $DESC: "
        start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo \
                --pidfile "$PIDFILE"
        start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo --exec $UPLOADDAEMON
        echo "$NAME."
        ;;
  restart|force-reload)
        test "$STANDALONE_OR_INETD" = standalone || exit 0
        echo -n "Restarting $DESC: "
        start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo \
                --pidfile "$PIDFILE"
        start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo --exec $UPLOADDAEMON
        sleep 1
        start-stop-daemon --start $SSDAEMONLOGOPTS --pidfile "$PIDFILE" \
                --exec $WRAPPER -- $SUFFIX
        start_uploadscript Restarting
        ;;
  status)
        status_of_proc -p /var/run/pure-ftpd/pure-ftpd.pid $DAEMON $NAME && exit 0 || exit $?
        ;;
  *)
        N=/etc/init.d/$NAME
        echo "Usage: $N {start|stop|restart|force-reload|status}" >&2
        exit 1
        ;;
esac

exit 0

답변2

rm파일을 삭제 하고 패키지를 다시 설치해 보셨나요 ?

그래도 문제가 해결되지 않으면 패키지와 모든 구성 파일을 aptitude purge제거해 보세요 . apt-get remove --purge그런 다음 다시 설치하여 기본 구성 파일을 가져옵니다.

아무것도 작동하지 않으면 .deb저장소에서 파일을 가져와서(packages.debian.org에서 찾아보세요) 두 번 압축을 풀어보세요(먼저 package .deb, 그 다음에는 data.tar.gz에 포함될 파일입니다 .deb. 구성을 찾아야 합니다. 파일은 다음과 같습니다. 거기.

답변3

다시 설치하기 전에 빈 파일을 만드십시오.

sudo touch /etc/init.d/pure-ftpd-mysql

그런 다음 --purge 플래그를 사용하여 다시 설치합니다(이 파일이 포함된 라이브러리를 제거하고 새 작업 파일을 생성합니다).

sudo apt-get remove pure-ftpd-mysql --purge

sudo apt-get install pure-ftpd-mysql

관련 정보