J'utilise Ubuntu dans le lecteur VMWare sous Windows 7:
root@ubuntu:/# uname -a
Linux ubuntu 3.0.0-17-generic #30-Ubuntu SMP Thu Mar 8 17:34:21 UTC 2012 i686 \
i686 i386 GNU/Linux
J'essaie d'établir une connexion réseau à mon HTC Desire via USB. Après l'avoir branché, l'appareil apparaît lors de la saisie de la commande lsusb:
root@ubuntu:/# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 003: ID 0bb4:0c87 High Tech Computer Corp. Desire (debug)
Je peux aussi lui parler via le Android Debug Bridge:
root@ubuntu:/# adb devices
List of devices attached
HT08LPL00400 device
Lorsque j'exécute ifconfig, le périphérique doit apparaître sous usb0, mais aucune interface USB ne s'affiche:
root@ubuntu:/# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0c:29:4f:5a:28
inet addr:192.168.159.145 Bcast:192.168.159.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe4f:5a28/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:251857 errors:1 dropped:1 overruns:0 frame:0
TX packets:147151 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:340675522 (340.6 MB) TX bytes:12163470 (12.1 MB)
Interrupt:19 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:15115 errors:0 dropped:0 overruns:0 frame:0
TX packets:15115 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:5352740 (5.3 MB) TX bytes:5352740 (5.3 MB)
Quelqu'un sait ce que je peux faire? Merci!
Adb fonctionne sur USB, il ne configure pas une interface réseau. ifconfig
affiche uniquement les interfaces réseau.
Si vous souhaitez exécuter des commandes ou copier des fichiers entre Ubuntu et le téléphone Android, utilisez la commande adb
:
adb Shell ls /system
adb Push myfile /data/data/myapp.example.com/
Certains Android périphériques peuvent apparaître comme un périphérique de stockage USB , je ne sais pas si cela inclut le vôtre. Vous pouvez également essayer adbfs (non packagé pour Ubuntu, pour autant que je sache, vous auriez donc besoin de le compiler vous-même).
Si vous souhaitez établir une connexion réseau, utilisez par exemple le téléphone Android comme passerelle vers Internet (fonction = Tethering ), indiquez à adb
d'établir une connexion PPP via USB. L’interface PPP apparaîtra comme une interface réseau dans ifconfig
. Voici un script de connexion rapide qui tente de deviner la bonne interface réseau sur le périphérique Android; lancez-le en tant que root et à vos risques et périls (il n'a pas été conçu pour être robuste dans des configurations étranges).
# Interface with the default route on the Android device.
Android_gw_if=$(adb Shell ip route list 0.0.0.0/0 | sed -n -e 's/^.* dev *\([^ ]*\).*/\1/p' -e 'T' -e 'q')
adb ppp "Shell:pppd nodetach noauth noipdefault /dev/tty" nodetach noauth noipdefault notty 192.168.254.2:192.168.254.1
adb Shell "echo 1 >/proc/sys/net/ipv4/ip_forward"
adb Shell "iptables -P FORWARD ACCEPT"
adb Shell "iptables -t nat -I POSTROUTING -s 192.168.254.2 -j MASQUERADE -o $Android_gw_if"
sleep 1 # give the ppp connection time to establish itself
route add -net default gw 192.168.254.1