USB 대용량 저장 장치를 사용자 정의 PID 및 VID와 연결하는 방법은 무엇입니까?

USB 대용량 저장 장치를 사용자 정의 PID 및 VID와 연결하는 방법은 무엇입니까?

나는 장치, 사용자 정의 mp3 플레이어를 가지고 있으며 pid와 vid는 a011:a011로 표시됩니다.

정보

usb 1-1.1: new high-speed USB device number 4 using ehci-pci
usb 1-1.1: New USB device found, idVendor=a011, idProduct=a011
usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=5
usb 1-1.1: Product: Custom-Mp3
usb 1-1.1: SerialNumber: 123456789abcdef
usb 1-1.1: USB disconnect, device number 4
usb 3-3: new high-speed USB device number 2 using xhci_hcd
usb 3-3: New USB device found, idVendor=a011, idProduct=a011
usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=5
usb 3-3: Product: Custom-Mp3
usb 3-3: SerialNumber: 123456789abcdef

일반 대용량 저장 장치 드라이버를 선택하여 Windows 7에서 이 장치에 연결할 수 있습니다. 읽고 쓸 수 있는 fat32 파티션이 있습니다.

내 시스템은 우분투 14입니다. 모든 것이 정상입니다. USB 썸 드라이브를 연결하면 자동으로 드라이버가 로드되고 /dev/sdX포인트가 생성됩니다.

이 MP3 플레이어를 Linux 컴퓨터에 어떻게 연결합니까? 그 지점을 만들 수 있다면 /dev/sdX설치할 수 있습니다.

나는 modprobe를 읽고 사용하여 하나를 만들려고 노력했지만 /etc/udev/rules.d/80-mp3_a011.rules아직 클릭하지 않았습니다.

먼저 명령줄을 통해 한 번 연결하고 싶습니다.

다음으로 연결할 때마다 연결하고 싶습니다.

마지막으로 이 정보를 사용하여 임베디드 시스템에서 사용하는 mdev에 대한 규칙을 만들겠습니다.

답변1

두 번째 부분은 작동했습니다.

"다음에는 연결할 때마다 연결하고 싶습니다."

udev 규칙은 다음 위치에 생성됩니다.

sudo vi /etc/udev/rules.d/80-mp3_a011.rules

이 정보를 추가하는 것은 단순히 modprobes usb-storage를 추가하고 내 pid:vid를 usb-storage new_id에 추가하는 것뿐입니다.

ACTION=="add", ATTRS{idVendor}=="a010", ATTRS{idProduct}=="a010", RUN+="/sbin/modprobe usb-storage" RUN+="/bin/sh -c 'echo a011 a011 > /sys/bus/usb/drivers/usb-storage/new_id'"

udev를 다시 시작하세요

sudo /etc/init.d/udev restart

이제 장치를 연결하면 다른 USB 대용량 저장 장치처럼 처리됩니다.

작업의 첫 번째 부분:

"먼저 명령줄을 통해 연결하고 싶습니다."

sudo echo a011 a011 > /sys/bus/usb/drivers/usb-storage/new_id

했다아니요sudo는 new_id 파일이나 이와 유사한 것이 아닌 echo 명령에 적용되기 때문에 작동합니다.

먼저 루트 쉘로 변경한 다음 PID:VID를 new_id에 추가합니다.

sudo su

echo a011 a011 > /sys/bus/usb/drivers/usb-storage/new_id

관련 정보