|
Solo una persona alla volta può usare una stampante, ma non è
economico non condividere le stampanti tra vari utenti. La stampante
viene quindi gestita dal software che implementa una coda di
stampa: tutti i job di stampa vengono messi in una coda e quando la
stampante ne ha finito uno gliene viene mandato un altro
automaticamente. Questo solleva gli utenti dall’organizzazione della
coda di stampa e dal litigare per il controllo della stampante. Il software di stampa fa anche lo spool delle stampe sul disco,
cioè
il testo viene mantenuto in un file finché il job è in coda. Ciò
permette ad un programma applicativo di sputar fuori i job di stampa
velocemente al software di gestione della coda; l’applicazione non deve
così
aspettare finché il job è stampato realmente per poter continuare.
E’ veramente conveniente, dato che permette di stampare una versione
di un file, e non dover aspettare che sia stampata per farne una nuova
completamente diversa.
12.1 Configurazione e gestione delle code di stampa
Il processo di stampa è governato dal file /etc/printcap (print
capabilities); esso definisce tutte le code di stampa disponibili sul
sistema e le loro caratteristiche. Il seguente è un esempio:
\# REMOTE POSTSCRIPT 300x300 a4 {} PostScript Default 1
lp:\
:sd=/var/spool/lpd/lp:\
:mx\#0:\ :sh:\
:rm=192.168.2.2:\
:rp=lp:\
:if=/var/spool/lpd/lp/filter:
La stampa di un file implica la trasformazione di svariati formati di
dati in un formato accettabile per la stampante. Tale processo
richiede due passaggi:
- I dati grezzi vengono tradotti da un programma di filtro in formato
PDL (Page Description Language), stile Postscript;
- Il programma Postscript viene inviato all’utility Ghostscript che
lo trasforma in un formato adatto ad essere inviato ad una qualsiasi
stampante.
12.2 Aggiungere stampanti tramite printtool
Per agevolare l’utente nella configurazione della propria
stampante, è consigliato utilizzare il pacchetto printtool.
Nell’ordine è
necessario creare una nuova coda di stampa utilizzando il bottone
’ADD’ specificando il tipo si stampante che si ha in dotazione. Il
pacchetto printtool permette di configurare cinque tipi di stampanti:
LOCAL, REMOTE, SMB, NCP e DIRECT:
- LOCAL è riferito alle stampanti connesse al calcolatore tramite la
porta parallela;
- REMOTE è riferito alle stampanti che fisicamente sono connesse ad
altri calcolatori e nella maggior parte dei casi si tratta di
calcolatori Linux;
- SMB è riferito alle stampanti che fisicamente sono connesse ad
altri calcolatori tramite l’utilizzo di un SMB server il quale ha il
compito di permettere ad un client Linux di effettuare il processo di
stampa usando una stampante connessa ad un client Microsoft Windows, il
tutto tramite un apposito software (Samba);
- NCP è riferito alle stampanti che fisicamente sono connesse ad
altri calcolatori tramite l’utilizzo di un NCP server il quale ha il
compito di permettere ad un client Linux di effettuare il processo di
stampa usando una stampante connessa ad un client Novell Netware, il
tutto tramite un apposito software (Mars);
- DIRECT è riferito alle stampanti che fisicamente sono connesse alla
rete tramite un apposita scheda di rete interna alla stampante o
tramite un dispositivo hardware chiamato print server. Per questo tipo
di servizio viene impiegata tipicamente la porta di comunicazione
numero 9100, in questo modo tutti i dati provenienti dai client,
giungono a tale destinazione per poi essere elaborati nel processo di
stampa.
Al termine della scelta sul tipo di stampante in dotazione è
necessario inserire dei parametri per la corretta configurazione della
stampante:
- Queue name indica il nome della coda di stampa. E’ possibile
definire più nomi per la stessa coda di stampa, ma è necessario
inserire tra un nome e l’altro un carattere di separazione
rappresentato dal pipe ’|’;
- Spool Directory indica la directory sulla macchina locale dove sono
depositati tutti i files prima di essere stampati. E’ necessario che
in presenza di più stampanti esista una Spool Directory univoca per
ogni stampante.
- File Limit indica la dimensione massima del job di stampa accettato.
Specificando il valore 0 si indica di non impostare nessun limite per
i jobs di stampa.
Per le stampanti definite come LOCAL è necessario impostare questi
parametri:
- Printer Device indica il nome del device Linux che rappresenta la
stampante locale. Nella maggior parte dei casi il nome del device è /dev/lp1;
- Input Filter indica quale filtro è necessario usare per
permettere di stampare in modo corretto con la stampante in
dotazione. Stampanti differenti usano filtri differenti.
Per le stampanti definite come REMOTE, è necessario impostare anche
questi parametri:
- Remote Host indica il nome della macchina remota alla quale
è
connessa fisicamente la stampante;
- Remote Queue indica il nome della coda di stampa della macchina
remota alla quale è connessa la stampante.
|