Debian e il controllo di servizi e demoni: differenze tra le versioni

m
(→‎netstat: completamento)
m (→‎netstat: typos)
Riga 1: Riga 1:
[[immagine:Hp-compaq-nx6110.jpg|frame|right|HP Compaq nx6110]]
In questa guida vedremo come configurare la connessione tra la nostra Debian box ed un cellulare Nokia 7210.
Il portatile HP Compaq NX 6110 viene certificato da HP come compatibile al 100% con GNU/Linux. HP distribuisce opzionalmente (almeno ufficialmente, io non ne ho trovati disponibili) questi portatili senza alcun sistema operativo ed ha lavorato con Ubuntu per utilizzare hardware pienamente funzionante anche con GNU/Linux.  


''Guida segnalata su [http://tuxmobil.org/hp_compaq.html TuxMobil] e [http://www.linux-on-laptops.com/hp.html Linux On Laptops]''
Alcune doverose precisazioni:
* il kernel utilizzato � un vanilla 2.6.13.4, ma vedremo i moduli necessari in modo da poter adattare la guida ad altre versioni;
* il cavo di collegamento USB utilizzato � un '''BeKonnekt BKPIKMM7250''', commercializzato da CellularLine al prezzo di circa 30 euro. Non viene indicata la sua compatibilit� con GNU/Linux e tantomeno viene fornito supporto agli utenti: vedremo come farla in barba al closed-source e goderci il nostro cellulare;
* il software utilizzato � gnokii, versione 0.6.9 pacchettizzato Debian (repository di testing).


=Hardware=
''Guida segnalata su [http://tuxmobil.org/phones_survey_nokia.html TuxMobil]''
* Processore: Intel(R) Pentium(R) M processor 1.50GHz
* Memoria RAM: 512Mb
* Scheda Video: Intel 915GM
* Scheda Audio: Intel AC'97 (modem)
* Scheda Ethernet: Broadcom BCM 4401 100 Base TX
* Scheda Wireless: Intel PRO/Wireless LAN 2200 BG mini PCI


=Output di lspci=
=Operazioni preliminari=
<pre>Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)
==Configurazione del kernel==
VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)
Il cavo USB che mette in comunicazione PC e cellulare � dotato di un chip che converte il segnale proveniente dal telefono e lo invia sulla porta USB emulando una connessione seriale.
Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)
USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)
USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)
USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)
USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)
USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCIController (rev 03)
PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3)
Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03)
Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 03)
ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03)
IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 03)
Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)
CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller
FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host Controller
Ethernet controller: Broadcom Corporation BCM4401-B0 100Base-TX (rev 02)</pre>


=Configurazione=
Da console � facilmente individuabile quale sia il chip utilizzato:
==Kernel vanilla 2.6.12 - 2.6.13==
<pre>$ lsusb
Metto a disposizione degli interessati il file di configurazione per i kernel [[Kernel config per HP Compaq NX 6110| 2.6.12 e 2.6.13]] (dovrebbe funzionare anche con altre versioni comunque). Andate al link, copiate il testo e incollatelo in un file sul vostro PC e quindi spostatelo nella directory dove risiedono i sorgenti del kernel che volete compilare (normalmente /usr/src/linux/) rinominandolo in ''.config''.
Bus 005 Device 001: ID 0000:0000
{{box|Nota Bene: Filesystems|Il kernel � configurato per fornire supporto ai filesystems ext2 e reiserFS (oltre a VFAT, NTFSrw e NCPFS). Se la vostra installazione prevede l' uso di altri filesystems, '''� necessario''' abilitarli prima di ricompilare il kernel.}}
Bus 004 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 003: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 002 Device 002: ID 04b3:310b IBM Corp. Red Wheel Mouse
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 001: ID 0000:0000</pre>
possiamo vedere che il device 003 sul bus 002 corrisponde ad una porta seriale e che il chip � il PL2303 di Prolific Technology. Si tratta di un chip supportato dal kernel linux: tutto quello che dobbiamo fare consiste nell' abilitare almeno come moduli il supporto generico alle connessioni seriali USB e quello specifico per il chip in nostro possesso.


==Processore, frequency scaling e ACPI==
Le voci da abilitare (le trovate nella sezione Device Drivers/USB) sono:
Il kernel cos� configurato supporta le tecnologie di scaling per la frequenza della CPU. Dato che il supporto � compilato come modulo, � necessario che esso venga caricato prima di poter essere disponibile (modulo '''speedstep-centrino'''. Offre inoltre il supporto per il demone '''cpufreqd'''. Per installare questo demone � sufficiente:
<pre># apt-get install cpufreqd</pre>
E' abilitato anche il supporto per l' ACPI (battery, button, fan, ecc...)
==Server grafico (Xfree86 e Xorg) e accellerazione 3D==
Il supporto alla scheda grafica ed all' accellerazione 3D sono compilati nel kernel di cui sopra.
Il file [[Configurazione di Xorg per HP Compaq NX 6110 | xorg.conf]] rappresenta la configurazione per Xorg e prevede l' abilitazione per il DRI (accellerazione 3D) e l' uso simultaneo del touchpad e del mouse.
Il file di configurazione � perfettamente funzionante anche per Xfree86 (� sufficiente rinominarlo)


==Scheda Audio e ALSA==
<pre>CONFIG_USB_SERIAL=m
La scheda audio funziona perfettamente con ALSA.
CONFIG_USB_SERIAL_PL2303=m</pre>
Tutto quello che dobbiamo fare consiste in:
Controllate se il vostro kernel gi� configurato per l' utilizzo di questi moduli:
<pre># apt-get install alsa-base alsa-source alsa-utils
<pre>$ cat /usr/src/linux/.config |grep CONFIG_USB_SERIAL</pre>
# alsaconf</pre>
Scegliamo la nostra scheda da quelle disponibili ed il gioco fatto.
==Modem==
Il modem � uno SmartLink, supportato da GNU/Linux senza eccessivi patemi. Assicuriamoci che il modulo '''snd_intel8x0m''' venga caricato dal kernel e procediamo a scaricare il software necessario.


Debian mette a disposizione il pacchetto ''slmodem'', che fornisce le utilities e il demone necessari al controllo del modem. Installiamolo con il comando:
se cos� non fosse dovete abilitarli e ricompilare il kernel.
<pre># apt-get install sl-modem-daemon</pre>


==Scheda Ethernet Broadcom BCM 4401==
Fatto questo riavviate e proseguiamo.
Il supporto alla scheda ethernet � fornito nel kernel. Funziona anche con le immagini del kernel 2.6.8 installate da Debian per default.
==Scheda wireless Intel PRO/Wireless LAN 2200 BG mini PCI==
Per la configurazione di questa scheda, vi rimando alla guida [[Intel_PRO/Wireless_2200BG| Intel PRO Wireless 2200BG]].


Per abilitare la bella luce blu che segnala il link wireless dobbiamo impostare il parametro "led" per il modulo ipw2200.
==Verifica del collegamento==
Una volta preparato il kernel, verifichiamo che esso rilevi correttamente il cavetto USB.


Operiamo come segue:
Apriamo una console e logghiamoci come utente '''root''', in modo da poter controllare i messaggi inviati dal sistema:
<pre># touch /etc/modprobe.d/ipw2200
# echo "options ipw2200 led=1" > /etc/modprobe.d/ipw2200</pre>


=Abilitare il reboot=
<pre># tail -f /var/log/messages</pre>
La configurazione standard di Grub, non permette al sistema di riavviarsi. &Egrave; quindi necessario aggiungere il paramentro ''reboot=b'' alla direttiva ''kernel'' nel nostro file menu.lst.


----
Ora colleghiamo il cavello ad una presa USB, dovremmo osservare qualcosa di questo tipo:
autore: [[Utente:Keltik|keltik]] 07:47, Set 17, 2005 (EDT)
 
<pre>Oct 30 20:12:55 localhost kernel: usb 2-2: new full speed USB device using uhci_hcd and address 4
Oct 30 20:12:55 localhost kernel: usbcore: registered new driver usbserial
Oct 30 20:12:55 localhost kernel: drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0
Oct 30 20:12:55 localhost kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for PL-2303
Oct 30 20:12:55 localhost kernel: pl2303 2-2:1.0: PL-2303 converter detected
Oct 30 20:12:55 localhost kernel: usb 2-2: PL-2303 converter now attached to ttyUSB0
Oct 30 20:12:55 localhost kernel: usbcore: registered new driver pl2303
Oct 30 20:12:55 localhost kernel: drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor driver v0.12
Oct 30 20:12:55 localhost usb.agent[6999]:      pl2303: loaded successfully</pre>
 
Notiamo che viene rilevata una nuova periferica USB seriale e che per essa viene caricato il driver pl2303, relativo al chip del nostro cavetto. La cosa pi� importate consiste nell' identificare quale porta seriale viene assegnata al dispositivo, perch� ci sar� necessaria in seguito. In qusto caso la porta � la '''ttyUSB0'''.
 
=Utilizzo di gnokii=
 
La comunit� del software libero ha sviluppato un ottimo programma per interagire con il nostro cellulare, che non ci far� rimpiangere la Nokia Data Suite. Si tratta di [http://www.gnokii.org Gnokii], disponibile anche come pacchetto Debian.
 
==Installare Gnokii==
 
Prima di tutto installiamo Gnokii:
 
<pre># apt-get install gnokii
Lettura della lista dei pacchetti in corso... Fatto
Generazione dell'albero delle dipendenze in corso... Fatto
I seguenti pacchetti verranno inoltre installati:
  libgnokii2
I seguenti pacchetti NUOVI (NEW) saranno installati:
  gnokii libgnokii2</pre>
confermiamo l' installazione e proseguiamo.
 
==Configurare Gnokii==
 
Gnokii necessita di essere configurato prima che sia possibile utilizzarlo. Questa operazione va fatta attraverso la creazione del file ''.gnokiirc'' all' interno della nostra home:
 
<pre>$ touch .gnokiirc</pre>
 
Ora dobbiamo compilare il file appena creato. Il pacchetto gnokii fornisce alcuni files di esempio. Di seguito ecco cosa inserire all' interno di gnokiirc per il nostro Nokia 7210:
 
<pre>[global]
port = /dev/ttyUSB0
model =6510
initlength = default
connection = serial
use_locking = yes
serial_baudrate = 19200
smsc_timeout = 10
[gnokiid]
bindir = /usr/local/sbin/
[connect_script]
TELEPHONE = 12345678
[disconnect_script]
[logging]
debug = on
rlpdebug = off
xdebug = off</pre>
 
Gli elementi pi� interessanti del file sono sicuramente
; port = ''che corrisponde alla porta creata dal driver subserial''.
; model = ''che indica quale driver utilizzare per il cellulare. 6510 � quello indicato per il nostro 7210''.
; connection = ''che indica il tipo di cavo utilizzato''.
 
&Egrave; necessario che il device ttyUSB0 sia leggibile e scrivibile da parte del nostro utente. Usbserial crea il dispositivo assegnando i permessi di lettura e scrittura all' utente root ed al gruppo dialout, come possiamo vedere con un ''ls'':
 
<pre>$ ls -l /dev |grep ttyUSB0
crw-rw----  1 root dialout 188,  0 2005-10-30 20:12 ttyUSB0</pre>
 
Se non siamo che il nostro utente appartenga al gruppo dialout, � sufficiente inserirlo:
 
<pre># adduser nome_utente dialout</pre>
 
==Verifica della configurazione==
 
Per verificare che il sistema sia effettivamente in grado di comunicare con il cellulare utilizziamo questa procedura:
 
<pre>$ gnokii --identify
GNOKII Version 0.6.9
LOG: debug mask is 0x1
phone instance config:
model: 6510
port_device: /dev/ttyUSB0
connection_type: 2
init_length: 0
serial_baudrate: 19200
serial_write_usleep: -1
hardware_handshake: 0
require_dcd: 0
smsc_timeout: 100
connect_script:
disconnect_script:
rfcomm_cn: 1
sm_retry: off
Connecting
Serial device: opening device /dev/ttyUSB0
Serial device: setting RTS to low and DTR to low
Serial device: setting RTS to high and DTR to high
Serial device: setting speed to 19200
Serial device: setting speed to 115200
Getting model...
Message sent: 0x1b / 0x0006
00 01 00 07 01 00                              |
[Received Ack of type 1b, seq: 80]
[Sending Ack of type 1b, seq: 4]
Message received: 0x1b / 0x002e
01 31 00 08 00 01 58 28 00 23 56 20 35 2e 35 32 |  1    X( #V 5.52
0a 31 39 2d 30 39 2d 30 33 0a 4e 48 4c 2d 34 0a |  19-09-03 NHL-4
28 63 29 20 4e 6f 6b 69 61 2e 0a 43 00 00      | (c) Nokia. C
Received message type 1b
model length: 5
Received model NHL-4
Identifying...
Message sent: 0x1b / 0x0005
00 01 00 00 41                                  |    A
Message sent: 0x1b / 0x0006
00 01 00 07 01 00                              |
[Received Ack of type 1b, seq: 1]
[Received Ack of type 1b, seq:  2]
[Sending Ack of type 1b, seq: 5]
Message received: 0x1b / 0x001a
01 31 00 01 00 01 41 14 00 10 33 35 32 35 32 32 |  1    A  352522
30 30 33 32 38 34 37 31 35 00                  | 003284715
Received message type 1b
Received imei 352522003284715
[Sending Ack of type 1b, seq: 6]
Message received: 0x1b / 0x002e
01 31 00 08 00 01 58 28 00 23 56 20 35 2e 35 32 |  1    X( #V 5.52
0a 31 39 2d 30 39 2d 30 33 0a 4e 48 4c 2d 34 0a |  19-09-03 NHL-4
28 63 29 20 4e 6f 6b 69 61 2e 0a 43 00 00      | (c) Nokia. C
Received message type 1b
Received revision V 5.52
model length: 5
Received model NHL-4
IMEI        : 352522003284715
Manufacturer : Nokia
Model        : NHL-4
Revision    : V 5.52
Serial device: closing device</pre>
 
Possiamo vedere come il collegamento sia effettivamente attivo.
 
==Uso di Gnokii==
 
Il pacchetto Gnokii fornisce una serie di programmi, il pi� utile dei quali � senzaltro '''xgnokii''', che ci permette di interagire in modo intuitivo e tramite interfaccia grafica con il nostro cellulare.
 
Lanciando xgnokii da console, o utilizzando la voce ad esso relativa presente nel menu, potremo importare, esportare e fare il backup della nostra rubrica, agenda, calendario, messaggi. Potremo anche comporre messaggi SMS e inviarli ad uno o pi� numeri telefonici presenti in rubrica o inseriti manualmente, leggere i messaggi ricevuti, ecc...
 
Ecco alcuni screenshots di xgnokii in azione sul mio portatile.
 
[[Immagine:Interfaccia.png|thumb|left|Interfaccia principale di xgnokii]]
[[Immagine:Calendario.png|thumb|left|Gestione del calendario di xgnokii]]
[[Immagine:Messaggi.png|thumb|left|Gestione dei messaggi di xgnokii]]
[[Immagine:Rubrica.png|thumb|left|Gestione della rubrica di xgnokii]]
806

contributi