PPPd: unrecognized option 'ttyUSB0' (при неинтерактивном запуске)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модераторы: SLEDopit, Модераторы разделов

IMB
Сообщения: 2567
ОС: Debian

PPPd: unrecognized option 'ttyUSB0'

Сообщение IMB »

Доброго дня!
Необходимо при подключении USB модема Мегафон Huawei E392 устанавливать связь, для этого сделано следующее:
/etc/udev/rules.d/20-usb.rules

Код: Выделить всё

# rules for HUAWEI E392
ACTION=="add",SUBSYSTEM=="usb",ATTRS{idVendor}=="12d1",ATTRS{idProduct}=="1505",RUN+="/usr/sbin/usb_modeswitch --quiet --config-file /etc/usb_modeswitch.conf"
ACTION=="add",SUBSYSTEM=="usb",ATTRS{idVendor}=="12d1",ATTRS{idProduct}=="1506",RUN+="/usr/sbin/usb.sh start"
ACTION=="remove",SUBSYSTEM=="usb",ATTRS{idVendor}=="12d1",ATTRS{idProduct}=="1506",RUN+="/usr/sbin/usb.sh stop

В скрипте /usr/sbin/usb.sh вызывается скрипт /etc/init.d/network.sh для конфигурирования сетевого интерфейса.
/etc/init.d/network.sh

Код: Выделить всё

............
start()
{
    MOD_DIR=/lib/modules/network

    if [ $IFACE = "usb0" ]; then
        .....................
    elif [ $IFACE = "ppp0" ]; then
        grep -q ppp_generic /proc/modules
        if [ $? -ne 0 ]; then
            insmod $MOD_DIR/usbserial.ko vendor=0x12d1 product=0x1506
            insmod $MOD_DIR/slhc.ko
            insmod $MOD_DIR/crc-ccitt.ko
            insmod $MOD_DIR/ppp_generic.ko
            insmod $MOD_DIR/ppp_deflate.ko
            insmod $MOD_DIR/ppp_async.ko
        fi
    fi

    $IP address add 127.0.0.1/8 dev lo
    $IP link set dev lo up

    if [ $IFACE = "usb0" ]; then
        ...................
    elif [ $IFACE = "ppp0" ]; then
        $PPPD call huawei
    fi

    while [ -z `$IP route | cut -d' ' -f1 | head -n1` ]; do
        sleep 3
    done
}....

/etc/ppp/huawei

Код: Выделить всё

TIMEOUT 35
ECHO ON
ABORT '\nBUSY\r'
ABORT '\nERROR\r'
ABORT '\nNO ANSWER\r'
ABORT '\nNO CARRIER\r'
ABORT '\nNO DIALTONE\r'
ABORT '\nRINGING\r\n\r\nRINGING\r'
ABORT '\nUsername/pASSWORD Incorrect\r'
''  \rAT
OK  'AT+CGDCONT=1,"IP","internet"'
OK  ATD*99#CONNECT  ""

/etc/ppp/peers/huawei

Код: Выделить всё

connect "/sbin/chat -Vs -r /tmp/ppp -f /etc/ppp/huawei"
460800
crtscts
modem
ttyUSB0
noauth
usepeerdns
defaultroute
user ""
password ""
logfile /tmp/ppp

Все скрипты и конфигурационные файлы корректны, проверялось отключением правила udev и ручным запуском /etc/init.d/network.sh, соединение устанавливается и лог пишется.
Но стоит активировать запуск /etc/init.d/network.sh из udev, как соединение не устанавливается и лог ppp не пишется.
Изменение строки запуска pppd на $PPPD call huawei /tmp/zzz 2>&1 дало следующее /sbin/pppd: In file /etc/ppp/peers/huawei: unrecognized option 'ttyUSB0'
Вопрос - как решить эту проблему?
Спасибо.
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: PPPd: unrecognized option 'ttyUSB0'

Сообщение IMB »

Пока решил проблему созданием файла перед запуском ppp.

Код: Выделить всё

[ -c /dev/ttyUSB0 ] || mknod /dev/ttyUSB0 c 188 0
Спасибо сказали: