GSM-свисток, продающийся на терриотрии России под брендом МегаФон и МТС, частенько залочен на одноименную корпорацию добра.
Поскольку все эти модемы сделаны по принципу сел и поехал - в нём для Linux всё неудобно и криво. Как только новый модем вставляется - он сразу появляется в системе как CD-ROM и отсутствует какой-либо доступ к управлению самим модемом.
Для переключения в режим только модем нам понадибся usb_modeswitch. В разных ОС пакет называется по разному, но название приложения вроде одно:
# emerge -pv usb_modeswitch
После чего добавляем правило в udev, которое само будет при подключении переводить модем в нужный режим (а попутно ещё и удобные права доступа подкручивать)
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="14fe", RUN+="/usr/sbin/usb_modeswitch -v 12d1 -p 14fe -M '55534243123456780000000000000011062000000100000000000000000000'" KERNEL=="ttyUSB*", MODE="0666"
После этого можно подключаться на /dev/ttyUSB0 (иногда /dev/ttyUSB1, а иногда они оба присутствуют, надо выбрать тот, который отзовётся на простые команды - ATI, например) как к обычному последовательному порту (minicom, screen, etc)
Процесс не простой, а иногда и излишний, поскольку можно окирпичить свою железку. Для начала проверяем, в каком состоянии наш модем. Подключаемся к последовательному порту и вводим
AT^CARDLOCK?
Ответ выглядит следующим образом:
<состояние>,<количество попыток>,0
Соответственно если состояние - 2, значит всё хорошо и модем разлочен, если 1 - то переходим дальше. Количество попыток же - сколько раз можно ввести неправильный код разблокировки.
Дальше вводим команду ATI (информация об устройстве) и получаем IMEI, вместе с которым топаем в гугл и находим Huawei Unlock Code Calculator, где вводим IMEI и получаем пачку разных кодов для разблокировки. Дальше в терминале вводим:
AT^CARDLOCK="<полученный код>"
Где <полученный код> чаще все v201 code, но так, как у нас 10 попыток - можно попробовать все. (Я надеюсь никто не догадается вводить треугольные скобки в команду - цифры в кавычках) Если всё прошло успешно - получаем в результатек команды AT^CARDLOCK? заветную двоечку. (или кирпич вместо модема, но это зависит от прокаченности удачи и прямоты рук)