Olej писал(а):
А выглядит это в общем виде примерно так:
4. (продолжение)
После этого нужно найти
модуль ядра, который поддерживает
данный модем.
Я видел модемы, поддерживаемые только 3-мя модулями:
- option - это наиболее часто, в большинстве случаев (создаёт только устройства /dev/ttyUSB*);
- cdc-acm - это, как я предполагаю, для самых старых моделей, и последние изменения в код модуля датированы 2011г. (создаёт только устройства /dev/ttyACM*);
- qcaux - а это, похоже, поддержка из самых новых моделей (?) (создаёт и устройства /dev/ttyUSB* и /dev/ttyACM*
одновременно);
P.S. в man usb_modeswitch упоминается модуль поддержки: usbserial.
Обычно,
после переключения устройства в режим модем, модуль должен подгрузиться автоматически (подсистемой udev)...
5. Конечно,
можно напороться на совершенно новое или экзотическое устройство, для которого нет поддержки модулем вообще.
Но это относительно редкая вещь. Чаще у народа (как описывают) случай, когда модуль не находится:
Код: Выделить всё
bash-4.2$ modprobe -c | grep -i <VID> | grep <PID>
Для которого нет соответствующей строки:
Код: Выделить всё
bash-4.2$ cd /lib/modules/`uname -r`
bash-4.2$ cat modules.alias
...
alias usb:v04D8p000Bd*dc*dsc*dp*ic*isc*ip* cdc_acm
alias usb:v0694pFF00d*dc*dsc*dp*ic*isc*ip* cdc_acm
alias usb:v03EBp0030d*dc*dsc*dp*ic*isc*ip* cdc_acm
alias usb:v04E7p6651d*dc*dsc*dp*ic02isc02ipFF* cdc_acm
alias usb:v0421p03CDd*dc*dsc*dp*ic02isc02ipFF* cdc_acm
alias usb:v0421p0335d*dc*dsc*dp*ic02isc02ipFF* cdc_acm
...
- где в строке (инициализации) после v записан VID, а после p записан PID.
Тогда можно попытаться подгрузить модуль вручкую:
6. Даже если данная модель не поддерживается ещё модулем ядра, но для неё есть
похожая более старая поддерживаемая модель (часто это тот же VID, но меньший номер PID), то и для такого модема, при некоторой изобретательности, можно создать подмену VID:PID так, чтобы система этого не заметила. А поскольку многие модели модемов со стороны интерфейса сильно похожи, то и это срабатывает достаточно часто.
7. К этому моменту возникают устройства /dev/ttyUSB* или/и /dev/ttyACM*
Теперь в большинстве случаев можно
настроить подключение такого модема к провайдеру с помощью NetworkManager - множество примеров с картинками показывалось в этой теме раньше.
8. А что делать, если в настройках NetworkManager нет подходящей страны, провайдера в этой стране, нет каких-то дополнительных параметров? (в подавляющем большинстве случаев, если уж установка USB-модема произошла успешно, соединение с провайдером удаётся выполнить с помощью NetworkManager, но сообщается о моделях модемов, для которых так не получается сделать, см:
viewtopic.php?f=5&t=1798&start=0#p4802).
В этом случае можно замечательно настроить соединение, используя классику - ручную настройку PPP:
Подключение модемов напрямую через PPP при помощи скриптов.