6 - Utili

lpr, lpq, lprm

Anche la gestione delle stampanti è molto spesso distribuita sulla rete.
A volte la stampante è collegata direttamente ad una macchina, con una porta seriale o parallela.
Altre volte la stampante è collegata direttamente in rete ed ha lei stessa un programma che si interfaccia sulla rete come server di stampa.
Di solito su tutte le macchine gira un server di stampa, lpd o altro:
tale server provvede a mettere in coda le stampe e a spedirle alla stampante, o direttamente o tramite una altra macchina collegata in rete e alla stampante; di solito viene usata la porta 515, ma non è inconsueto che vengano usate altre porte.

La configurazione delle stampanti è riportata usualmente nel file /etc/printcap ma ci sono altre possibilità per configurare il servizio di stampa, come per esempio tramite le NIS .

Il comando lpr usa la stampante di default (lp); può ricevere un file via un pipe ( ls   -la |lpr) o come argomento (lpr  file).

In alcuni sistemi il file da stampare viene copiato in /var/spool/lpq (o altra directory), e poi trasmesso alla stampante o al demone di stampa della macchina remota:
in questi casi c'è spesso un limite alla grandezza del file ricopiabile in tale directory: per stampare files più grandi si deve usare il flag lpr  -s, inibendo l'operazione di copia in /var/spool/lpd (viene creato invece un link simbolico).

In altri sistemi il file da stampare viene inviato direttamente al server di stampa per cui l'opzione -s non c'è.

Anche se il comando di stampa si chiama sempre nello stesso modo, i programmi che gestiscono la stampa possono essere molto diversi da macchina a macchina, per cui è bene controllare la documentazione prima di spedire qualcosa in stampa su un sistema che non si conosce ancora.

Per stampare su altre stampanti si usa il flag lpr -Pnomestampante.

I comandi lpq e lprm, eventualmente col flag -P per specificare la stampante, permettono di vedere quali stampe sono in coda, e di rimuovere dalla coda proprie stampe inviate per errore.

attenzione!: bisogna stare piuttosto attenti a non spedire in stampa files qualsiasi !
Se per esempio si dispone di una stampante Postscript, e si vuole stampare una immagine GIF, sarà necessario disporre di un programma che sia in grado di convertire l'immagine in Postscript, come il gimp per esempio. Se invece si manda direttamente in stampa l'immagine, la stampante nel caso più fortunato non stamperà nulla, ma nel caso più sfortunato inizierà a stampare centinaia di pagine ciascuna con pochi caratteri assurdi, come se il file fosse un testo!
In tale caso l'unica cosa ragionevole da fare è quella di togliere i cassetti della carta e chiamare i tecnici del Centro di Calcolo, e nel frattempo vedere se si riesce a rimuovere il file dalla coda di stampa.
Spegnere la stampante di solito è una pessima idea, perchè quasi sicuramente crea un inceppamento della carta.
 
Laboratorio di Comunicazione mediante Calcolatore - Sergio Steffè - AA 2003/2004 - PISA