Collegare lo smartphone a Linux via Bluetooth
In alcuni casi si vorrà trasferire i file dallo smartphone al PC senza voler usare cavi e cavetti, per questo si può usare il Bluetooth che si trova spesso nei portatili. Qui cercherò di mostrare una strada per farlo sui sistemi GNU\Linux. Configurazione delle impostazioni Bluetooth Se abbiamo GNOME come desktop environment, andiamo in Impostazioni di sistema e scegliamo Bluetooth o impostazioni Bluetooth
Slackware Linux e il Bluetooth

ATTENZIONE: la seguente guida è stata realizzata nel 2008 per Slackware Linux. Molte delle indicazioni potrebbero essere obsolete. Introduzione Questo “how to” spiega come configurare la propria linux box, in modo da sfruttare il modem del vostro smartphone, via Bluetooth, di trasferire i file tra cellulare e PC e di comandare la propria linuxbox dal telefono. Come premessa non garantisco che la seguente guida sia compatibile con altre distribuzioni GNU/Linux e con altri accessori e periferiche, in quanto il test è limitato solo a un PC con le seguenti caratteristiche: PC: Portatile Toshiba A60 Satellite P4 Sistema operativo: Slackware 10.2 con kernel 2.6.13-2 Adattatore: Bluetooth adapter USB “ROPER” class 2 (ROBTC2SW-USB) Cellulare: Nokia 6600 Indice Configurazione del kernel Installazione del software (BlueZ) Configurazione interfaccia Bluetooth Configurazione degli script di connessione per il GPRS Dati di accesso di provider italiani Utilizzo del DNS Trasferimento file con il Bluetooth Comandare il PC con il Nokia 6600 Licenza e condizioni d’uso Contatti Configurazione del kernel Da shell digitiamo: # su ed inseriamo la password di root, poi # cd /usr/src/linux-2.6.13.2/ # make menuconfig ci portiamo nella sezione “Networking” e abilitiamo nel seguente modo i moduli: Abilitiamo come in figura qui sopra, il “Bluetooth Subsystem support” e entriamo (tasto INVIO) nella sottosezione: Entriamo nella sezione Bluetooth device drivers e selezioniamo i seguenti moduli: usciamo dal menu, selezionando exit, e alla domanda se salvare o no il config, diamo si. Poi digitiamo dentro la cartella /usr/src/linux-2.6.13.2: # make -j5 bzImage # make -j5 modules # make modules_install # mv arch/i386/boot/bzImage /boot/vmlinuz-2.6.13.2 # mv .config /boot/config-2.6.13.2 # mv System.map /boot/System.map-2.6.13.2 # cd /usr/src # rm linux # ln -s /usr/src/linux-2.6.13.2 /usr/src/linux # lilo Riavviamo la nostra linux box! Attenzione: al posto di 2.6.13.2 mettete la versione del vostro kernel! Se non la sapete digitate da shell: # uname -r Installazione del software (BlueZ) Per interfacciare la nostra chiavetta Bluetooth abbiamo bisogno dei pacchetti BlueZ, cioe’ di uno stack per le periferiche Bluetooth che consente loro, di comunicare col nostro pc. Gli archivi dei sorgenti sono presenti sul sito http://www.bluez.org/ e sono i seguenti: bluez-libs bluez-utils bluez-pin bluez-firmware bluez-hcidump bluez-hciemu bluez-sdp scompattiamo tutti i pacchetti tranne bluez-pin e uno per uno in successione, digitiamo: # tar xzvf bluez-$pacchetto.tar.gz # cd bluez-$pacchetto # ./configure # make && make install dove $pacchetto e’ il nome dell’archivio (es.libs, utils, hciemu,…) per bluez-pin, invece facciamo cosi: # tar xzvf bluez-pin.tar.gz # cd bluez-pin # make install-program Ora che abbiamo installato tutto il pacchetto software per il Bluetooth, passiamo a configurare il nostro PC! Configurazione interfaccia Bluetooth A questo punto, una volta installati i pacchetti necessari, configuriamo il nostro pinguino. Prima di inserire il nostro Bluetooth adapter nella porta USB, avviamo (se gia’ non lo è) il sistema di logging a messaggi istantaneo di Slack, digitando: # su inseriamo la pass di root, poi # syslogd # tail -f /var/log/messages inseriamo il dongler USB. Quindi dovrebbe apparire la conferma che il sistema ha riconosciuto l’inserimento della chiavetta. Altro metodo è digitare, dopo avere inserito la chiave Bluetooth: # dmesg dove apparira’ il log di sistema hub 1-0:1.0: over-current change on port 2 usb 2-3: new full speed USB device using ohci_hcd address 2 Ora carichiamo l’interfacciamento USB con # modprobe hci_usb Bluetooth: HCI USB driver ver 2.8 usbcore: registered new driver hci_usb e controlliamo se è stato caricato con # lsmod Se tutto è andato a buon fine, cioè se appare una lista in cui è presente anche hci_usb, allora attiviamo il bluetooth sul nostro nokia e carichiamo l’interfaccia della chiave usb con # hciconfig hci0 up e facciamo uno scan dei dispositivi bluetooth con # hcitool scan il risultato dovrebbe essere questo Scanning … 00:0E:6T:62:F9:7E Nokia6600 dove 00:0E:6T:62:F9:7E è il MAC del cellulare, cioè il suo indirizzo fisico. N.B. Ovviamente il MAC cambia da dispositivo a dispositivo! Ora dobbiamo modificare il file del pin, che si trova in /etc/bluetooth/ e si chiama appunto pin. # cd /etc/bluetooth # pico pin ed inseriamo una stringa numerica che sara’ il nostro pin (sara’ richiesto come autenticazione dal Nokia 6600) Per quanto riguarda i permessi decidete voi se volete che il file sia condiviso con altri utenti; il comando, comunque, è # chmod PERMESSI pin es. chmod 777 pin oppure chmod +x pin … Ora bisogna modificare il file di configurazione hcid.conf # pico /etc/bluetooth/hcid.conf e settarlo nel modo seguente: options { autoinit yes; security auto; pairing multi; pin_helper /etc/bluetooth/pin; } device { name “QuelloCheVolete”; #lasciate la classe locale inalterata class … iscan enable; pscan enable; lm accept; lp rswitch,hold,sniff,park; } ora attiviamo il servizio hcid con # hcid e creiamo un collegamento fra il nostro computer e il nokia, con # rfcomm bind 0 MAC_DEL_CEL 1 Bluetooth: RFCOMM ver 1.5 Bluetooth: RFCOMM socket layer initialized Bluetooth: RFCOMM TTY layer initialized dove bind 0 setta il numero del dispositivo e 1 è il canale di comunicazione. Questo comando ha appena creato un link al nokia, che si trova in /dev/rfcomm0 . Ora dobbiamo inserire il MAC del cellulare nel file di configurazione di rfcomm0: # pico /etc/bluetooth/rfcomm.conf rfcomm0 { bind no; device MAC_DEL_CEL; channel 1; comment “commento sulla connessione”; } Per sapere i servizi del cellulare che possiamo sfruttare digitiamo da riga di comando: # sdpd Bluetooth: L2CAP ver 2.7 Bluetooth: L2CAP socket layer initialized # sdptool browse MAC_DEL_CEL e apparira’ una cosa del genere: … … Service Name: Dial-up Networking Service RecHandle: 0x10001 Service Class ID List: “Dialup Networking” (0x1103) “Generic Networking” (0x1201) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 1 Language Base Attr