저는 Trisquel 7.0 LTS와 모바일 광대역(Net-Setter)을 사용하여 연결을 설정하고 있습니다.
다음 상태(1-4)는 문제를 명확하게 이해하기 위한 다양한 조건/상황을 보여줍니다.
상태 1:-
Trisquel 7.0 LTS를 설치한 후 모든 것이 잘 작동합니다. 내 모뎀 감지는 다음과 같습니다( lsusb
출력).
$ lsusb
Bus 001 Device 004: ID 12d1:1436 Huawei Technologies Co., Ltd. E173 3G Modem (modem-mode)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
또한 nmcli
nm-applet이나 다음 방법을 사용하여 감지할 수도 있습니다.
$ nmcli dev list
GENERAL.DEVICE: ttyUSB2
GENERAL.TYPE: gsm
GENERAL.VENDOR: HUAWEI Technology
GENERAL.PRODUCT: HUAWEI Mobile
상태 2:-
그런데 최근에 하나 달렸 어요설치 스크립트모바일파트너에서 왔는데 제대로 설치가 안되서 저도 실행해봤습니다.제거 스크립트불행하게도 제거에도 불구하고 이제 모뎀이 작동하지 않습니다(정상 감지).
이제 감지 및 새로운(현재) 출력이 변경되었습니다 lsusb
.
$ lsusb
Bus 001 Device 003: ID 12d1:1446 Huawei Technologies Co., Ltd. E1552/E1800/E173 (HSPA modem)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
여기서 차이점을 볼 수 있습니다.
더 일찍:
버스 001 장치 004: ID 12d1:1436 Huawei Technologies Co., Ltd. E173 3G 모뎀(모뎀 모드)
지금:
버스 001 장치 003: ID 12d1:1446 Huawei Technologies Co., Ltd. 1552/E1800/E173(HSPA 모뎀)
이제 모뎀은 nm-applet에서 감지되지 않습니다(nmcli에도 나열되지 않음).
기본 Trisquel은 내 장치에 문제가 없으므로 어떻게 설정을 기본값으로 재설정할 수 있습니까? 즉, 이 새로운 동작의 영향을 받는 파일은 무엇이며 어떻게 이전 상황으로 되돌릴 수 있습니까? (그렇지 않으면 전체 OS를 다시 설치해야 합니다!)
상태 3:-
나는 12d1:1446이라는 파일을 작성했는데 /etc/usb_modeswitch.d/
그 아래는 다음과 같습니다.
기본 공급자 = 0x12d1 기본 제품=0x1446 MessageContent="55534243123456780000000000000011062000000100000000000000000000"
다음 명령을 통해 실행합니다.
sudo usb_modeswitch -I -W -c /etc/usb_modeswitch.d/12d1\:1446
잘 작동했는데 이유가 lsusb
바뀌었어요
에서:
버스 001 장치 003: ID 12d1:1446 Huawei Technologies Co., Ltd. E1552/E1800/E173(HSPA 모뎀)
로 돌아가:
버스 001 장치 004: ID 12d1:1436 Huawei Technologies Co., Ltd. E173 3G 모뎀(모뎀 모드)
그러면 네트워크 관리자가 이를 감지하여 연결할 수 있습니다.
상태 4: ( 아래이 답변) --
99-mymodem.rules
나는 다음과 같은 파일을 작성했습니다 /etc/rules.d
.
ACTION=="add", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="1446", RUN+="/home/pandya/usbmode"
다음 /home/pandya/usbmode
을 포함합니다:
#!/bin/bash
sudo usb_modeswitch -I -W -c /etc/usb_modeswitch.d/12d1\:1446
그래서 모뎀을 연결했을 때 다음 과 같이 모뎀을 99-mymodem.rules
실행 하여 감지했습니다./home/pandya/usbmode
버스 001 장치 004: ID 12d1:1436 Huawei Technologies Co., Ltd. E173 3G 모뎀(모뎀 모드)
결국 네트워크 관리자( )를 통해 모뎀에 성공적으로 연결할 수 있었습니다 nm-applet
.
결론적으로:-
그러나 현재 상황(상태 4) 또는 내가 찾고 있는 것이지만 정확하지는 않습니다(상태 1) 모뎀이 연결될 때마다 udev-rule 및 usb-modeswitch를 전달하기 때문입니다.
다시 말해서왜 지금 그래야 합니까 usb_modeswitch
?(이전에는 필요하지 않았으며 Live DVD에서 부팅하고 설치하지 않고 OS를 사용해 보면 모뎀은 수동 작업 없이도 잘 작동합니다 usb_modeswitch
).
그러므로 (이 질문을 쓴 이후로) 내 목표는상태 1.
답변1
모뎀이 연결될 때마다 스크립트를 시작하려면 udev 규칙을 사용해 보세요.
ACTION=="add", ATTRS{idVendor}=="XXXX", ATTRS{idProduct}=="UUUU", RUN+="/home/user/script.sh"
XXXX 및 UUUU를 공급업체 및 ID 제품으로 바꾸고 규칙을 /etc/udev/rules.d/99-yourrule.rules에 넣은 다음 udev를 다시 시작하거나 다시 시작합니다. 일해야 해
답변2
/etc/usb_modeswitch.conf
구성 파일에서 설정했는지 확인하세요.
DisableSwitching=0
그렇지 않으면 자동 모드 전환이 전역적으로 비활성화됩니다.
답변3
마침내 (마지막으로) usb_mode 자동 전환 문제의 원인을 발견했습니다.
문서40-usb_modeswitch.rules
아래 내용이 포함되어 있습니다 /lib/udev/rules.d
:
# 화웨이, 최신 모뎀 ATTR{idVendor}=="12d1", ATTR{idProduct}=="1446", RUN+="usb_modeswitch '%b/%k'"
따라서 내 모뎀은 자동 usb_modeswitch
으로 40-usb_modeswitch.rules
.
하지만 문제는 /usr/sbin/usb_modeswitch
& /usr/sbin/usb_modeswitch_dispatcher
가 설정되지 않았습니다 chmod +x
(파일 실행 허용). 아마도 설치 스크립트(문제에 첨부됨)의 속성이 수정되었을 수 있습니다.
수동으로 sudo usb_modeswitch -I -W -c /etc/usb_modeswitch.d/12d1\:1446
(문제 설명 포함) Isudo chmod +x /usr/sbin/usb_modeswitch
그러나 /usr/sbin/usb_modeswitch_dispatcher
여전히 실행 권한이 없습니다.
이제 sudo chmod +x /usr/sbin/usb_modeswitch_dispatcher
거의 다 끝났습니다!
그 후 설명된 대로 모든 수동 전환 프로세스를 제거했습니다.상태 4(질문 참조) 이제 내 모뎀은 다음과 같이 성공적으로 감지되었습니다.
버스 001 장치 004: ID 12d1:1436 Huawei Technologies Co., Ltd. E173 3G 모뎀(모뎀 모드)
즉, 40-usb_modeswitch.rules
잘 작동합니다.
마침내 나는 돌아왔다상태 1. [해결됨]
답변4
나는 같은 문제를 다루었고 수용된 솔루션이 나에게 효과가 없었습니다. Raspbian 배포판이 있는 경우 여기에 설명된 알려진 버그가 있습니다.https://github.com/RPi-Distro/repo/issues/47.
해결책은 다음과 같습니다.
- 편집하다
/lib/udev/rules.d/40-usb_modeswitch.rules
- 편집하고 로
ATTRS{idVendor}=="12d1", ATTR{bInterfaceNumber}=="00", ATTR{bInterfaceClass}=="08", RUN+="usb_modeswitch '%b/%k'"
변경합니다 .'%b/%k'
'%k'
Raspbian 8 및 Huawei EC315에서 테스트되었습니다.