我试图使Nexus 5手机(运行CM11)和运行Debian 8的台式机之间能够通过USB绑定,将手机通过USB连接到计算机并收到以下消息:
[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
在手机上启用USB绑定后,我还得到:
[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
该设备也被列出lsusb
,尽管是Nexus 4:
Bus 003 Device 006: ID 18d1:4ee3 Google Inc. Nexus 4 (tether)
(那是问题吗?)
但是,我没有获得USB0网络接口或其他可能的接口。ifconfig
只列出了先前存在的接口,其是eth0
,lo
,以及两个tun
由OpenVPN的提供的装置。
我搜索了可能不起作用的可能原因,但它们围绕的是太老的内核(从2.6天开始)。我的内核是3.16.0,我假设它支持USB绑定。我还记得,几年前,我通过连接USB即可与索尼爱立信手机配合使用。
据我所知,所有相关的内核模块都已加载:
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
我必须怎么做才能获得usb0网络接口?
更新:我在另一台运行Debian 8的计算机上尝试了此方法,并且该方法有效。据我所知,不同之处在于还加载了另外两个模块:rndis_wlan
和mii
。但是,尽管通过手动加载这些模块modprobe
似乎可以正常工作,但是usb0
仍然缺少。
经过一番谷歌搜索后,我发现我应该使用来获取有关网络接口的信息ip link
。输出为:
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
因此看来usb0
确实存在。然后我尝试了ifup usb0
,但是说
Ignoring unknown interface usb0=usb0.
我也使用Nexus 7(第一代)完成了整个过程,并得到了相同的结果。