Поблагодари автора прямо сейчас на странице Спасибо!
Wvdial
Материал из Пингвиньи радостей
|
Статья о программе-звонилке Wvdial
WvDial это программа установки соединения посредством PPP-протокола.
WvDial обеспечивает автоматическое обнаружение большинства модемов и простое создание коммутируемого соединения в командной строке или скрипте с входом в систему большинства vpn-серверов без дополнительной настройки.
Для набора номера и установления соединения с сервером остаётся задать всего три параметра: сам телефонный номер, имя пользователя и пароль, а при осуществлении звонка только номер абонента.
Установка
Пакет присутствует в хранилище пакетов debian.
Для установки пакета
- в командной строке: следует выполнить команду # apt-get install wvdial
- в графическом режиме: воспользоваться специализированной программой управления пакетами
После установки пакет готов к использованию.
Поведение программы определяется файлом конфигурации, который
- задаётся в командной строке при запуске с параметром --config=wvdial.conf,
- или ищется в персональном файле ~/.wvdialrc,
- или используется глобальный в общем каталоге /etc/wvdial.conf.
Для сканирования системы и автоматического создания глобального файла конфигурации может быть использована команда wvdialconf при запуске от имени суперпользователя.
Пример файла конфигурации wvdial.conf
[Dialer Defaults] Init1 = ATZ Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 Modem Type = Analog Modem Phone = <PHONE_NUMBER> ISDN = 0 Username = <Your Login Name> Password = <Your Password> Modem = /dev/ttyS0 Baud = 115200 Abort on Busy = on
Описание этих и других параметров файла конфигурации приведено в статье Wvdial.conf.
Некоторые часто используемые команды
# wvdialconf - сканирование последовательных (serial) портов и создание файла конфигурации # wvdial - установка соединения с параметрами из секции [Dialer Defaults] из файла конфигурации по умолчанию # wvdial Name - установка соединения с параметрами из именованной секции [Dialer Name] файла конфигурации по умолчанию # wvdial --config=/path/wvdial.conf - запуск программы с использованием параметров произвольно расположенного файла конфигурации
Звонилка по телефону
WvDial позволяет создать мост между программами-органайзерами и подключённым к персональному компьютеру модемом для облегчения процесса установления связи. В связи с тем, что WvDial легко встраивается в скрипты, то не составляет труда создать программу (скрипт) обеспечивающую поиск модема, в том числе удалённо по сети, установку соединения - звонок, с передачей ей только одного параметра - телефонного номера абонента.
Для осуществление звонка по телефону (установки соединения через модем)
- создаётся например скрипт /usr/local/bin/dialup
- в командной строке вводится команда
# dialup <НОМЕР>
Для осуществление звонка по телефону удалённо, через ssh-туннель,
- настраивается автоматический доступ модем-сервер по ssh-протоколу, как описано в статье организация автоматического входа на сервер ssh
- от имени пользователя имеющего автоматический вход выполняется команда
# ssh host dialup <НОМЕР>
Для осуществления звонка например из графической программы kontact с сервера терминалов linux через ssh-туннель
- открываем вкладку "Настройка\Контакты\Contact Action"
- в окне "Dial Phone Number" устанавливаем "External Application" и "Command: ssh host dialup %N"
- звонок осуществляется путём нажатия на номер в карточке контакта
Устранение ошибок
Для устранения ошибки wvdial: utils/wvtask.cc:303: static int WvTaskMan::yield(int): Assertion `*current_task->stack_magic == WVTASK_MAGIC' failed. при запуске wvdial в операционной системе с архитектурой amd64 выполняем команды
# aptitude purge wvdial ppp - удаление установленной программы # dpkg --add-architecture i386 - добавление архитектуры i386 # aptitude update # aptitude install wvdial:i386 - установка wvdial архитектуры i386
Литература
Справочная информация
- 08.09.2010: Wvdial: создание статьи в википедии, описание установки и настройки пакета в debian squeeze
- 31.01.2013: Wvdial: правка внешнего вида статьи
- 28.02.2018: Wvdial: добавлено описание устранения ошибки wvdial: utils/wvtask.cc:303: static int WvTaskMan::yield(int): Assertion `*current_task->stack_magic == WVTASK_MAGIC' failed.