LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 910|回复: 2

请帮忙给调整一个pure-ftpd-mysql的启动参数

[复制链接]
发表于 2005-9-21 16:34:53 | 显示全部楼层 |阅读模式
执行/etc/init.d/pure-ftpd-mysql start后显示
Starting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -u 1000 -E -O clf:/var/log/pure-ftpd/transfer.log -B

现在我要在后面再增加 -A参数 该怎么改pure-ftpd-mysql文件?


以下是/etc/init.d/pure-ftpd-mysql 文件内容
----------------------------------------------------
#! /bin/sh
#
# pure-ftpd     starts and stops the pure-ftpd ftp daemon

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

# 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

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 /var/run/pure-ftpd/pure-ftpd.pid \
                --exec $WRAPPER -- $SUFFIX
        start_uploadscript Starting
        ;;
  stop)
        echo -n "Stopping $DESC: "
        start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo \
                --pidfile /var/run/pure-ftpd/pure-ftpd.pid
        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 /var/run/pure-ftpd/pure-ftpd.pid
        start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo --exec $UPLOADDAEMON
        sleep 1
        start-stop-daemon --start $SSDAEMONLOGOPTS --pidfile \
                /var/run/pure-ftpd/pure-ftpd.pid --exec $WRAPPER -- $SUFFIX
        start_uploadscript Restarting
        ;;
  *)
        N=/etc/init.d/$NAME
        echo "Usage: $N {start|stop|restart|force-reload}" >&2
        exit 1
        ;;
esac

exit 0
 楼主| 发表于 2005-9-21 21:12:08 | 显示全部楼层
就是这句起动服务的

start-stop-daemon --start $SSDAEMONLOGOPTS --pidfile  /var/run/pure-ftpd/pure-ftpd.pid --exec $WRAPPER -- $SUFFIX

运行输出
Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -u 1000 -E -O clf:/var/log/pure-ftpd/transfer.log -B
不知道怎么生成的

变量替换了之后应该是

start-stop-daemon --start --quiet --pidfile /var/run/pure-ftpd/pure-ftpd.pid  --exec /usr/sbin/pure-ftpd-wrapper -- mysql-virtualchroot

可是不能直接执行
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-21 21:32:39 | 显示全部楼层
搞定了,发现/usr/sbin/pure-ftpd-wrapper是一个perl脚本,然后又man pure-ftpd-wrapper看了说明,终于明白了使用方法---------------------------
在/etc/pure-ftpd/conf下把各种参数单独建立一个文件,参数可以使用
/usr/sbin/pure-ftpd-mysql --help看到

比如-A      --chrooteveryone

要启用 -A 参数,就只要在/etc/pure-ftpd/conf下新建chrooteveryone,内容为yes
那么/etc/init.d/pure-ftpd-mysql start 就会启用 -A参数了 !
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表