minicom после того,
как он был использован для дозванивая. Но в действительности не нужно
покидать эту удобную программу...
minicom -s" и выберите пункт меню "Serial port setup".
Первым стоит пункт "Serial Device" - это самая важная установка:
ваш модем поключается к последовательному устройству. (Кто хочет
заставить minicom работать с несколькими последовательными устройствами
одновременно ?) Нажмите return для подтверждения и esc чтобы выйти
в начальное меню установок. Выберите "Exit to minicom" и напечатайте
"atdt99999". Ваш модем немедленно начнет набирать номер и вы услышите
щелчок, когда модем поднимет трубку. Конечно, "99999" - несуществующий
номер.
99999". Вы видели беспорядочные символы на экране после
регистрации (если нет, напечатайте "ppp")? Они говорят о том, что на
другом конце линии запущен "pppd" (или его эквивалент). Если это так,
то вы со своей стороны можете попытаться запустить демон "pppd" и
впоследствии оценить содержимое лог-файлов.
Чтобы запустить "pppd" внутри minicom, вы можете определить новый
метод закачки "наверх" (то есть, от вас) или переопределить
установку "kermit programm" из меню конфигурации "Filename and paths":
A - Download directory :
B - Upload directory :
C - Script directory :
D - Script program : /usr/bin/runscript
E - Kermit program : /usr/sbin/pppd file /etc/ppp/mini_options
Сейчас, если вы видели эти беспорядочные символы, при следующем звонке
вашему провайдеру вы можете нажать Alt-K, чтобы запустить "pppd".
Оставшаяся часть этого mini-HOWTO посвящена вопросам автоматизации
логгирования и запуска "pppd".
/var/log/debug" (или "/var/log/daemon.log") выполните команды
tail -n 40 /var/log/debug |\
grep -E " pppd\[[0-9]*\]:" |\
sed -e "s/^.*pppd\[/[/"
Вы увидите сообщения вроде этих
sent [LCP ConfReq id=0x1 ]
rcvd [LCP ConfRej id=0x1 ]
которые показывают что мы отправили запрос на установку
максимального размера принимаего блока (mru) в значение 296. Другая
сторона отвергла эту установку ("configuration rejected"). В этом
случае я только удалил опцию "mru" из файла "/etc/ppp/options"
(см. ниже).
minicim'а. Нажмите
Alt-D для вызова меню звонков и с помощью курсорных клавиш
выберите "Edit":
A - Name : Xeno
B - Number : 022039697303
C - Dial string # : 1
D - Local echo : No
E - Script : /etc/ppp/login.script
F - Username : ppp-382
G - Password : top-secret
H - Terminal Emulation : VT102
I - Backspace key sends : Delete
J - Linewrap : Off
K - Line Settings : Curr 8N1
Это пример записи для одного из моих провайдеров. Сценарий
"/etc/ppp/login.script" показан ниже. Две специальные переменные
заведены в этом сценарии: $(LOGIN) и $(PASS), которые устанавливают
такие значения как имя пользователя (F) и пароль (G). Эта особенность
придает minicom'у некоторую гибкость, потому что вам нужен только один
скрипт, чтобы автоматически подсоединяться к нескольким провайдерам.
minicom" запускает сценарий регистрации (login-script) после того
как он примет строку "CONNECT". Чтобы быть точным, "minicom" не
выполняет сценарий сам, а вызывает для этого утилиту "runscript" в
качестве дочернего процесса.
Ниже показан пример, который я использую для моего провайдера.
# v1.0, 20.08.96 Winfried TrЭmper
print ""
print "Автоматическая регистрация через /etc/ppp/login.script"
## раскомментируйте, если вам нужно нажать , чтобы
## получить строку приглашения
#send ""
expect {
"ogin:"
"ogin>"
"sername:"
"sername>"
"NO CARRIER" exit 1
}
send "$(LOGIN)"
expect {
"assword:"
"assword>"
timeout 20
}
send "$(PASS)"
expect {
"port" send "ppp"
"Start your PPP now"
"}!}!}"
timeout 10
}
print ""
print "Сейчас переключаемся в ppp-режим ..."
print ""
! /usr/sbin/pppd file /etc/ppp/mini_options
print ""
print "команда killall -TERM pppd прекращает работу pppd"
Способность "runscript" вызывать внешние программы используется для
запуска "pppd". Скопируйте ваш собственный файл options для ppp в
"/etc/ppp/options.ttyS1" (здесь вы можете заменить "ttyS1" на
устройство, к которому подключен ваш модем) и удалите все строки из
/etc/ppp/options, которые относятся к вашему модему (вроде "connect",
"crtscts" или "modem"). Вставьте опции, которые специфичны для
ppp-соединения через minicom в "/etc/ppp/mini_options". Одной из
этих опций будет
disconnect "chat '' '\d\d+++\d\dATH\r\c'"
Она должна быть, так как "pppd" читает данные через стандартный поток
ввода и не может заставить модем бросить трубку через "crtscts".
-d", чтобы звонить по определенному номеру при
запуске minicom.
Также вы можете попробовать
open -sl -- minicom -d 1
чтобы перебросить minicom в другую консоль (см. Consoles-Many
mini-HOWTO).
pppd" - демон, он не предназначен для интерактивного
общения с пользователем или наблюдения. Это так. И после всего этого
мы используем юниксы...
Каноническое решение позади. Есть добровольцы хакнуть minicom?
Желаемые расширения такие: