NLNX include un servente di stampa compatibile con il tipo BSD, dove il file /etc/printcap
può essere configurato facilmente con l'aiuto di nlnxrc.
Con il comando nlnxrc printer config si rigenera il file /etc/printcap
, specificando una sola coda di stampa predefinita, che può corrispondere anche a un servizio presso un elaboratore remoto, inclusi quelli offerti da elaboratori MS-Windows:
#
nlnxrc printer config
[Invio]
.Setup default printer filter type--. | Please, select one of the | | following filter programs: | | .-------------------------------. | | | magicfilter Magicfilter | | | | foomatic Foomatic | | | `-------------------------------' | |-----------------------------------| | < OK > <Cancel> | `-----------------------------------' |
Inizialmente viene chiesto di specificare quale programma usare per la gestione del filtro di stampa che si preferisce. Magicfilter è il più semplice, con lo svantaggio che l'elenco di stampanti è ridotto (con Magicfilter manca soprattutto la gestione attraverso il servente HP IJS), ma consente a chi sa usarlo di predisporre il proprio filtro personalizzato; Foomatic è il più adatto per i meno esperti, essendo fornito di un elenco molto grande di modelli di stampanti.
Quello che segue è l'elenco che può apparire dopo avere selezionato Magicfilter:
.---------------Setup default printer type-----------------. | Please, select one of the following printer filters. | | If you don't find your special printer, please try a | | different name that might be compatible with the one | | that you have. | | .------------------------------------------------------. | | |bj10e /etc/magicfilter/bj10e-filter | | | |bj200 /etc/magicfilter/bj200-filter | | | |bj600_draft /etc/magicfilter/bj600_draft-filter | | | |bj600 /etc/magicfilter/bj600-filter | | | |bj610 /etc/magicfilter/bj610-filter | | | |bj800_draft /etc/magicfilter/bj800_draft-filter | | | |bj800 /etc/magicfilter/bj800-filter | | | |bjccolor /etc/magicfilter/bjccolor-filter | | | |cps300 /etc/magicfilter/cps300-filter | | | `v(+)--------------------------------------------------' | |----------------------------------------------------------| | < OK > <Cancel> | `----------------------------------------------------------' |
Il menù seguente riguarda invece la scelta di Foomatic:
.---------------Setup default printer type-----------------. | Please, select one of the following PPD. | | .------------------------------------------------------. | | | HP-2000C-hpijs . | | | | HP-2000C-pcl3 . | | | | HP-2500C-hpijs . | | | | HP-2500CM-hpijs . | | | | HP-2500CM-Postscript . | | | | HP-2500C-pcl3 . | | | | HP-2563-lp2563 . | | | | HP-Business_Inkjet_1100-hpijs . | | | | HP-Business_Inkjet_1200-hpijs . | | | | HP-Business_Inkjet_2200-chp2200 . | | | | HP-Business_Inkjet_2200-hpijs . | | | `---v(+)-----------------------------------------------' | |----------------------------------------------------------| | < OK > <Cancel> | `----------------------------------------------------------' |
Nel caso di Foomatic, i nomi dei modelli di stampante contengono anche un'estensione che fa capire in che modo viene realizzato il filtro; pertanto, spesso sono disponibili filtri differenti per uno stesso modello. Si osservi che non è garantito che funzionino tutte le voci e può essere necessario fare dei tentativi.
Dopo avere specificato il nome del filtro da usare, si può indicare l'indirizzi IPv4 presso il quale si trova la stampante; se si tratta dell'indirizzo 127.0.0.1 o se si lascia vuoto il campo, si intende fare riferimento a una stampante locale. In alternativa, si può indicare un percorso per raggiungere una stampante condivisa di MS-Windows.
.----------------Printer location------------------. | Please insert the printer location address; if | | the printer is local, just use "127.0.0.1" or | | leave it blank; if it is a BSD remote printer, | | put the IPv4 address; if it is a SMB (Windows) | | remote printer, enter the resource path, like: | | "//hostname/printer" (do not use backslash). | | .----------------------------------------------. | | |127.0.0.1 | | | `----------------------------------------------' | |--------------------------------------------------| | < OK > <Cancel> | `--------------------------------------------------' |
Se si fa riferimento a una stampante locale (come appare nell'esempio), viene richiesto di indicare il file di dispositivo a cui corrisponde la stampante:
.---Setup default printer device-----. | Please, select one of the | | following printer devices: | | .--------------------------------. | | | /dev/lp0 /dev/lp0 | | | | /dev/usb/lp0 /dev/usb/lp0 | | | `--------------------------------' | |------------------------------------| | < OK > <Cancel> | `------------------------------------' |
Quando si installa NLNX nel disco fisso, se questo non viene aggiornato automaticamente, tramite il protocollo DHCP, è necessario predisporre il file /etc/printcap
con l'aiuto del comando nlnxrc printer config, ritoccandolo eventualmente a mano in un momento successivo. Segue un esempio riferito alla stampa compatibile con un modello HP Laserjet generico, collegata alla prima porta parallela:
|
Con il comando nlnxrc printer config è possibile configurare una sola stampante; se si vogliono gestire più stampanti, o semplicemente più code differenti, occorre modificare il file /etc/printcap
a mano. L'esempio seguente riporta il caso di due code di stampa: quella predefinita riguarda una stampante locale HP Laserjet, mentre la coda successiva (lp2) è rivolta a una stampante remota (192.168.1.254), senza specificare il tipo di filtro:
|
Per approfondire l'argomento si può consultare il capitolo 27 dedicato alla stampa.
Va osservato che se si richiede di utilizzare una stampante condivisa, specificando un percorso del tipo //pc01/stampante
, tale percorso va usato utilizzando solo barre oblique normali, e non le barre inclinate nel modo opposto, come fa MS-Windows; inoltre, se il nome della stampante contiene spazi, al loro posto va usata la sequenza %20. Infine, va tenuto presente che la configurazione non si riflette sostanzialmente nel file /etc/printcap
, perché sono gli script /etc/script/lpr
e /etc/script/lp
che si occupano, in tal caso, di inviare il file da stampare (filtrato opportunamente) alla condivisione. Ciò significa anche che per raggiungere una stampante condivisa, non è possibile usare direttamente il comando /usr/bin/lpr
, ma bisogna avvalersi necessariamente degli script di NLNX.
.----------------Printer location------------------. | Please insert the printer location address; if | | the printer is local, just use "127.0.0.1" or | | leave it blank; if it is a BSD remote printer, | | put the IPv4 address; if it is a SMB (Windows) | | remote printer, enter the resource path, like: | | "//hostname/printer" (do not use backslash). | | .----------------------------------------------. | | |//docenti/stampante | | | `----------------------------------------------' | |--------------------------------------------------| | < OK > <Cancel> | `--------------------------------------------------' |
Quando si specifica un percorso di stampa riferito a una condivisione MS-Windows, viene richiesto di specificare eventualmente il nominativo dell'utente e la parola d'ordine per accedere al servizio. Naturalmente, se questo servizio non lo richiede, tali dati aggiuntivi non vanno inseriti.
.----------Printer user------------. | Please insert the user to access | | the remote printer | | "//docenti/stampante". If there | | is no user, just leave it blank. | | | | .------------------------------. | | | | | | `------------------------------' | |----------------------------------| | < OK > <Cancel> | `----------------------------------' |
.--------Printer password----------. | Please insert the password to | | access the remote printer | | "//docenti/stampante" as user | | "daniele". If there is no | | password, just leave it blank. | | .------------------------------. | | | | | | `------------------------------' | |----------------------------------| | < OK > <Cancel> | `----------------------------------' |
Tra le opzioni di avvio di NLNX, ne sono previste alcune per la configurazione al volo della stampante. In particolare, n_lpr_filter si può usare sia per la stampa «normale» (BSD), sia per quella con le stampanti condivise di MS-Windows allo scopo di consentire l'indicazione del filtro da applicare ai file che vengono inviati alla stampante. Il nome del filtro deriva dal nome del file contenuto nella directory /etc/magicfilter/
, togliendo la terminazione -filter
, oppure dal nome del file PPD, togliendo l'estensione .ppd
o .ppd.gz
. Per esempio, volendo utilizzare il file ljet4-filter
va scritto semplicemente il nome ljet4, mentre volendo utilizzare il file HP-LaserJet_4-ljet4.ppd.gz
va scritto solo il nome HP-LaserJet_4-ljet4. Segue la descrizione di alcuni esempi un po' più completi.
n_lpr_server=127.0.0.1 n_lpr_filter=laserjet |
n_lpr_filter=laserjet |
Configura la stampa per una stampante locale, utilizzando un filtro di stampa per il tipo «laserjet» (corrispondente al file /etc/magicfilter/laserjet-filter
. Il file di dispositivo corrispondente alla stampante locale viene individuato automaticamente, per esclusione.
n_lpr_server=172.21.254.254 n_lpr_filter=laserjet |
Configura la stampa per una stampante di rete, all'indirizzo 172.21.254.254, utilizzando un filtro di stampa per il tipo «laserjet» (corrispondente al file /etc/magicfilter/laserjet-filter
.
n_smp_prn=//pc77/stampante n_smb_prn_user=root n_lpr_filter=laserjet |
Configura la stampa per una stampante di rete, condivisa da un elaboratore MS-Windows con il nome \\pc77\stampante
, autenticandosi come amministratore e senza fornire alcuna parola d'ordine. Il filtro di stampa è lo stesso visto negli esempi precedenti.
n_smp_prn=//pc77/stampante n_smb_prn_user=root \ |
Come nell'esempio precedente, specificando una parola d'ordine.
n_smp_prn=//192.168.0.7/stampante n_smb_prn_user=root \ |
Come nell'esempio precedente, indicando al posto del nome dell'elaboratore che offre la condivisione della stampante, il suo indirizzo IPv4.
n_max_pages=11 |
Fissa il numero massimo di pagine stampabili per volta.
«a2» 2013.11.11 --- Copyright © Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net