Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 1103

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>Linux Serial HOWTO: Risoluzione dei Problemi</TITLE>
<LINK HREF="Serial-HOWTO-15.html" REL=next>
<LINK HREF="Serial-HOWTO-13.html" REL=previous>
<LINK HREF="Serial-HOWTO.html#toc14" REL=contents>
</HEAD>
<BODY>
<A HREF="Serial-HOWTO-15.html">Avanti</A>
<A HREF="Serial-HOWTO-13.html">Indietro</A>
<A HREF="Serial-HOWTO.html#toc14">Indice</A>
<HR>
<H2><A NAME="s14">14. Risoluzione dei Problemi</A></H2>

<H2><A NAME="ss14.1">14.1 Ricevo sempre il messaggio ``line <EM>NNN</EM> of inittab invalid''</A>
</H2>

<P>Assicuratevi che state utilizzando la corretta sintassi per la vostra versione di <CODE>init</CODE>.
Le differenti versioni di <CODE>init</CODE> che sono state rilasciate
utilizzano sintassi differenti per il file
<CODE>/etc/inittab</CODE>. Assicuratevi che state anche usando la corretta
sintassi per la vostra versione di <CODE>getty</CODE>. 
<P>
<H2><A NAME="ss14.2">14.2 Quando provo ad effettuare una chiamata all'esterno, ricevo il messaggio ``/dev/cua<EM>N</EM>: Device or resource busy''</A>
</H2>

<P>Questo problema &egrave; dovuto al fatto che il DCD o il DTR non sono impostati correttamente. Il DCD deve essere impostato unicamente quando persiste una connessione ( per esempio quando qualcuno si &egrave; collegato a voi chiamando dall'esterno ), e non quando <CODE>getty</CODE> sta monitorando la porta.
Controllate che il vostro modem sia configurato per impostare il DCD solo quando avviene una connessione. Il DTR deve essere invece usato quando  qualunque altra cosa sta monitorando la porta, come ad esempio <CODE>getty</CODE>, <CODE>kermit</CODE>, o qualche altro programma.
<P>Un'altra causa dell'errore ``device busy'' &egrave; che avete impostato la vostra porta seriale con un interrupt gi&agrave; in uso da qualche altra periferica hardware. 
Quando ogni periferica viene inizializzata questa richiede al kernel il permesso di usare il suo interrupt hardware. Il sistema operativo tiene traccia di quali interrupts sono assegnati e a chi, e se il vostro interrupt &egrave; gi&agrave; in uso, la vostra periferica non verr&agrave; inizializzata correttamente. In realt&agrave; essa non ha la minima idea di cosa stia succedendo, e l'unica cosa che pu&ograve; fare &egrave; rispondere con ``device-busy'' quando tentate di usarla.
Controllate tutti gli interrupt di tutte le vostre periferiche ( porte
seriali, schede ethernet, controller SCSI, ecc. ). Evitate conflitti
di questo genere. 
<P>
<P>
<H2><A NAME="ss14.3">14.3 Continuo a ricevere il messaggio ``Getty respawning too fast: disabled for 5 minutes''</A>
</H2>

<P>Assicuratevi che il vostro modem sia configurato correttamente. Controllate i registri <CODE>E</CODE> e <CODE>Q</CODE>.
Questo errore pu&ograve; capitare quando il modem cerca di dialogare con <CODE>getty</CODE>.
<P>
<P>Assicuratevi anche che avete lanciato <CODE>getty</CODE> nel modo corretto dal vostro <CODE>/etc/inittab</CODE>. Usando una sintassi errata oppure una periferica sbagliata si possono verificare seri problemi.
<P>
<P>Verificate che la sintassi del vostro <CODE>/etc/gettydefs</CODE> sia corretta usando questa procedura:
<BLOCKQUOTE><CODE>
<PRE>
linux# getty -c /etc/gettydefs
</PRE>
</CODE></BLOCKQUOTE>
<P>
<P>Questo errore si verifica anche quando fallisce l'inizializzazione di
<CODE>uugetty</CODE>. Fate riferimento alla sezione 
<A HREF="#nowork">getty o uugetty ancora non funzionano</A>.
<P>
<H2><A NAME="ss14.4">14.4 Le periferiche seriali sono lente, oppure funzionano in un sola direzione.</A>
</H2>

<P>     
Molto probabilmente avere un conflitto di IRQ. Assicuratevi che non ci
sia qualche IRQ condiviso. Verificate tutte le schede ( porte seriali,
schede ethernet, controller SCSI, ecc. ). Controllate le impostazioni
dei vari jumper e che i parametri per il programma <CODE>setserial</CODE>
siano corretti per tutte le vostre periferiche. Inoltre controllate
<CODE>/proc/ioports</CODE> e <CODE>/proc/interrupts</CODE> per eventuali
conflitti. 
<P>
<H2><A NAME="ss14.5">14.5 Il mio modem &egrave; bloccato dopo che qualcuno effettua una chiamata</A>
</H2>

<P>     
Questo pu&ograve; accadere quando il vostro modem non effettua il reset
quando il DTR cade. Io vedo i miei LED RD e SD letteralmente
impazzire quando questo accade a me. Avete bisogno di resettare il
vostro modem. Molti modem Hayes-compatibili eseguono questa operazione
con <CODE>&amp;D3</CODE>, ma sul mio USR Courier devo impostare <CODE>&amp;D2</CODE> e
<CODE>S13=1</CODE>. Controllate sul manuale del vostro modem. 
<P>
<H2><A NAME="ss14.6">14.6 Ho un terminale connesso al mio PC, ma quando tento di effettuare un login tutto si blocca.</A>
</H2>

<P>
<UL>
<LI>Se state usando <CODE>getty</CODE>:
Molto probabilmente non avete <CODE>CLOCAL</CODE> nel vostro <CODE>/etc/gettydefs</CODE> per il vostro terminale, e molto probabilmente non state usando un cavo pienamente null-modem. Avete bisogno di <CODE>CLOCAL</CODE>, che indica a Linux di ignorare i segnali di controllo del modem. Ecco come dovrebbe apparire il tutto:
<BLOCKQUOTE><CODE>
<PRE>
 # 38400 bps Dumb Terminal entry
 DT38400# B38400 CS8 CLOCAL # B38400 SANE -ISTRIP CLOCAL #@S @L login: #DT38400

 # 19200 bps Dumb Terminal entry
 DT19200# B19200 CS8 CLOCAL # B19200 SANE -ISTRIP CLOCAL #@S @L login: #DT19200

 # 9600 bps Dumb Terminal entry
 DT9600# B9600 CS8 CLOCAL # B9600 SANE -ISTRIP CLOCAL #@S @L login: #DT9600
 
</PRE>
</CODE></BLOCKQUOTE>

Successivamente <CODE>terminate</CODE> il processo <CODE>getty</CODE> in modo che uno nuovo entrer&agrave; in esecuzione con le nuove impostazioni.
</LI>
<LI>Se state usando <CODE>agetty</CODE>:
Aggiungete il flag <CODE>-L</CODE> alla linea di <CODE>agetty</CODE> nel vostro <CODE>/etc/inittab</CODE>. Questo far&agrave; ignorare i segnali di controllo del modem. Quindi riavviate <CODE>init</CODE> digitando <CODE>init q</CODE>. La configurazione dovrebbe essere pi&ugrave; o meno cos&igrave;:
<BLOCKQUOTE><CODE>
<PRE>
 s1:345:respawn:/sbin/agetty -L 9600 ttyS1 vt100
 
</PRE>
</CODE></BLOCKQUOTE>
</LI>
</UL>
<P>
<H2><A NAME="ss14.7">14.7 Ad alta velocit&agrave; il mio modem perde alcuni dati</A>
</H2>

<P>Se state tentando di utilizzare il vostro modem a una velocit&agrave;
superiore ai 38400 bps e non avete una UART 16550 allora dovete
aggiornarla. Leggete la sezione 
<A HREF="Serial-HOWTO-13.html#uart">Cosa sono le UART?</A>. 
<P>
<H2><A NAME="ss14.8">14.8 All'avvio del sistema Linux non riporta le periferiche seriali come le ho in precedenza configurate</A>
</H2>

<P>Questo &egrave; vero solo in parte. Linux non effettua nessuna verifica degli IRQ al momento del boot, effettua solo un rilevamento di periferiche seriali. 
Quindi, con una corretta impostazione, io ottengo questo all'avvio della macchina:
<BLOCKQUOTE><CODE>
<PRE>
Jan 23 22:25:28 misfits vmunix: tty02 at 0x03e8 (irq = 4) is a 16550A
</PRE>
</CODE></BLOCKQUOTE>
<P>Dovete usare <CODE>setserial</CODE> per comunicare a Linux quale IRQ state usando.
<P>
<H2><A NAME="ss14.9">14.9 <CODE>rz</CODE> e/o <CODE>sz</CODE> non funzionano quando chiamo la mia macchina Linux con un modem.</A>
</H2>

<P>Se Linux cerca la periferica <CODE>/dev/modem</CODE> quando tentate di
trasferire file, controllate i file <CODE>/etc profile</CODE> o <CODE>/etc
csh.cshrc</CODE>. 
Probabilmente esiste una serie di alias definiti qui in alcune
distribuzioni, come ad esempio Slackware. Questi alias confondono
l'operato dei programmi zmodem. 
Eliminateli, oppure correggeteli.
<P>
<H2><A NAME="ss14.10">14.10 Il mio schermo visualizza alcuni buffi caratteri</A>
</H2>

<P>Questo accade su console virtuali su cui sono inviate informazioni di
tipo binario direttamente allo schermo, oppure anche attraverso
connessioni seriali. 
Il modo per risolvere questo problema &egrave; di digitare <CODE>echo
^v^[c</CODE>. Per la serie con tutti i caratteri, ecco qua: 
<BLOCKQUOTE><CODE>
<PRE>
linux% echo &lt;ctrl>v&lt;esc>c
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H2><A NAME="nowork"></A> <A NAME="ss14.11">14.11 <CODE>getty</CODE> o <CODE>uugetty</CODE> ancora non funzionano</A>
</H2>

<P>Esiste una opzione chiamata <CODE>DEBUG</CODE> inclusa in <CODE>getty_ps</CODE>. Editate il vostro file di configurazione <CODE>/etc/conf.{uu}getty.ttyS</CODE><EM>N</EM> e aggiungete <CODE>DEBUG=</CODE><EM>NNN</EM>. Dove <EM>NNN</EM> &egrave; una delle seguenti combinazioni di numeri a seconda di cosa state cercando di debuggare:
<BLOCKQUOTE><CODE>
<PRE>
D_OPT   001            option settings
D_DEF   002            defaults file processing
D_UTMP  004            utmp/wtmp processing
D_INIT  010            line initialization (INIT)
D_GTAB  020            gettytab file processing
D_RUN   040            other runtime diagnostics
D_RB    100            ringback debugging
D_LOCK  200            uugetty lockfile processing
D_SCH   400            schedule processing
D_ALL   777            everything 
</PRE>
</CODE></BLOCKQUOTE>

Impostare <CODE>DEBUG=010</CODE> &egrave; un buon punto di partenza.
<P>Se state esegueneo <CODE>syslogd</CODE>, informazioni di debug appariranno nei vostro file di log. Se non state eseguendo il <CODE>syslogd</CODE> queste informazioni appariranno in <CODE>/tmp/getty:ttyS</CODE><EM>N</EM> per debuggare <CODE>getty</CODE> e <CODE>/tmp/uugetty:ttyS</CODE><EM>N</EM> per <CODE>uugetty</CODE>, e in <CODE>/var/adm/getty.log</CODE>. 
Osservate attraverso queste informazioni di debug che cosa sta accadendo. Molto spesso avrete bisogno di perfezionare qualche impostazione o qualche parametro nella vostra configurazione, oppure di riconfigurare il vostro modem.
<P>Potete anche provare <CODE>mgetty</CODE>. Alcune persone hanno pi&ugrave; fortuna usando questo software.
<P>
<HR>
<A HREF="Serial-HOWTO-15.html">Avanti</A>
<A HREF="Serial-HOWTO-13.html">Indietro</A>
<A HREF="Serial-HOWTO.html#toc14">Indice</A>
</BODY>
</HTML>