Accesso alla memoria dei cellulari Nokia su USB e PC Suite

Ven, 11/06/2010 - 16:36

Accesso alla memoria dei cellulari Nokia su USB e PC Suite

Inviato da Moreno 0 commenti
1) Introduzione

Tanto carine le connessioni Bluetooth però che lentezza!!
Un po' stufo di questa lentezza mi sono messo a giocare con la connessione diretta del cellulare Nokia su porta USB usando però la connessione di tipo PC Suite che permette di usare il modem e di accedere a tutte le memorie del telefono.

La procedura che ho trovata è complicata dal fatto che i dispositivi creati dinamicamente in /dev/bus/usb/... hanno permessi 664 mentre per poter funzionare correttamente occorre che siano impostati a 666.
La soluzione, molto pulita, che ho trovato a questo problema può essere utilizzata anche per risolvere problemi simili.

Ho provato la procedura sia con la Mandriva 2010.0 che con la 2010.1 e funziona bene con entrambe le versioni
2) Procedura

La procedura da seguire è la seguente:

2.1) Apriamo un terminale

Innanzi tutto occorre aprire un terminale con Menu -> Strumenti -> konsole

2.2) Diventiamo root

$ su -
Password: LaPasswordDiRoot
#

2.3) Installiamo i pacchetti necessari

# urpmi --force obexfs obexftp
 
installazione di /public/Linux/Mandriva/i586/Cooker/main/obexftp-0.23-4mdv2010.1.i586.rpm
/public/Linux/Mandriva/i586/Cooker/contrib/obexfs-0.12-1mdv2010.0.i586.rpm
/public/Linux/Mandriva/i586/Cooker/main/libobexftp0-0.23-4mdv2010.1.i586.rpm
In preparazione... ########################################
 1/3: libobexftp0 ########################################
 2/3: obexftp ########################################
 3/3: obexfs ########################################
#

2.4) Colleghiamo il telefono ed attiviamo connessione PC Suite
2.5) Verifichiamo che il telefono sia correttamente rilevato

# obexftp -u
 
Found 2 USB OBEX interfaces
 
0 (Manufacturer: Nokia Product: Nokia 6110 Navigator Serial: (null) Interface description: SYNCML-SYNC)
1 (Manufacturer: Nokia Product: Nokia 6110 Navigator Serial: (null) Interface description: PC Suite Services)
 
Use '-u interface_number' to connect
Nothing to do. Use --help for help.
#

Il telefono viene correttamente rilevato mostrano i 2 servizi disponibili, a noi interessa il servizio 1 relativo a PC Suite

2.6) Identifichiamo il telefono

# 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 002 Device 002: ID 058f:9254 Alcor Micro Corp. Hub
Bus 002 Device 003: ID 1241:1503 Belkin Keyboard
Bus 002 Device 004: ID 04fc:0801 Sunplus Technology Co., Ltd
Bus 002 Device 005: ID 10d5:55a4 Uni Class Technology Co., Ltd
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 002: ID 0421:046e Nokia Mobile Phones 6110 Navigator
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
#

vengono elencati tutti i dispositivi collegati, a noi interessa questa riga:

Bus 004 Device 002: ID 0421:046e Nokia Mobile Phones 6110 Navigator

Ed in particolare gli identificativi del dispositivo che sono:

ID Venditore (idVendor) 0421
ID Dispositivo (idProduct) 046e

Questi valori ci serviranno per poter creare la regola di udev per il dispositivo.

2.7) Scolleghiamo il telefono
2.8) Modifichiamo il file di regole udev 60-libpisock.rules

# kwrite /etc/udev/rules.d/60-libpisock.rules

Si può usare l'editor che si preferisce, io di solito uso quello di mc

Dovrebbe apparire un file simile a questo (N.B. Il file è stato ridotto)

# $Id: 60-libpisock.rules,v 1.4 2007/02/16 18:26:41 desrod Exp $
#
# udev rules file for pilot-link's libpisock library, enabled for libusb
#
SUBSYSTEMS!="usb", ACTION!="add", GOTO="libpisock_rules_end"
 
# Sony handheld devices
ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0038", GROUP="dialout", MODE="0664", ENV{ACL_MANAGE}="1"
ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0066", GROUP="dialout", MODE="0664", ENV{ACL_MANAGE}="1"
ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0095", GROUP="dialout", MODE="0664", ENV{ACL_MANAGE}="1"
 
.....
.....
 
# Garmin iQue 3600
ATTRS{idVendor}=="091e", ATTRS{idProduct}=="0004", GROUP="dialout", MODE="0664", ENV{ACL_MANAGE}="1"
ATTRS{idVendor}=="0c88", ATTRS{idProduct}=="0021", GROUP="dialout", MODE="0664", ENV{ACL_MANAGE}="1"
 
# Tapwave Zodiac 1 & 2
ATTRS{idVendor}=="12ef", ATTRS{idProduct}=="0100", GROUP="dialout", MODE="0664", ENV{ACL_MANAGE}="1"
 
# Unknown device (can someone confirm?)
ATTRS{idVendor}=="4766", ATTRS{idProduct}=="0001", GROUP="dialout", MODE="0664", ENV{ACL_MANAGE}="1"
 
LABEL="libpisock_rules_end"

Occorre scrivere la seguente riga prima di LABEL="libpisock_rules_end"

ATTRS{idVendor}=="0421", ATTRS{idProduct}=="046e", MODE="0666"

Dove per i valori idVendor e idProduct andranno usati quelli ricavati al punto 2.6

Alla fine dovrebbe essere simile a questo

# Unknown device (can someone confirm?)
ATTRS{idVendor}=="4766", ATTRS{idProduct}=="0001", GROUP="dialout", MODE="0664", ENV{ACL_MANAGE}="1"
 
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="046e", MODE="0666"
 
LABEL="libpisock_rules_end"

Salviamo e chiudiamo l'editor.

2.9) Ricarichiamo le regole di udev

# udevadm control --reload-rules
#

2.10) Abbandoniamo root

# exit
$

2.11) Trasferiamoci nella home

$ cd ~
$

2.12) Colleghiamo il telefono ed attiviamo connessione PC Suite
2.13) Verifichiamo che ora il telefono sia riconosciuto correttamente

$ obexftp -u
 
If USB doesn't work setup permissions in udev or run as superuser.
Found 2 USB OBEX interfaces
 
0 (Manufacturer: Nokia Product: Nokia 6110 Navigator Serial: (null) Interface description: SYNCML-SYNC)
1 (Manufacturer: Nokia Product: Nokia 6110 Navigator Serial: (null) Interface description: PC Suite Services)
 
Use '-u interface_number' to connect
Nothing to do. Use --help for help.
$

Bene ora anche l'utente può operare.

2.14) Creiamo il punto di mount

$ md Nokia
$

2.15) Montiamo il cellulare

$ obexfs -u 1 ~/Nokia/
 
If USB doesn't work setup permissions in udev or run as superuser.
$

2.16) Verifichiamo che sia correttamente montato

$ ls -l ~/Nokia/
 
totale 1
drwxr-xr-x 1 kde kde 0 1970-01-01 00:59 C:/
drwxr-xr-x 1 kde kde 0 1970-01-01 00:59 E:/
$

2.17) Smontiamo il cellulare

$ fusermount -u ~/Nokia/
$

2.18) Verifichiamo che sia correttamente smontato

$ ls -l ~/Nokia/
 
totale 0
$

2.20) chiudiamo il terminale
2.21) Creazione Icona montaggio

- Spostiamoci su di un punto vuoto del desktop
- Click destro sul desktop -> Crea Nuovo -> Collegamento ad applicazione...
- Click su Generale
- Scegliamo l'icona e Assegniamo il nome del link "Monta NOKIA"

- Click su Applicazione
- Nel campo Comando scrivere obexfs -u 1 ~/Nokia/

- Click su Opzioni Avanzate
- Togliere la spunta a "Abilita notificazione all'avvio"
- OK
- OK

2.22) Creazione Icona smontaggio

- Spostiamoci su di un punto vuoto del desktop
- Click destro sul desktop -> Crea Nuovo -> Collegamento ad applicazione...
- Click su Generale
- Scegliamo l'cona e Assegniamo il nome del link "Smonta NOKIA"

- Click su Applicazione
- Nel campo Comando scrivere fusermount -u ~/Nokia/

- Click su Opzioni Avanzate
- Togliere la spunta a "Abilita notificazione all'avvio"
- OK
- OK

D'ora in poi potremo accedere al nostro cellulare in modo completo e con una velocità adeguata.

Ciao Ciao, Moreno