Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Android e Udev ====== {{http://developer.android.com/images/brand/Android_Robot_100.png?nolink&50 }} Per far riconoscere il nostro smartphone Android alla nostra Linux box (ad esempio per utilizzare ''adb'' o trasferire i file via protocollo MTP) è necessario creare una regola ad-hoc di udev. ===== Recuperiamo le informazioni del dispositivo ===== Per permettere ad udev di riconoscere correttamente il nostro smartphone è necessario recuperare il //vendor-id//. Attacchiamo il nostro smartphone alla presa USB e da terminale digidiamo ''lsusb'' per elencare i dispositivi USB connessi: # lsusb [...] Bus 002 Device 006: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II], GT-I9300 Phone [Galaxy S III], GT-P7500 [Galaxy Tab 10.1] [...] Dalla prova effettuata con il mio smartphone il vendor-id è il ''04e8'' ovvero della Samsung. ===== Creiamo la regola ===== Adesso che abbiamo il vendor-id possiamo creare la regola udev in questo modo. <code bash> SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0664", GROUP="plugdev" </code> Per comodita più in basso riporto la regola udev per tutti i vendor che utilizzano Android. Con utente ''root'', apriamo il nostro editor di testo preferito e copiamo la regola udev qui sotto nella directory ''/etc/udev/rules.d'': <file bash 51-android.rules> #Acer SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0664", GROUP="plugdev" #ASUS SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0664", GROUP="plugdev" #Dell SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0664", GROUP="plugdev" #Foxconn SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0664", GROUP="plugdev" #Fujitsu & Fujitsu Toshiba SUBSYSTEM=="usb", ATTR{idVendor}=="04c5", MODE="0664", GROUP="plugdev" #Garmin-Asus SUBSYSTEM=="usb", ATTR{idVendor}=="091e", MODE="0664", GROUP="plugdev" #Google SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0664", GROUP="plugdev" #Haier SUBSYSTEM=="usb", ATTR{idVendor}=="201e", MODE="0664", GROUP="plugdev" #Hisense SUBSYSTEM=="usb", ATTR{idVendor}=="109b", MODE="0664", GROUP="plugdev" #HTC SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0664", GROUP="plugdev" #Huawei SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0664", GROUP="plugdev" #K-Touch SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0664", GROUP="plugdev" #KT Tech SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0664", GROUP="plugdev" #Kyocera SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0664", GROUP="plugdev" #Lenovo SUBSYSTEM=="usb", ATTR{idVendor}=="17ef", MODE="0664", GROUP="plugdev" #LG SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0664", GROUP="plugdev" #Motorola SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0664", GROUP="plugdev" #MTK SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", MODE="0664", GROUP="plugdev" #NEC SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0664", GROUP="plugdev" #Nook SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0664", GROUP="plugdev" #Nvidia SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0664", GROUP="plugdev" #OTGV SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0664", GROUP="plugdev" #Pantech SUBSYSTEM=="usb", ATTR{idVendor}=="10a9", MODE="0664", GROUP="plugdev" #Pegatron SUBSYSTEM=="usb", ATTR{idVendor}=="1d4d", MODE="0664", GROUP="plugdev" #Philips SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0664", GROUP="plugdev" #PMC-Sierra SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0664", GROUP="plugdev" #Qualcomm SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0664", GROUP="plugdev" #SK Telesys SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0664", GROUP="plugdev" #Samsung SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0664", GROUP="plugdev" #Sharp SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0664", GROUP="plugdev" #Sony SUBSYSTEM=="usb", ATTR{idVendor}=="054c", MODE="0664", GROUP="plugdev" #Sony Ericsson SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0664", GROUP="plugdev" #Teleepoch SUBSYSTEM=="usb", ATTR{idVendor}=="2340", MODE="0664", GROUP="plugdev" #Toshiba SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0664", GROUP="plugdev" #ZTE SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", MODE="0664", GROUP="plugdev" </file> Dopo aver creato la regola assicuriamoci che abbia i permessi giusti: # chmod 644 /etc/udev/rules.d/51-android.rules Ricarichiamo le regole udev: # udevadm control --reload-rules Come ultimo passo è necessario che l'utente appartenga al gruppo ''plugdev'': # usermod -aG plugdev <user> Ri-logghiamoci, ed ora possiamo accedere via MTP ai file presenti nel nostro smartphone ed utilizzare ''adb'' senza problemi. ===== Per maggiori informazioni ===== * Android Developer: USB VendorID - http://developer.android.com/tools/device.html#VendorIds * Cyanogenmod: UDEV - http://wiki.cyanogenmod.org/w/UDEV {{tag>how-to linux android udev mtp}} how-to/android-and-udev.txt Last modified: 9 years agoby Giuseppe Di Terlizzi Log In