Tôi đang cố gắng để kết nối USB hoạt động giữa điện thoại Nexus 5 (chạy CM11) và máy tính để bàn của tôi chạy Debian 8. Tôi đã kết nối điện thoại với máy tính qua USB và nhận được các tin nhắn này:
[14972.580738] usb 3-2: new high-speed USB device number 6 using xhci_hcd
[14972.709236] usb 3-2: New USB device found, idVendor=18d1, idProduct=4ee3
[14972.709239] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[14972.709240] usb 3-2: Product: Nexus 5
[14972.709242] usb 3-2: Manufacturer: LGE
[14972.709243] usb 3-2: SerialNumber: 04a0ba5813aff0d4
Sau khi bật tính năng chia sẻ kết nối qua USB trên điện thoại, tôi cũng nhận được:
[14972.710663] rndis_host 3-2:1.0 usb0: register 'rndis_host' at usb-0000:00:14.0-2, RNDIS device, 02:04:67:3f:31:35
Thiết bị cũng được liệt kê bởi lsusb
, mặc dù là Nexus 4:
Bus 003 Device 006: ID 18d1:4ee3 Google Inc. Nexus 4 (tether)
(Đó có phải là vấn đề không?)
Tuy nhiên, tôi không có giao diện mạng usb0 hoặc bất cứ thứ gì khác có thể là nó. ifconfig
chỉ liệt kê các giao diện hiện trước đây, đó là eth0
, lo
cũng như hai tun
thiết bị được cung cấp bởi OpenVPN.
Tôi đã tìm kiếm những lý do có thể không hoạt động, nhưng chúng xoay quanh một hạt nhân quá cũ (từ 2,6 ngày). Hạt nhân của tôi là 3.16.0, mà tôi cho rằng sẽ hỗ trợ kết nối USB. Tôi cũng nhớ rằng tôi đã kết nối USB để hoạt động với điện thoại Sony Ericsson chỉ bằng cách kết nối với nó và đó là cách đây nhiều năm.
Theo như tôi có thể nói, tất cả các mô-đun hạt nhân có liên quan đều được tải:
rndis_host 12698 0
cdc_ether 12564 1 rndis_host
usbnet 30844 2 rndis_host,cdc_ether
usbcore 195340 8 xpad,rndis_host,ehci_hcd,ehci_pci,usbhid,usbnet,xhci_hcd,cdc_ether
usb_common 12440 1 usbcore
Tôi phải làm gì để có được giao diện mạng usb0?
Cập nhật: Tôi đã thử điều này trên một máy tính khác chạy Debian 8 và nó đã hoạt động. Theo như tôi có thể nói, sự khác biệt là hai mô-đun khác được tải: rndis_wlan
và mii
. Tuy nhiên, mặc dù tải các mô-đun này bằng tay thông qua modprobe
dường như hoạt động mà không có lỗi, usb0
vẫn còn thiếu.
Sau một vài lần googling tôi thấy rằng tôi nên lấy thông tin về giao diện mạng bằng cách sử dụng ip link
. Đầu ra là:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 30:85:a9:f6:24:cd brd ff:ff:ff:ff:ff:ff
31: tun1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN mode DEFAULT group default qlen 100
link/none
32: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN mode DEFAULT group default qlen 100
link/none
37: usb0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 0e:21:59:43:d3:ca brd ff:ff:ff:ff:ff:ff
Vì vậy, nó xuất hiện mà usb0
tồn tại sau khi tất cả. Sau đó tôi đã thử ifup usb0
, nhưng nó nói
Ignoring unknown interface usb0=usb0.
Tôi cũng đã làm tất cả mọi thứ với Nexus 7 (thế hệ 1), với kết quả tương tự.