<html>
<head>
</head>
<body>
Yura Zotov wrote:<br>
<blockquote type="cite" cite="mid:20011015150240.A7898@home-pool4-105.com2com.ru">
<pre wrap="">Здравствуйте.<br><br>Я тут написал стартовый скрипт для pptp-client. Посмотрите,<br>пожалуйста, кому не лень, выскажите замечания, предложения и т.п.<br><br>Особенно меня интересует мнение более опытных людей насчет<br>использования временного файла в строках 26-31. $pptp_command -<br>это перлина. При перенаправлении ее вывода куда-либо, кроме<br>файла, процесс останавливается и ждет непонятно чего. По Ctrl-C<br>все прерывается. Кто знает, как сделать лучше, поделитесь,<br>пожалуйста, опытом.<br><br>Скрипт прицеплен.<br><br>Заранее спасибо за помощь.</pre>
</blockquote>
Не знаю как перл - но "condstop" и "condrestart" точно не хватает. Их присутствие
обязательно для использования макросов %post_service и %preun_service в пакете.<br>
<br>
<blockquote type="cite" cite="mid:20011015150240.A7898@home-pool4-105.com2com.ru">
<pre wrap=""><br><br>--<br>Юрий А. Зотов<br></pre>
<pre wrap=""><br><hr width="90%" size="4"><br>#! /bin/sh<br>#<br># chkconfig: 2345 11 89<br># description:        Starts and stops PPTP connection.<br># processname: pptpinit<br><br># Source function library.<br>. /etc/rc.d/init.d/functions<br><br># Get config.<br>SourceIfNotEmpty /etc/sysconfig/network<br>SourceIfNotEmpty /etc/sysconfig/pptp<br><br># Check that networking is up.<br>[ "$NETWORKING" != "no" ] || exit<br>[ "$PPTP_ONBOOT" != "no" ] || exit<br><br>LOCKFILE=/var/lock/subsys/pptp<br>RETVAL=0<br>pptp_command=/usr/local/bin/pptp-command<br><br>start()<br>{<br>        echo -n "Starting PPTP connection: "<br>        if [ $PPTP_SET_HOSTNAME = "yes" ]; then<br>                TMPFILE=`mktemp /tmp/pptp.XXXXXX`<br>                if [ -f $TMPFILE ]; then<br>                        $pptp_command start $PPTP_TUNNEL > $TMPFILE<br>                        RETVAL=$?<br>                        IPADDR=`cat $TMPFILE | awk -F"IP Address: " '/IP Address/ {print $2}'`<br>                        rm -f $TMPFILE<br>                        if [ $RETVAL -eq 0 ]; then <br>                                echo<br>                                echo "IP Address: $IPADDR"<br>                                HOSTNAME=`nsl
ookup $IPADDR | grep Name | awk '{print $2}'`<br>                                if [ "x$HOSTNAME" != "x" ]; then<br>                                         echo -n "Name: $HOSTNAME"<br>                                         hostname $HOSTNAME<br>                                         success<br>                                        echo<br>                                else<br>                                         echo -n "Hostname lookup failed"<br>                                         failure<br>                                        echo<br>                                         exit 1;<br>                                fi        <br>                        fi<br>                        touch "$LOCKFILE"<br>                fi<br>        else<br>                $pptp_command start $PPTP_TUNNEL<br>                RETVAL=$?<br>                if [ $RETVAL -eq 0 ]; then<br>                        success<br>                        echo<br>                else<br>                        failure<br>                        echo<br>                fi<br>        fi<br>}<br><br>stop()<br>{<br>        echo -n "Shutting down PPTP connection: "<br>        $pptp_command stop &>/dev/null<br>        RETVAL=$?<br>        if [ $RETVAL -eq 0 ]; then<br>                rm -f "$LOCKFILE"<br>                success<br>                echo<br>        fi<br>}<br><br>restart()<br>{<br>        stop<br>        start<br>}<br><br># See how we were called.<br>case "$1" in<br>        start)<br>                start<br>                ;<br>        stop)<br>                stop<br>                ;<br>        status)<br>                status pptp<br>                RETVAL=$?<br>                ;<br>        restart)<br>                restart<br>                ;<br>        *)<br>                echo "Usage: ${0#
#*/} {start|stop|status|restart}"<br>                RETVAL=1<br>esac<br><br>exit $RETVAL<br></pre>
</blockquote>
<br>
<br>
</body>
</html>