CUPS (Italiano)

From ArchWiki
Revision as of 19:17, 14 December 2012 by Umby213 (Talk | contribs) (CUPS smette di funzionare: update section)

Jump to: navigation, search
Sommario help replacing me
Installare e configurare CUPS
Articoli Correlati
CUPS printer sharing
CUPS printer-specific problems
Samba (Italiano)

Dal sito di CUPS:

"CUPS è il sistema di stampa, standard e open source, sviluppato da Apple Inc. per Mac OS® X e altri sistemi operativi UNIX®-like."

Anche se ci sono altri sistemi di stampa come LPRNG, il Common Unix Printing System è la scelta più popolare per la sua relativa facilità d'uso.

Contents

Cups Linux Printing workflow

Dalla versione 1.5.3-3 di cups, Arch Linux fa uso del nuovo sistema di stampa completamente pdf-based. Per ulteriori informazioni leggere PDF standard printing job format e Cups filtering chart. Un ottimo punto di partenza per capire meglio come viene gestito l'intero processo di stampa è questo articolo.

Ci sono due modi per configurare una stampante:

  • Se nella propria rete è presente un server linux per la stampa che condivide una stampante, sarà necessario installare solo il client.
  • Se la stampante è collegata direttamente al proprio sistema, o si ha accesso IPP alla stampante, sarà necessario installare un server cups localmente.

Installare il client

libcups è il solo pacchetto necessario ed è possibile installarlo con pacman. Aggiungere ora l'IP del server o l'hostname nel file /etc/cups/client.conf. Finito! Ora ogni applicazione rileverà la stampante condivisa correttamente.

Nota: Non è chiaro se questo passaggio funzioni correttamente con cups > 1.6.x, per maggiori informazioni vedere la pagina wiki CUPS printer sharing.

Configurazione avanzata della rete

È possibile lanciare l'istanza cupsd sul proprio client con l'aiuto di Avahi per rintracciare l'IP della stampante. Tale operazione non ha senso che venga svolta su una rete domestica dove si presuppone si conosca a priori la posizione della stampante. Può invece essere molto utile in caso di grandi reti lan, dove IP e hostname della stampante sono ignoti.

Nota: Questa caratteristica non è cambiata dalle precedenti versioni di cups (<1.6.x). L'unica differenza infatti è che fino a CUPS 1.5.x l'interfaccia web non necessitava del demone avahi.

Installare il server

Sono richiesti i seguenti pacchetti cups, cups-filters, gsfonts e ghostscript. Tutti sono installabili dai repositories ufficiali.

  • cups - Il software CUPS vero e proprio (demone)
  • avahi - fondamentale per l'interfaccia web di Cups
  • cups-filter - pacchetto filtri essenziale
  • ghostscript - L'interprete per il linguaggio PostScript
  • gsfonts - I font standard GhostScript Type1
  • hpoj - Se si utilizza una HP Officejet, si dovrebbe installare anche questo pacchetto e seguire le istruzioni per evitare problemi. Leggere questo thread at launchpad/hplip per maggiori informazioni.

Se il sistema è collegato ad una stampante di rete utilizzando il protocollo Samba o se il sistema deve essere un server di stampa per i client Windows, installare anche samba.

Dalla versione 1.6 di cups, per usare correttamente il server di stampa è necessario lanciare avahi-demon prima di cupsd.

Driver per la stampante

Di seguito alcuni pacchetti per i driver. Scegliere il driver appropriato per la stampante da configurare:

  • gutenprint - Una raccolta di driver di alta qualità per stampanti Canon, Epson, Lexmark, Sony, Olympus, e PCL per l'utilizzo con GhostSscript, CUPS, Foomatic, e GIMP
  • foomatic-db, foomatic-db-engine, footmaic-db-nonfree, e foomatic-filters - Foomatic è un sistema basato su database per l'integrazione di driver liberi di stampanti con spooler comune in ambiente Unix. L'installazione di foomatic-filters dovrebbe risolvere eventuali problemi se gli errori nei log riportano "stopped with status 22!".
  • foo2zjsAUR- Driver per il protocollo Zjstreame usato dalle stampanti come la HP Laserjet 1018. Per maggiori informazioni visitare questo sito. Foo2zsj è installabile da AUR.
  • hplip - Driver GNU/Linux per HP inkjet. Fornisce supporto per le serie DeskJet, OfficeJet, Photosmart, Business Inkjet, alcuni modelli LaserJet e alcune Brother.
  • splix - Driver Samsung per stampanti SPL (Samsung Printer Language).
  • samsung-unified-driverAUR - Pacchetto unico per le nuove stampanti Samsung. Tale pacchetto è disponibile su AUR.
  • ufr2AUR or cndrvcups-lbAUR - Driver Canon UFR2 con supporto per le stampanti serie LBP, iR e MF. I pacchetti sono disponibili su AUR.
  • cups-pdf - Un pacchetto che permette di configurare una stampante PDF virtuale e che genera un file PDF dai dati ricevuti in modo automatico.

Se non si è sicuri di quale driver installare o se l'attuale driver non funziona, può essere più semplice installare tutti i driver, dal momento che alcuni dei nomi dei pacchetti sono fuorvianti, in quanto anche stampanti di altre marche possono essere supportate. Per esempio, la Brother HL-2140 ha bisogno del driver HPLIP installato.

Scaricare il PPD della stampante

A seconda della stampante, questo passo è opzionale e potrebbe non essere necessario, dal momento che l'installazione standard di CUPS include già un certo numero di file PPD (Postscript Printer Description). Inoltre, i pacchetti foomatic-filters, gimp-print e hplip includono a loro volta dei file PPD, che verranno rilevati automaticamente da CUPS.

Ecco una spiegazione dal sito di stampa di Linux sul significato dei file PPD:

"Per ogni PostScript di una stampante, i costruttori forniscono un file PPD, che contiene tutte le informazioni specifiche del particolare modello della stampante: caratteristiche di base della stampante, come ad esempio se è una stampante a colori, i caratteri, il livello PostScript, ecc, e soprattutto le opzioni configurabili dall'utente , la dimensione della carta, la risoluzione, ecc."

Se il PPD per la stampante non è già incluso in CUPS:

  • controllare su AUR per verificare se ci sono i pacchetti per la stampante e/o produttore
  • visitare il database OpenPrinting e selezionare il produttore e il modello della stampante
  • visitare il sito del produttore per effettuare una ricerca dei driver per GNU/Linux
Note: I file PPD sono ubicati in /usr/share/cups/model/

Configurazione

Ora che CUPS è installato, ci sono una varietà di opzioni su come configurare le soluzioni di stampa. Come sempre, il collaudato metodo da riga di comando è a disposizione. Allo stesso modo, diversi ambienti desktop come GNOME e KDE dispongono di utilità che possono aiutare a gestire le stampanti. Tuttavia, al fine di rendere questo processo più facile per un più vasto numero di utenti, questo articolo si focalizzerà sul metodo dell'interfaccia web di CUPS.

Se si pianifica un collegamento ad una stampante di rete, piuttosto che un collegamento diretto al computer, si potrebbe leggere per prima la pagina CUPS printer sharing. La condivisione della stampante tra sistemi GNU/Linux è abbastanza semplice e prevede poche configurazioni, mentre la condivisione tra sistemi Windows e GNU/Linux richiede qualche sforzo in più.

Si può avere accesso alle stampanti USB in due modi : il modulo del kernel usbpl e lilusb. Il primo è il metodo classico ed è il più semplice. I dati vengono inviati alla stampante tramite un semplice stream di dati seriali. Lo stesso file ha un accesso "bidirezionale", in modo da consentire di vedere il livello di inchiostro, lo status della stampante ecc. Questo metodo funziona molto bene per le stampanti semplici, non son però supportate stampanti multifunzione, inoltre, alcuni produttori come ad esempio HP forniscono i loro backend. (Per maggiori informazioni cosultare: questo sito).

Moduli del kernel

Prima di utilizzare l'interfaccia web di CUPS, si devono installare i moduli del kernel. Le seguenti operazioni sono tratte dalla documentazione di Gentoo.

Questa sezione può non essere necessaria a seconda del kernel utilizzato. Il modulo del kernel può essere caricato automaticamente dopo aver collegato la stampante. Utilizzare il comando tail (descritto più sotto) per vedere se la stampante è già stata rilevata. Anche l'utilità lsmod può essere utilizzata per vedere quali moduli sono stati caricati.

Stampanti USB

Dalla versione 1.6.0 di cups, non dovrebbe più essere necessario blacklistare usblp. Se si dovesse notare che mettere in blacklist tale modulo fosse l'unica soluzione ad un problema, si prega di riportare un bug all'upstream di Cups. Vedere questo bug per maggiori informazioni.

Alcuni utenti, potrebbero comunque ancora voler mettere in blacklist il modulo usblp:

/etc/modprobe.d/blacklist.conf
blacklist usblp

Per i kernel personalizzati, potrebbe essere necessario caricare manualmente il modulo usbcore prima di procedere:

# modprobe usbcore

Una volta che i moduli sono installati, collegare la stampante e controllare se il kernel li ha rilevati eseguendo il seguente:

# tail /var/log/messages.log

o

# dmesg

Se si sta utilizzando usblp, l'uscita dovrebbe indicare che la stampante è stata rilevata in questo modo:

Feb 19 20:17:11 kernel: printer.c: usblp0: USB Bidirectional
printer dev 2 if 0 alt 0 proto 2 vid 0x04E8 pid 0x300E
Feb 19 20:17:11 kernel: usb.c: usblp driver claimed interface cfef3920
Feb 19 20:17:11 kernel: printer.c: v0.13: USB Printer Device Class driver

Se si ha inserito usblp in blacklist, dovrebbe venir restituito un output simile a:

usb 3-2: new full speed USB device using uhci_hcd and address 3
usb 3-2: configuration #1 chosen from 1 choice

Stampanti con porta parallela

Per l'utilizzo delle stampanti con parallela porta, si noti che la configurazione è praticamente la stessa, fatta eccezione per i moduli:

# modprobe lp
# modprobe parport
# modprobe parport_pc

Ancora una volta, controllare l'installazione eseguendo:

# tail /var/log/messages.log

Si dovrebbe vedere qualcosa del genere:

lp0: using parport0 (polling).

Se si utilizza un adattatore USB per porta parallela, CUPS non sarà in grado di rilevare la stampante. Per risolvere il problema, aggiungere la stampante tramite un altro tipo di connessione e quindi modificare il DeviceID in /etc/cups/printers.conf:

DeviceID = parallel:/dev/usb/lp0

Avvio automatico

È conveniente che il sistema carichi automaticamente il modulo del kernel ogni volta che si avvia. Per fare ciò, utilizzare un editor di testo per aprire il file /etc/modules-load.d/printing.conf e aggiungere i moduli appropriato, uno per riga. Ecco un esempio:

lp
parport
parport_pc

Avviare CUPS al boot

Con il modulo del kernel installato, è ora possibile avviare cupsd al boot, con tale comando:

# systemctl enable cupsd

Per ulteriori informazioni sull'uso dei .service, consultare la pagina wiki di systemd.

Interfaccia web e strumenti

Una volta avviato il demone, aprire un brower ed inserire nella barra dell'indirizzo: http://localhost:631 (Al posto di localhost può essere necessario inserire il nome host presente in /etc/hosts.

A questo punto. seguire le varie procedure guidate per aggiungere la stampante. Una procedura consueta è quella di iniziare facendo click sul pulsante Aggiungere stampanti e classi e poi su Aggiungi Stampante. Quando vengono richieste le credenziali inserire quelle di root. Il nome assegnato alla stampante non è rilevante, come i campi "ubicazione"' e "descrizione". Successivamente si presenterà un elenco di stampanti tra cui scegliere. L'attuale nome della stampante sarà presente vicino all'etichetta (ad esempio USB Printer #1 per le stampanti USB). Infine selezionare il driver appropriato per completare la configurazione.

Ora, testare la configurazione premendo il menù a discesa Amministrazione e scegliere Stampa pagina di prova. Se non stampa e le configurazioni sono corrette, probabilmente il driver selezionato non è quello appropriato.

Tip: Vedere #Interfacce alternative per CUPS per altri tipi di interfaccia.
Note: Quando si configura una stampante USB, essa dovrebbe essere elncata nella pagina Aggiungi Stampante. Se è invece elencata solo una "Stampante SCSI", probabilmente CUPS ha fallito nel riconoscere la stampante.

Amministrazione di CUPS

Per poter amministrare le stampanti tramite l'interfaccia web è necessario fornire un nome utente e la password, ad esempio: per aggiungere o rimuovere stampanti, per interrompere i processi di stampa eccetera. L'utente di default è quello appartenente al gruppo sys oppure root (per cambiare il gruppo modificare /etc/cups/cupsd.conf alla riga SystemGroup).

Se l'utente root è stato bloccato (per esempio se si usa solo sudo), non sarà possibile accedere all'interfaccia di amministrazione con il proprio utente e password. In questo caso seguire quanto descritto nelle faq di CUPS e leggere questo post sul forum internazionale.

Accesso remoto all'interfaccia web

Di default, l'interfaccia web di configurazione di CUPS è accessibile solo da localhost; cioè dal computer su cui è installato. Per consentire l'accesso da remoto, sarà necessario effettuare le seguenti modifiche al file /etc/cups/cupsd.conf. Sostituire la seguente riga:

Listen localhost:631

con

port 631

così che CUPS stia in ascolto anche per le richieste esterne.

Ci sono tre livelli di accesso che possono essere garantiti:

<Location />           #accesso al server
<Location /admin>	#accesso alla pagina di amministrazione
<Location /admin/conf>	#accesso alla pagina di configurazione

Per concedere ad un host remoto di accedere ad uno di questi tre livelli si dovrà aggiungere una regola di Allow (concessione dell'accesso) per il relativo livello. Una regola di Allow può essere formulata in diversi modi, ad esempio:

Allow all
Allow host.domain.com
Allow *.domain.com
Allow ip-address
Allow ip-address/netmask

Possono essere usate le regole di accesso negato (Deny), se si intende dare agli host della rete 192.168.1.0/255.255.255.0 il pieno accesso, il file /etc/cups/cupsd.conf includerà le seguenti linee:

# Limita l'accesso al server....
# Il default permette solo a locahost di accedre
<Location />
   Order allow,deny
   Allow From localhost
   Allow From 192.168.1.0/255.255.255.0
</Location>

# Limita l'accesso alla pagina di amministrazione...
<Location /admin>
   # La cifratura è disbilitata di default
   #Encryption Required
   Order allow,deny
   Allow From localhost
   Allow From 192.168.1.0/255.255.255.0
</Location>

# Limita l'accesso alla pagina di configurazione...
<Location /admin/conf>
   AuthType Basic
   Require user @SYSTEM
   Order allow,deny
   Allow From localhost
   Allow From 192.168.1.0/255.255.255.0
</Location>

Potrebbe anche essere necessario aggiungere:

DefaultEncryption Never

Questo dovrebbe evitare l'errore: 426 - L'aggiornamento è obbligatorio quando si utilizza l'interfaccia web di CUPS da una macchina remota.

Risoluzione dei Problemi

Il modo migliore per far funzionare la stampante consiste nell'impostare "LogLevel" in /etc/cups/cupsd.conf così:

LogLevel debug

E quindi controllare i dati dal file /var/log/cups/error_log in questo modo:

# tail -n 100 -f /var/log/cups/error_log

I caratteri alla sinistra del risultato stanno per:

  • D=Debug
  • E=Errore
  • I=Informazioni
  • E così via

Questi file potrebbero anche dimostrarsi utili:

  • /var/log/cups/page_log - Riproduce un nuovo appunto ogni volta che la stampa avviene correttamente
  • /var/log/cups/access_log - Elenca tutta l'attività del server cupsd http1.1

Naturalmente, è importante conoscere come funziona CUPS per far fronte ad eventuali problemi:

  1. Un'applicazione manda un file .ps (PostScript, un linguaggio script che indica come deve apparire la pagina) a CUPS quando l'opzione "stampa" viene selezionata (ciò avviene con la maggior parte dei programmi).
  2. CUPS quindi analizza il file PPD della stampante (file di descrizione della stampante) e trova i filtri necessari per convertire il file .ps nel linguaggio comprensibile alla stampante (come PJL, PCL), solitamente GhostScript.
  3. GhostScript riceve l'input e capisce quali filtri debba usare, quindi li applica e converte il file .ps nel formato compreso dalla stampante.
  4. Quindi manda un back-end. Ad esempio, se la stampante è connessa tramite porta USB, utilizza il back-end USB.

Si stampi un documento e si analizzi error_log per avere un'immagine più dettagliate e corretta del processo di stampa.

Problemi legati all'aggiornamento

Problemi che appaiono dopo che i pacchetti CUPS e i relativi programmi vengono aggiornati ad una versione più recente

CUPS smette di funzionare

Potrebbe succedere che a seguito di un aggiornamento ci siano dei cambiamenti nei file di congifurazione. Messaggi come "404 - page not found" potrebbero apparire provando ad amministrare CUPS via localhost:631, ad esempio.

Per usare la nuova configurazione, copiare /etc/cups/cupsd.conf.default in /etc/cups/cupsd.conf (salvare la vecchia configurazione se necessario) e riavviare CUPS per abilitare le nuove configurazioni.

Tutti i lavori sono "fermati"

Se tutti i lavori inviati alla stampante risultano "stopped", si elimini la stampante e quindi la si riaggiunga. Si usi l'interfaccia web di CUPS, si vada in Stampante > Elimina Stampante.

Per controllare la configurazione della stampante di vada in Stampanti, quindi Modificare Stampante. Trascrivere le informazioni mostrate, selezionare 'Modificare Stampante' per procedere alle pagine successive, e così via.

Tutti i lavori convergono in un "The printer is not responding"

Sulle stampanti di rete si dovrebbe verificare che il nome che CUPS utilizza come URI di connessione si risolva in IP della stampante tramite DNS. Ad esempio, se la connessione della stampante si presenta così:

lpd://BRN_020554/BINARY_P1

l'hostname "BRN_020554" deve risolvere l'IP della stampante dal server che esegue CUPS

La versione PPD non è compatibile con gutenprint

Lanciare:

# /usr/sbin/cups-genppdupdate

e riavviare CUPS (come evidenziato dal messaggio post-installazione di guternprint)

Altro

Errori di permessi CUPS
  • Alcuni utenti risolvono errori del tipo 'NT_STATUS_ACCESS_DENIED' (client Windows) usando una sintassi leggermente diversa:
smb://workgroup/username:password@hostname/printer_name
  • Qualche volta, l'intero dispositivo ha permessi sbagliati:
# ls /dev/usb/
lp0
# chgrp lp /dev/usb/lp0

La stampante HPLIP invia come errore "/usr/lib/cups/backend/hp failed"

Assicurarsi d'aver installato dbus e di averlo avviato. Se ci fossero ancora problemi, avviare il service di avahi-daemons.

Provare ad aggiungere la stampante come Stampante di Rete (Network Printer) usando il protocollo http://. Generare l'URI della stampante con hp-makeuri.

Nota: C'è la possibilità che si renda necessario cambiare i permessi di CUPS. Si segua quanto scritto qui.

HPLIP tutti i lavori vengono segnati come ultimati ma non si è riusciti a stampare niente

Questo succede su stampanti HP quando viene selezionato il vecchio driver hpijs (ad esempio per le stampati della serie Deskjet D1600). Quindi, quando si aggiunge una stampante, selezionare il driver hpcups.

Alcune stampanti, come le HP Laserjet, richiedono che il proprio firmware venga scaricato ad ogni accensione. Esiste un workaround, lanciare il comando:

# hp-firmware -n

hp-toolbox invia come errore, "Unable to communicate with device"

Se lanciando hp-toolbox come utente normale si ottiene:

# hp-toolbox
# error: Unable to communicate with device (code=12): hp:/usb/<printer id>

o, "Unable to communicate with device"", allora potrebbe essere necessario aggiungere l'utente al gruppo lp.

Questo può tornare utile anche per stampanti come la P1102 che fornisce un virtual cd-rom con i driver per MS-Windows. Il device compare e scompare. In questo caso provare i pacchetti da AUR usb-modeswitchAUR and usb-modeswitch-dataAUR, che permettono uno "switch off" di "Smart Drive" (la regola di udev inclusa in questi pacchetti).

Questo potrebbe succedere anche se il demone avahi-daemon non è avviato.

CUPS risponde '"foomatic-rip" not available/stopped with status 3' con una stampante HP

Se si riceve qualsiasi dei seguenti messaggi d'errore in /var/log/cups/error_log durante l'utilizzo di una stampante HP, con i lavori che sembrano essere avviati mentre invece non vengo terminati e il loro stato è impostato a 'stopped':

Filter "foomatic-rip" for printer "<printer_name>" not available: No such file or director

o:

PID 5771 (/usr/lib/cups/filter/foomatic-rip) stopped with status 3!

assicurarsi che hplip sia stato installato, in aggiunta al pacchetto menzionato sopra, net-snmp è anche necessario. Si veda questo post nel forum internazionale.

# pacman -S hplip

La stampa fallisce segnalando errori di autorizzazione

Se l'utente è stato aggiunto al gruppo lp, e gli è permesso stampare (impostato in cupsd.conf), allora il probema si trova nel file /etc/cups/printers.conf. Questa potrebbe essere la linea colpevole:

AuthInfoRequired negotiate

La si commenti e si riavvii CUPS.

Pulsante Stampa bloccato nelle applicazioni GNOME

Fonte (in inglese): Non posso stampare nelle applicazioni GNOME. - Arch Forums

Assicurarsi che il pacchetto libgnomeprint sia installato.

Modificare il file /etc/cups/cupsd.conf, aggiungendo

# HostNameLookups Double

Riavviare quindi CUPS:

# systemctl restart cupsd

Formato supportato sconosciuto: application/postscript

Commentare le linee:

application/octet-stream        application/vnd.cups-raw        0      -

nel file /etc/cups/mime.convs, e:

application/octet-stream

in /etc/cups/mime.types.

Trovare gli URI per i server di stampa Windows

Spesso Windows è poco intuitivo nella definizione esatta degli URI (la posizione dei dispositivi).Se si riscontrano problemi nello specificare la corretta posizione di un dispositivo in CUPS, eseguire il seguente comando per mostrare una lista di tutte le condivisioni disponibili per un dato utente di Windows:

$ smbtree -U utentewindows

Questo comando mostrerà ogni risorsa condivisa disponibile per il dato utente di Windows sulla rete LAN, dato come prerequisito che Samba sia installato e correttamente funzionante. L'output dovrebbe essere simile al qui proposto:

 WORKGROUP
	\\REGULATOR-PC   		
		\\REGULATOR-PC\Z              	
		\\REGULATOR-PC\Public         	
		\\REGULATOR-PC\print$         	Printer Drivers
		\\REGULATOR-PC\G              	
		\\REGULATOR-PC\EPSON Stylus CX8400 Series	EPSON Stylus CX8400 Series

Ciò di cui si ha bisogno nell'esempio è la prima parte dell'ultima riga, la risorsa che coincide con la descrizione della stampante. In questo caso, per mandare in stampa la EPSON Stylus, bisogna inserire come URI:

smb://username.password@REGULATOR-PC/EPSON Stylus CX8400 Series

in CUPS. Si noti che negli URI gli spazi bianchi sono permessi, mentre gli back-slash (\) vanno sostituiti con gli slash classici (/).

Errore di stampa client-error-document-format-not-supported

Provare a installare i pacchetti foomatic e utilizzare un driver foomatic.

Errore /usr/lib/cups/backend/hp

Modificare

 SystemGroup sys root

con

 SystemGroup lp root

in /etc/cups/cupsd.conf

"Unable to get list of printer drivers"

Provare a riumuovere i driver Footmatic.

lp: Error - Scheduler Not Responding

Se si riceve questo errore durante la stampa di un documento, provare con questo comando:

$ lp document-to-print

Provare a settare la variabile d'ambiente CUPS_SERVER:

$ export CUPS_SERVER=localhost

Se quest'ultimo passaggio funziona, è possibile rendere permanente tale modifica aggiungendo la linea export CUPS_SERVER=localhost nel file ~/.bash_profile o nel relativo file della propria shell, come ad esempio ~/.zprofile e si usa Zsh.

CUPS stampa una pagina vuota e una di errore con HP Laserjet

Questo è un bug conosciuto di cups. La prima pagina risulta essere bianca, la seconda riporta:

ERROR:
invalidaccess
OFFENDING COMMAND:
filter
STACK:
/SubFileDecode
endstream
...

Per risolvere dare questo comando da root:

#  lpadmin -p <printer> -o pdftops-renderer-default=pdftops

Errore: "Using invalid Host"

Aggiungere ServerAlias* in cupsd.conf.

Appendice

Interfacce alternative per CUPS

Se si utilizza GNOME, una possibilità è di gestire e configurare le stampanti usando system-config-printer-gnome. Questo pacchetto è disponibile per l'installazione tramite pacman:

# pacman -S system-config-printer-gnome

Per rendere system-config-printer realmente funzionante, può rendersi necessario eseguirlo come root (sfruttando sudo o gksu), o in alternativa impostare i permessi per lasciar controllare CUPS ad un normale utente. Se si vuol affontare questa seconda scelta, seguire i passaggi 1-3:

  • 1. Creare il gruppo, quindi aggiungere l'utente desiderato:
# groupadd lpadmin
# usermod -aG lpadmin <username>
  • 2. Aggiungere "lpadmin" (senza le virgolette) a questa linea nel file /etc/cups/cupsd.conf
SystemGroup sys root <inserire qui>
  • 3. Riavviare CUPS, effettuare il logout, quindi nuovamente il login (o, in alternativa, riavviare il computer)
# systemctl restart cupsd

Gli utenti KDE possono gestire le stampanti nel Centro di Controllo. Entrambi gli utenti (GNOME o KDE), dovrebbero riferirsi alla documentazione dei rispettivi Desktop Environment per maggiori informazioni su come gestire l'interfaccia.

Un'altra interfaccia utile è gtklp disponibile su AUR

Stampante virtuale PDF

CUPS-PDF è un pacchetto interessante, che permette all'utente di impostare una stampante virtuale, la quale genera PDF da qualsiasi dato le venga inviato. Ovviamente questo pacchetto non è strettamente necessario, ma può rivelarsi discretamente utile.

I documenti PDF generati si vanno ad allocare in una sottocartella di /var/spool/cups-pdf. Generalmente, la sottocartella porta il nome dell'utente che ha richiesto la creazione dei documenti contenuti. Un piccolo trucco per trovare i documenti stampati in formato PDF con più facilità: Modificare /etc/cups/cups-pdf.conf cambiando la riga

#Out /var/spool/cups-pdf/${USER}

a

Out /home/${USER}

Questo pacchetto può facilmente essere installato tramite pacman:

# pacman -S cups-pdf

Dopo aver installato il pacchetto, impostare il generatore di PDF come si imposterebbe qualsiasi altra stampante, tramite l'interfaccia web di CUPS. Come dispositivo, selezionare CUPS-PDF (Virtual PDF Printer); Produttore, selezionare Generic; Modello/Driver, selezionare Generic postscript color printer o Generic Cups-PDF Printer. In alternativa, recuperare il file PPD da qui.

Stampare su Postscript: un trucco per CUPS-PDF

Generare documenti PDF in applicazioni come OpenOffice è un'operazione molto semplice; spesso basta premere un pulsante. Diversamente, generare file Postscript da un documento può richiedere qualche attenzione in più. Per applicazioni come OpenOffice, nelle quali stampare con kprinter è un vero problema, esiste una valida via di fuga. CUPS-PDF (stampante virtuale di PDF) crea, nel suo processo di elaborazione, un file Postscript che viene poi convertito nel PDF richiesto alla stampa. Per generare un file Postscript attraverso CUPS-PDF, ciò di cui si ha bisogno è di catturare il file Postscript intermedio creato da CUPS-PDF. Questo risultato può essere facilmente raggiunto selezionando l'opzione "Stampa su file" nella finestra di stampa. Dopo aver selezionato "Stampa su file", scegliere il nome del file, la sua estensione, quindi cliccare su "Stampa".

Configurare la stampante virtuale CUPS-PDF
  1. Configurare il demone cups seguendo le istruzioni presenti in questa pagina.
  2. Installare cups-pdf da [extra].
  3. Accedere al manager delle stampanti CUPS: http://localhost:631 e selezionare:
Amministrazione -> Aggiungi Stampante
Selezionare CUPS-PDF (Virtual PDF), scegliere qui il produttore e il driver:
Produttore:    Generic
Driver:        Generic CUPS-PDF Printer

Ora, per stampare su un file Postscript, basta seguire la procedura classica, scegliendo nella finestra di stampa "CUPS-PDF" come stampante, quindi selezionare "Stampa su file", premere Stampa, inserire il nome del file da generare (con estensione .ps) e fare clic su Salva. Questa procedura è utile per fax, stampe da ufficio, ecc...

Un'altra risorsa per driver di stampanti

Turboprint (in inglese) è un driver proprietario per molte stampanti non ancora supportate in GNU/Linux (le Canon i*, per esempio). A differenza di CUPS, comunque, le stampe ad alta qualità vengono spesso segnate da un marchio o sono solo a pagamento.

Risorse