Differences between revisions 5 and 8 (spanning 3 versions)
Revision 5 as of 2011-01-15 19:29:57
Size: 29676
Editor: ?skizzhg
Comment: sync with english
Revision 8 as of 2014-03-23 19:08:17
Size: 30973
Comment: sync with English master
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
||<tablestyle="width: 100%;" style="border: 0px hidden">~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: [[HylaFax|English]] - Italiano-~||<style="text-align: right;border: 0px hidden"> (!) [[/Discussion|Discussion]]|| ~-[[DebianWiki/EditorGuide#translation|Traduzioni]]: [[HylaFax|English]] - Italiano-~
Line 19: Line 19:

== Xen / Virtualizzazione ==
'''Attenzione''' - È possibile che Hylafax abbia problemi durante l'esecuzione in un ambiente virtuale. L'invio e la ricezione con successo di fax sono molto legati a tempi corretti. Ci sono stati numerosi casi in cui una configurazione è corretta, ma un ambiente virtuale causa errori che sono difficili da diagnosticare.
Line 171: Line 174:
 * Un esempio di file !FaxDispatch potrebbe somigliare a questo: http://www.infocopter.com/know-how/hylafax/fax-dispatch.html (collegamento non funzionante, recuperabile [[http://web.archive.org/web/20080531000241/http://www.infocopter.com/know-how/hylafax/fax-dispatch.html|qui]]).  * Un esempio di file !FaxDispatch è contenuto nel file {{{/usr/share/doc/hylafax-server/examples/FaxDispatch.example}}}
Line 184: Line 187:

= Configurazione di email a fax con Exim =

Il messaggio email diventa la prima pagina e tutti gli allegati saranno inviati come pagine aggiuntive; tuttavia la gestione degli allegati non è perfetta, in particolare quella degli allegati JPEG. Per risultati migliori usare i PDF, dato che sembrano essere elaborati in maniera affidabile e sono già a dimensione di pagina.

I destinatari del fax devono avere un indirizzo nel formato seguente:

  nome@numerofax.fax

'''Router'''
{{{
exifax:
   driver = manualroute
   transport = exifax
   route_list ="*.fax"
}}}
'''Transport'''
{{{
exifax:
  driver = pipe
  user = faxmaster
  command ="/usr/bin/faxmail -n ${local_part}@${extract{1}{.}{$domain}}"
}}}
Line 273: Line 299:

Un altro che funziona con il modulo cdc_acm, testato solo per Hylafax, è il TRENDnet TFM-561U. In Debian Squeeze è Plug&Play.

lsusb info: {{{
Bus 007 Device 002: ID 0572:1329 Conexant Systems (Rockwell), Inc.
  idVendor 0x0572 Conexant Systems (Rockwell), Inc.
  idProduct 0x1329
}}}

Il (primo) device è {{{/dev/ttyACM0}}}. Sembra che ''faxaddmodem'' di Hylafax lo configuri correttamente.
Line 629: Line 665:
Non fare questo:
Line 633: Line 669:
Fare questo:
{{{
faxrm $(seq 1 100)
}}}
Line 638: Line 678:
== Francia ==
 * L'unica differenza è il codice del paese e il prefisso per chiamate internazionali.
== Generali ==
 * Per ragioni ovvie, si spera che il codice della nazione e i prefissi per la composizione dei numeri varino di nazione in nazione.

Traduzioni: English - Italiano


HylaFAX, un server fax open source avanzato.

Basato su http://lucasmanual.com/mywiki/FaxServer e http://www.aboutdebian.com/fax.htm

Installazione

apt-get install hylafax-server
  • Assicurarsi che il modem sia connesso, i modem esterni possono essere collegati tramite porta seriale o USB (quando si utilizza un convertitore seriale USB).

Xen / Virtualizzazione

Attenzione - È possibile che Hylafax abbia problemi durante l'esecuzione in un ambiente virtuale. L'invio e la ricezione con successo di fax sono molto legati a tempi corretti. Ci sono stati numerosi casi in cui una configurazione è corretta, ma un ambiente virtuale causa errori che sono difficili da diagnosticare.

Configurazione iniziale

Per iniziare la configurazione di hylafax eseguire l'utilità faxsetup.

faxsetup
  • Premendo invio si vedrà parecchio testo, faxsetup controlla le impostazioni di sistema.
  • Supponendo che non ci siano errori verrà visualizzato un menu simile al seguente:

        HylaFAX configuration parameters are:

        [1] Init script starts faxq:            yes
        [2] Init script starts hfaxd            yes
        [3] Start old protocol:                 no
        [4] Start paging protocol:              no
Are these ok [yes]? 
  • premere invio per rispondere yes

  • faxsetup creerà alcuni file di configurazione e chiederà il permesso di arrestare il processo faxq.

Modem support functions written to /var/spool/hylafax/etc/setup.modem.
Configuration parameters written to /var/spool/hylafax/etc/setup.cache.

Restarting HylaFAX server processes.

You have a HylaFAX scheduler process running.  faxq will be
restarted shortly, as soon as some other work has been completed.
Can I terminate this faxq process (24932) [yes]? 
  • Premere invio per rispondere yes

  • faxsetup chiederà il permesso di riavviare il processo hylafax server, premere invio per rispondere yes

  • Dal momento che non è ancora stato configurato un modem, faxsetup chiederà di eseguire "faxaddmodem", premere invio per rispondere yes

    • Inserire il nome del device di porta seriale al quale è collegato il modem-fax (assicurarsi che il modem sia collegato alla porta seriale e non alla parallela). Suggerimento: ttyS0 è per la prima porta seriale (COM1 sotto Windows/DOS) e ttyUSB0 è il primo adattatore USB-seriale.
    • Verranno ora richiesti alcuni valori, per la maggior parte di essi è possibile accettare i predefiniti premendo invio. I valori da inserire sono:

        * Prefisso della nazione (1 per gli USA)
        * Prefisso della regione (inserire quello della propria zona)
        * Numero telefonico del modem fax (nel formato +1.xxx.xxx.xxxx, per gli USA)
        * Stringa di identificazione locale (dovrebbe essere qualcosa di simile a 'Mio Server Fax' che verrà stampato sulla citazione dei fax in uscita)
        * Prefisso a lunga distanza (1 negli USA)
        * Prefisso internazionale (011 negli USA)
        * File di regole di composizione (accettare il predefinito)
        * Tracciamento durante le normali operazioni server (accettare il predefinito)
        * Tracciamento durante le operazioni di invio e ricezione (accettare il predefinito)
  • I prossimi valori hanno a che fare con i permessi di alcuni file creati. Per un gateway da fax a posta elettronica le impostazioni predefinite sono accettabili, ma se si desidera condividere i file della coda fax direttamente con un server FTP o HTTP sono necessarie altre autorizzazioni.
  • Continuare a inserire valori:

        * Modalità di protezione per fax ricevuti - se si desidera condividere i file direttamente inserire 0644, altrimenti accettare l'impostazione predefinita 0600 
        * Modalità di protezione per i registri di sessione - se si desidera condividere i file direttamente inserire 0644, altrimenti accettare l'impostazione predefinita 0600
        * Modalità di protezione per ttySx - per condividere il modem inserire 0666, 0600 se lo si utilizza solo con hylafax
        * Numero di squilli prima di rispondere - il valore predefinito è 1, impostarlo a 0 configura il server come un sistema fax di "solo invio"
        * Volume dell'altoparlante del modem, i valori validi sono OFF QUIET LOW MEDIUM HIGH; lo si può impostare su HIGH per fare delle prove e cambiarlo in OFF successivamente)
        * Argomenti da riga di comando per il programma getty (accettare i predefiniti)
        * Percorso del file delle lista di controllo degli accessi TSI (accettare il predefinito)
        * Percorso del file della lista di controllo degli accessi Caller-ID (accettare il predefinito)
        * File del carattere della citazione (accettare il predefinito)
        * Stringa del formato della citazione (accettare la predefinita)
        * Tempo prima di eliminare un file  di lock UUCP vecchio (accettare il predefinito)
        * Mantenere un file di lock UUCP durante le chiamate dati in entrata (accettare il predefinito)
        * Mantenere un file di lock UUCP durante le chiamate vocali in entrata (accettare il predefinito)
        * Percentuale di linee valide da accettare durante il controllo qualità della copia (accettare il predefinito)
        * Numero massimo di linee non valide consecutive da accettare durante il controllo qualità della copia (si consiglia di ridurre il valore predefinito da 5 a 3)
        * Numero massimo di pagine da accettare in un fax ricevuto (si consiglia di aumentare il valore predefinito a 25)
        * Nome del servizio syslog per i messaggi di tracciamento del server (il predefinito è "daemon" ma lo si può cambiare in "local7" se si invia il registro ad un server syslog remoto e si vuole separare il registro dei fax da altri messaggi)
        * Imposta l'UID a 0 per gestire CLOCAL (accettare il predefinito)
        * Usa il meccanismo di schedulazione disponibile per la priorità dei compiti (accettare il predefinito)
  • Verrà quindi chiesto di confermare i valori inseriti, premere invio per accettare.

  • setupfaxmodem dialogherà ora con il modem fax per determinare la velocità migliore per comunicare con esso e le classi fax che gestisce.
    • Se questo passaggio non riesce vi è un probabile problema di comunicazione con il modem, esaminare i rimedi possibili nella sezione Errori comuni.

  • Anche se il modem supporta sia la Classe 1 che la Classe 2, andrebbe impostato in Classe 1 per assicurare la compatibilità con tutte le macchine fax.
  • Verranno ora richiesti valori specifici per il modem, basta premere invio per accettare i predefiniti in quanto sono il risultato dell'interrogazione al modem e la classe selezionata.

  • Verranno visualizzati i valori di schedulazione non predefiniti seguiti da una richiesta di conferma.
    • Assicurarsi che siano corretti, se non lo sono rispondere No e correggerli.

    • Si noti che è possibile aumentare il valore di "Timeout durante la conversione di documenti ?PostScript" se si inviano documenti lunghi.

    • Premere semplicemente invio per accettare i valori predefiniti.

  • Assumendo che tutto quanto sopra descritto sia andato a buon fine faxaddmodem restituirà ora il controllo a faxsetup, la configurazione del primo modem è terminata.
  • Se si sta configurando solo un modem fax, rispondere No alla richiesta di configurarne un altro; in caso contrario rispondere yes ed eseguire nuovamente i passi sopra descritti relativi a faxaddmodem.

  • Per verificare le impostazioni accettare la risposta predefinita yes per eseguire faxmodem sul modem appena configurato.

  • Si dovrebbe ora tornare al prompt shell.
  • Se si desidera modificare manualmente i file che contengono queste impostazioni, utilizzare il proprio editor preferito sui file "config" e "config.MODEMDEVICE" in /etc/hylafax (dove MODEMDEVICE è il device al quale il modem è connesso).

  • Configurare HylaFAX affinché venga eseguito automaticamente all'avvio del sistema, esaminare il contenuto del file /etc/default/hylafax.

  • Assicurarsi che non ci siano caratteri # all'inizio della riga che contiene RUN_HYLAFAX=1.

Se tutto è andato bene, l'esecuzione di /etc/init.d/hylafax restart dovrebbe dare come risultato che hylafax ascolti il modem per i fax in entrata, permettendo l'invio di fax da riga di comando.

Invio di un fax da riga di comando

Per testare il server fax appena installato si invierà un file di testo a un apparecchio fax remoto.

Per inviare un fax dalla riga di comando, eseguire il seguente comando:

sendfax -n -d <NUMEROTEL> /etc/issue.net

dove <NUMEROTEL> è il numero telefonico dell'apparecchio fax su cui si può ricevere un fax (che non è sulla stessa linea telefonica del server hylafax).

se ha funzionato correttamente si dovrebbe avere un fax arrivato al numero inserito nel comando.

Configurazione della rete fax

Si farà in modo che HylaFAX sappia chi sulla rete locale è autorizzato a inviare fax, se non si intende consentire l'utilizzo del server agli utenti della rete locale è possibile ignorare questa sezione.

Controlli di accesso

Per permettere l'accesso agli utenti sulla rete locale è possibile utilizzare una regola per tutta la sottorete per consentire l'uso a tutti oppure selezionare singoli indirizzi.

  • Modificare il file /etc/hylafax/hosts.hfaxd con un editor.

    • Ad esempio, se si usa una rete con indirizzi nell'intervallo 192.168.10.0 e la sottorete è 255.255.255.0, inserire la seguente direttiva:

192\.168\.10\.:::
  • Allo stesso modo se si usa una rete con indirizzi nell'intervallo 172.16.0.0 e la sottorete è 255.255.0.0, la voce sarebbe:

172\.16\.:::
  • Si possono inserire sia intervalli di indirizzi che indirizzi multipli mirati, se si desidera limitare l'accesso a utenti specifici si possono inserire i loro indirizzi IP individuali. Al termine salvare il file e uscire dall'editor.

Riavviare il server hylafax con il comando /etc/init.d/hylafax restart-

Creazione di utenti

È necessario creare un utente sul sistema per ogni utente della rete al quale si desidera far usare il server fax:

adduser dept1
  • Inserire nome utente, password, ecc.
  • Aggiungere quindi l'utente a hylafax, scoprendo prima qual è l'UID del nuovo utente:

cat /etc/group
  • Dovrebbe essere qualcosa come dept1:x:1001:, perciò l'UID sarà 1001.

  • Comunicarlo ora a hylafax:

faxadduser -p password -u 1001 nome_utente

Configurazione di fax a email

Si creerà ora uno script FaxDispatch in /etc/hylafax per indirizzare i fax in entrata a una destinazione diversa dal rimanere nella coda recvq.

FaxDispatch

  • FaxDispatch è uno script personalizzato che si può creare per Hylafax per specificare le opzioni di consegna non standard, normalmente i fax in entrata vengono inseriti nella directory /var/spool/hylafax/recvq/.

  • Un esempio di file FaxDispatch è contenuto nel file /usr/share/doc/hylafax-server/examples/FaxDispatch.example

  • Creare un file /etc/hylafax/FaxDispatch contenente questo:

## FaxDispatch file - instrada tutti i fax in entrata a miaemail@indirizzoemail.com in forma di file TIFF
##
## Consultare la pagina man di faxrcvd(8C) per maggiori informazioni
##

SENDTO=mia_email@mio_dominio.com;
FILETYPE=tiff;

Si noti che sono consentiti tipi di file diversi da tiff ma questo è il formato nativo usato dal sistema di fax, pertanto richiede minor quantità di lavoro da gestire sul server.

Configurazione di email a fax con Exim

Il messaggio email diventa la prima pagina e tutti gli allegati saranno inviati come pagine aggiuntive; tuttavia la gestione degli allegati non è perfetta, in particolare quella degli allegati JPEG. Per risultati migliori usare i PDF, dato che sembrano essere elaborati in maniera affidabile e sono già a dimensione di pagina.

I destinatari del fax devono avere un indirizzo nel formato seguente:

Router

exifax:
   driver = manualroute
   transport = exifax
   route_list ="*.fax"

Transport

exifax:
  driver = pipe
  user = faxmaster
  command ="/usr/bin/faxmail -n ${local_part}@${extract{1}{.}{$domain}}"

Stampare automaticamente fax in entrata

  • Se si desidera stampare e quindi spostare i fax in arrivo fuori dalla directory /var/spool/hylafax/recvq/, si può creare un file FaxDispatch come questo:

## and/or by device
FOLDER="/var/spool/hylafax/recvq/"
FULLPATH="${FOLDER}${FILENAME}.tif"
case "$DEVICE" in
ttyS14)   /usr/bin/tiff2ps -w 8.5 -h 11 -a $FILE |lpr -P kyocera; mv $FULLPATH /var/spool/hylafax/recvq/dept1/;;    # tutti i fax ricevuti su ttyS14
ttyS15)   /usr/bin/tiff2ps -w 8.5 -h 11 -a $FILE |lpr -P kyocera; mv $FULLPATH /var/spool/hylafax/recvq/dept2/;;    # tutti i fax ricevuti su ttyS15
esac

Notare che specificare le dimensioni di una pagina è consigliato per assicurarsi che le pagine 11x14 vengano stampate in modo corretto.

Visualizzare fax tramite un browser internet

  • Per questo si installi il server web apache

apt-get update
apt-get install apache2
  • Aggiungere un collegamento alla directory dei fax:

cd /var/www
ln -s /var/spool/hylafax/recvq fax

Client di invio fax

La lista di tutti i software è al seguente indirizzo: http://www.hylafax.org/content/Client_Software

Linux

Si può usare Gfax o Kde Print Fax. Gfax è installabile con:

apt-get update
apt-get install gfax

Quindi andare nel menu Applicazioni > Ufficio > Gfax.

  • Questo necessita di essere testato:

Spedire fax da OpenOffice, TextEditor, ecc.

1. Installare GFax (apt-get install gfax)
2. Configurarlo con il server fax (HylaFAX); si può provare la configurazione di GFax inviando un fax con TextEditor (Applicazioni > Accessori)
3. Per OpenOffice eseguire /usr/lib/openoffice/program/spadmin da root
4. Dalla GUI di spadmin aggiungere un convertitore fax/pdf e inserire gfax come comando
5. Salvare la configurazione
6. Provare a spedire un documento OpenOffice via fax

L'invio con Fax Printer non ha funzionato, mentre con il convertitore PDF e impostando una cartella PDF non si è bloccato. 

Windows

  • Su windows si può usare il software Winprint HylaFAX, scaricabile all'indirizzo http://winprinthylafax.sourceforge.net/

  • AMMINISTRAZIONE: Scaricare il programma chiamato WHFC che notificherà lo stato del server hylafax.

Hardware conosciuto come funzionante

Modem seriali

  1. US Robotics 56K External Fax Modem; 5686E (fornito senza cavo)
  2. USRobotics Courier V.Everything External Fax Modem
  3. Amigo AME-CA95, External V.92 DATA/FAX/TAM Modem - (newegg.com)

Adattatori seriali multiporta

  1. Startech.com 4 Multi Port Serial PCI Card
  2. Startech.com 2 Port Serial PCI Card

Modem USB

Sito web che vende il modem USB (in greco): http://www.e-shop.gr/show_per.phtml?id=PER.533709

lsusb lo riconosce come:

Bus 001 Device 002: ID 0483:7554 SGS Thomson Microelectronics 56k SoftModem
  idVendor           0x0483 SGS Thomson Microelectronics
  idProduct          0x7554 56k SoftModem

Il driver funzionante è lo "slusb" SmartLink, vedere slmodem.

Il modem viene installato sotto /dev/ttySL0, non sembra necessaria alcuna configurazione particolare per Hylafax.

Un altro che funziona con il modulo cdc_acm, testato solo per Hylafax, è il TRENDnet TFM-561U. In Debian Squeeze è Plug&Play.

lsusb info:

Bus 007 Device 002: ID 0572:1329 Conexant Systems (Rockwell), Inc.
  idVendor 0x0572 Conexant Systems (Rockwell), Inc.
  idProduct 0x1329

Il (primo) device è /dev/ttyACM0. Sembra che faxaddmodem di Hylafax lo configuri correttamente.

Aggiungere un prefisso di selezione

Per configurare !Hylafax per comporre un numero e mettersi in pausa prima di chiamare il numero richiesto, aggiungere la seguente riga al file config.<DEVICE>:

ModemDialCmd: ATDT9,%s
  • Pausa: il modificatore di chiamata , (virgola) fa sì che il modem si metta in pausa durante la composizione del numero ATD9,17731231234

  • Pausa e attesa del segnale di linea: La W fa sì che la maggior parte dei modem attenda il segnale di linea prima di chiamare il numero che la segue. ATDT 9 W 17731231234

  • Il comando definitivo per la chiamata del modem potrebbe essere così:

ModemDialCmd: ATDT9,W%s
  • 9 dice di comporre il 9; la virgola di attendere; la W di attendere il segnale di linea; %s è la variabile indicante il numero da comporre.

  • Se nel registro è segnalata l'assenza del tono di linea provare con:

ModemDialCmd:     ATX3DT8,,,%s
  • AT alza il telefono; X3 disabilita il controllo del segnale di linea; DT dice di usare la composizione a toni e comporre l'8; quindi ,,, per attendere; quindi il numero di telefono.

Linee multiple di fax in entrata

Configurare una scheda PCI seriale multiporta

  • Non c'è davvero alcun limite al numero di schede seriali che Linux sia in grado di gestire, ma c'è un parametro di configurazione del kernel per il numero di porte seriali supportate (CONFIG_SERIAL_8250_NR_UARTS).
  • Attualmente il limite di porte supportate in Debian è 4 (continuare a leggere per aumentare questo numero).
  • Ecco cosa fare se si desidera aggiungere al pc una scheda seriale con 2 porte.
  • Se si collegano più modem o si acquista una scheda seriale PCI e si vuole sapere quale ttyS utilizzano, si può controllare con:

dmesg | grep tty
  • Ottenendo qualcosa di simile:

ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
ttyS14 at I/O 0xdf08 (irq = 209) is a 16550A
ttyS15 at I/O 0xdf10 (irq = 209) is a 16550A
  • Installando un'altra scheda PCI seriale (2 porte o 4 porte) è possibile vedere se è stata rilevata digitando:

lspci -v
  • Ottenendo qualcosa di simile:

0000:02:00.0 Serial controller: NetMos Technology PCI 9835 Multi-I/O Controller (rev 01) (prog-if 02 [16550])
        Subsystem: LSI Logic / Symbios Logic 2S (16C550 UART)
        Flags: medium devsel, IRQ 209
        I/O ports at df08 [size=8]
        I/O ports at df10 [size=8]
        I/O ports at df18 [size=8]
        I/O ports at df20 [size=8]
        I/O ports at df28 [size=8]
        I/O ports at df30 [size=16]
  • Come si può vedere l'IRQ dovrebbe essere lo stesso di quello indicato in dmesg.
  • Installare il pacchetto setserial, questo programma permetterà di controllare meglio la porta seriale.

apt-get update
apt-get install setserial
  • Quindi provare con:

setserial -g /dev/ttyS*
  • Se in /dev/ non appare una ttyS# (ttyS14 ad esempio) bisognerà creare il device.

ls /dev/ttyS*
  • In questo caso mancano ttyS14, ttyS15:

MAKEDEV ttyS14
MAKEDEV ttyS15
  • Eseguire nuovamente setserial -g /dev/ttyS*, dovrebbero esserci le nuove porte seriali.

  • Collegare i modem ed eseguire:

faxaddmodem
  • Selezionare le nuove ttyS e la configurazione di molteplici apparecchi fax sarà conclusa.

FaxNotify

  • Quando fallisce l'invio di un fax l'utente riceve un'email di notifica. La configurazione predefinita prevede l'invio del solo numero del processo, per ottenere una copia di quello che effettivamente è stato inviato bisogna aggiungere il file FaxNotify in /etc/hylafax e inserirvi:

RETURNFILETYPE=tiff;

Errori comuni

Minicom funziona ma faxaddmodem non trova un modem

  • Minicom utilizza automaticamente una stringa di inizializzazione che spegne i Numeric Result Codes (ATV1). Se si possiede un US Robotics Courier V.Everything External verificare la posizione del ponticello #2.

Failure to receive silence

Class1SwitchingCmd: "<delay:7>"

T.30 T2 timeout, expected signal not received

  • Il passaggio a Class 1 aggiungendo il "ritardo" dovrebbe risolvere il problema.
  • Eseguire nuovamente il comando faxaddmodem e aggiungere il ritardo.

Unspecified Phase C error, including too much delay between TCF and +FDR command

  • Il passaggio a Class 1 risolve il problema.

No Dial Tone

  • Aggiungere la stringa di composizione 9 poi pausa quindi il numero al file di configurazione risolve il problema.

  • Vedere la sezione "PBX, Dial 9 before number", per maggiori dettagli sulle opzioni vedere http://members.tripod.com/michaelgellis/modem.html

No carrier Detected

  • Aggiungere un'attesa più lunga risolve il problema dell'assenza di segnale di linea, ma si potrebbe ancora ottenere la portante non rilevata. Controllare il registro per determinare se questo è il caso della propria configurazione, vedere se ci sono dei segnale di occupato; per qualche motivo il segnale di occupato viene etichettato come nessuna portante rilevata.

cat /var/spool/hylafax/log/xferfaxlog

Modem bloccato

Dopo un mese di lavoro (11.000 fax) improvvisamente il modem si blocca. Perché il modem USR non ha l'opzione di sblocco come il modem Mainpine, bisogna dire a !HylaFAX di provare a configurarlo più di (predefinito) 2 volte. Aggiungere questo al file config.tty#

MaxSetupAttempts:    10

Scheda con 4 porte seriali, supporto per più di 4 modem

  • Non c'è davvero alcun limite al numero di schede seriali che Linux sia in grado di gestire, ma c'è un parametro di configurazione del kernel per il numero di porte seriali supportate (CONFIG_SERIAL_8250_NR_UARTS).
  • Per scoprire per quante porte seriali è stato configurato il kernel:

dmesg | grep Serial
  • Controllare righe simili:

 Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
  • Risulta che il driver è compilato per supportare solo 4 porte.
  • Ecco i messaggi di registro di riferimento:

serial8250: ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
 00:08: ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
 0000:05:04.0: ttyS0 at I/O 0x1010 (irq = 201) is a 16550A
 0000:05:04.0: ttyS1 at I/O 0x1018 (irq = 201) is a 16550A
 0000:05:04.0: ttyS3 at I/O 0x1020 (irq = 201) is a 16550A

Couldn't register serial port 0000:05:04.0: -28

mostra che ttyS2 è sulla scheda madre. ttyS0, S1, e S3 sulla scheda 9845.
Il driver ha trovato la quarta porta sulla scheda 9845, ma non può usarla
perché tutte e quattro le porte (da ttyS0 a ttyS3) sono già in uso 
(questo è il significato dell'errore "-28").
  • Si possono elencare le schede PCI nel modo seguente; questo mostrerà tutte le schede PCI, cercare le righe che menzionano serial:

lspci -v
  • Esempio:

 2 port:
 02:00.0 Serial controller: NetMos Technology PCI 9835 Multi-I/O
 Controller (rev 01) (prog-if 02 [16550])
         Subsystem: LSI Logic / Symbios Logic 2S (16C550 UART)
         Flags: medium devsel, IRQ 209
         I/O ports at df08 [size=8]
         I/O ports at df10 [size=8]
         I/O ports at df18 [size=8]
         I/O ports at df20 [size=8]
         I/O ports at df28 [size=8]
         I/O ports at df30 [size=16]


 4 port:
 02:02.0 Serial controller: Unknown device 9310:9845 (rev 01) (prog-if 02
 [16550])
         Subsystem: LSI Logic / Symbios Logic Unknown device 0004
         Flags: medium devsel, IRQ 201
         I/O ports at 1000 [size=8]
         I/O ports at 1008 [size=8]
         I/O ports at 1010 [size=8]
         I/O ports at 1018 [size=8]
         I/O ports at 1020 [size=8]
         I/O ports at 1030 [size=16]

Aggiornare con Grub

  • Aggiungere più porte seriali al sistema inserendo 8250.nr_uarts=16 alla fine della riga kopt nel file di configurazione di grub /boot/grub/menu.lst.

## NON DECOMMENTARE, modificarle per le proprie necessità

## ## Opzioni predefinite di avvio ##
## opzioni predefinite del kernel
## opzioni predefinite del kernel per opzioni automagiche di avvio
## Se si desiderano opzioni speciali per kernel specifici usare kopt_x_y_z
## dove x.y.z è la versione del kernel. I numeri minori di versione possono essere omessi.
## es. kopt=root=/dev/hda1 ro
##      kopt_2_6_8=root=/dev/hdc1 ro
##      kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=/dev/sda1 ro 8250.nr_uarts=16
  • Eseguire

update-grub
  • Riavviare il sistema.

Aggiornare con Grub2

  • Aggiungere più porte seriali al sistema inserendo 8250.nr_uarts=16 alla fine della riga GRUB_CMDLINE_LINUX_DEFAULT nel file di configurazione di grub /etc/default/grub.

# Se si fanno cambiamenti a questo file, eseguire 'update-grub' per applicare le modifiche
# /boot/grub/grub.cfg.

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet 8250.nr_uarts=16"
GRUB_CMDLINE_LINUX=""
  • Eseguire

update-grub
  • Riavviare il sistema

Controllare che tutto funzioni

  • Una volta rifatto il login nel sistema eseguire il comando:

setserial -g /dev/ttyS*
  • Questo mostrerà l'elenco di tutti gli indirizzi delle porte seriali con il corrispondente ttyS, ad esempio:

/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x1010, IRQ: 201
/dev/ttyS10, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS11, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS12, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS13, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS14, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS15, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS2, UART: 16550A, Port: 0x1018, IRQ: 201
/dev/ttyS3, UART: 16550A, Port: 0x1020, IRQ: 201
/dev/ttyS4, UART: 16550A, Port: 0x1010, IRQ: 201
/dev/ttyS5, UART: 16550A, Port: 0x1018, IRQ: 201
/dev/ttyS6, UART: 16550A, Port: 0x1020, IRQ: 201
/dev/ttyS7, UART: 16550A, Port: 0x1028, IRQ: 201
/dev/ttyS8, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS9, UART: unknown, Port: 0x0000, IRQ: 0
  • Così ora da lspci -v si vedrà che la prima porta della scheda seriale è la 1010 che equivale a ttyS1, la seconda è la 1018 ed equivale a ttyS2, e così via.

  • Il numero massimo di porte seriali impostabili all'avvio del kernel è 16, se ne servono di più il kernel 2.6.24 ha un limite di 32. Vedere il bug Debian 440807.

Strumenti

Archivio fax

1 0 * * * python /usr/local/bin/archive.py /var/spool/hylafax/recvq tif
  • Verrà eseguito il programma ogni giorno alle 00:01. Adattare i percorsi e l'estensione che si utilizza per memorizzare i fax (tif) alle proprie esigenze.
  • Se serve eseguirlo una sola volta, questo sarà il comando:

python /usr/local/bin/archive.py /var/spool/hylafax/recvq tif

Inviare una serie di fax

  • Per inviare molteplici fax bisogna creare un file contenente i numeri telefonici, uno per riga:

17731231234
13121231234
  • Se è necessario aggiungere una (o più cifre), ad es. 1 davanti ai numeri si può usare vim per farlo con questo codice: premere ESC

:%s/^/1/g
  • che sostituisce ^(inizio di riga) con 1
  • Una volta che il file è pronto e ipotizzando di avere un pdf da spedire, usare il seguente comando:

sendfax -z mucchio_numeri_fax.csv FILE2007NEWS.pdf
  • Affinché un solo modem sia responsabile dell'invio e per consentirgli il tempo sufficiente per compiere l'operazione, si può eseguire questo comando che utilizzerà il modem ttyS0 e scadrà in 24 ore.

sendfax -h ttyS0@localhost -n -k 'now + 24 hours' -z batchfaxnumbers.csv FILE2007NEWS.pdf

Manutenzione

  • Per visualizzare lo stato del servizio di fax sulla macchina locale:

faxstat -s

Riavviare Hylafax

/etc/init.d/hylafax restart

Controllare lo stato del fax

Si userà il comando faxstat:

faxstat
  • Inserendo la password (se ne viene chiesta una) si dovrebbe vedere qualcosa di simile:

HylaFAX scheduler on localhost.localdomain: Running
Modem ttyS15 (1.773.123.1234): Running and idle
Modem ttyS14 (1.773.123.1234): Running and idle

Rimuovere un processo di fax

Per rimuovere dalla coda un fax spedito:

faxrm jobid

Dove jobid è l'ID del processo in questione.

È anche possibile rimuovere più fax in una volta sola:

faxrm 1011 1012 1013

Se si hanno più di 100 fax da rimuovere

Non fare questo:

  • Aprire il foglio di calcolo in OpenOffice

  • Creare una sequenza da 1 a 100 e salvarla come file csv, aprirlo in vim ed eliminare le virgolette con il comando :%s/"//g, quindi sostituire gli "a capo" con degli spazi con %s/\n/ /g; aggiungere faxrm ad inizio riga. Eseguire il comando bash filename.csv sul server.

Fare questo:

faxrm $(seq 1 100)

La stampante non stampa

Informazioni specifiche per paese

Generali

  • Per ragioni ovvie, si spera che il codice della nazione e i prefissi per la composizione dei numeri varino di nazione in nazione.