## CUPS - Server di stampa

Il sistema primario e i servizi di stampa di Ubuntu sono gestiti da Common UNIX Printing System (CUPS). Questo è un sistema di stampa liberamente disponibile e altamente portabile ed è diventato il nuovo standard per la stampa in molte distribuzioni Linux.

CUPS gestisce lavori e code di stampa, fornisce la stampa in rete tramite l'utilizzo del protocollo IPP (Internet Printing Protocol) e al tempo stesso offre supporto a una nutrita schiera di stampanti, dalle quelle a matrice di punti a quelle al laser (comprese tutte quelle nel mezzo). CUPS supporta anche il PPD (PostScript Printer Detection) e il rilevamento automatico delle stampanti di rete; inoltre fornisce un semplice strumento di amministrazione e configurazione basato sul web.

### Installazione

Per installare CUPS nel proprio computer Ubuntu, basta usare sudo con il comando apt-get e fornire i pacchetti da installare come primo parametro. Un'installazione completa di CUPS ha molte dipendenze di pacchetti, ma possono essere specificati tutti nella stessa riga di comando. Digitare quello che segue al prompt del terminale per installare CUPS:

    sudo apt-get install cupsys

Dopo essersi autenticati con la propria password utente, i pacchetti dovrebbero essere scaricati e installati. Completato questo processo, il server CUPS viene avviato automaticamente.

Per la risoluzione dei problemi, è possibile accedere alle registrazioni degli errori attraverso il file `/var/log/cups/error_log`. Se non vengono mostrate informazioni sufficienti per risolvere i problemi incontrati, è possibile incrementare la prolissità delle registrazioni del server CUPS modificando la direttiva LogLevel nel file di configurazione dal valore predefinito "info" a "debug" oppure "debug2", che registra tutto. Se vengono apportate ulteriori modifiche, ricordarsi di ripristinare i valori iniziali una volta risolto il problema per evitare di ritrovarsi file di registrazione di notevoli dimensioni

### Configurazione

Il comportamento del server CUPS viene configurato attraverso le direttive contenute nel file `/etc/cups/cupsd.conf`. Il file di configurazione di CUPS segue la stessa sintassi del file di configurazione primario del server HTTP Apache. In questo modo, l'utente che ha familiarità con la modifica del file di configurazione di Apache si sentirà a suo agio nella modifica del file di configurazione di CUPS. Di seguito vengono presentati alcuni esempi di impostazioni che potrebbe essere opportuno cambiare fin da subito.

Prima di modificare il file di configurazione, è opportuno creare un copia del file originale e proteggerla da scrittura, in modo da avere le impostazioni originali come riferimento e per riusarle in caso di necessità. Copiare il file `/etc/cups/cupsd.conf` e proteggerlo dalla scrittura con i seguenti comandi, inseriti a un prompt di terminale.

    sudo cp /etc/cups/cupsd.conf /etc/cups/cupsd.conf.original
    sudo chmod a-w /etc/cups/cupsd.conf.original

- ServerAdmin: per configurare l'indirizzo email dell'amministratore incaricato alla gestione del server CUPS, aprire il file di configurazione `/etc/cups/cupsd.conf` usando l'editor di testi preferito, quindi modificare la riga ServerAdmin come desiderato. Per esempio, se l'indirizzo email dell'amministratore del server CUPS è «carlo@qualchesocieta.it», modificare la riga ServerAdmin come segue:

      ServerAdmin carlo@qualchesocieta.it

Per ulteriori esempi di direttive di configurazione nel file di configurazione del server CUPS, consultare la pagina manuale associato inserendo il comando seguente a un prompt di terminale:

    man cupsd.conf

Ogni volta che vengono apportati cambiamenti al file di configurazione `/etc/cups/cupsd.conf`, è necessario riavviare il server CUPS digitando il comando seguente a un prompt di terminale:

    sudo /etc/init.d/cupsys restart

Altre configurazioni per il server CUPS sono svolte utilizzando il file `/etc/cups/cups.d/ports.conf`:

- Listen: in modo predefinito, su Ubuntu, l'installazione del server CUPS resta in ascolto solamente sull'interfaccia di loopback all'indirizzo IP 127.0.0.1. Per poter fare in modo che il server CUPS ascolti sull'indirizzo IP della rete, è necessario specificare un nome host, l'indirizzo IP oppure una coppia indirizzo IP/porta con l'aggiunta di una direttiva «Listen». Per esempio, se il server CUPS è all'interno di una rete locale all'indirizzo IP 192.168.10.250 e si desidera renderlo accessibile ad altri sistemi in questa sotto-rete, è necessario modificare il file `/etc/cups/cupsd.conf` e aggiungere una direttiva «Listen» in questo modo:

      Listen 127.0.0.1:631 # Listen esistente per loopback
      Listen /var/run/cups/cups.sock # socket Listen esistente
      Listen 192.168.10.250:631 # Listen sull'interfaccia LAN, porta 631 (IPP)

  Nell'esempio precedente, è possibile rendere un commento o rimuovere il riferimento all'indirizzo di loopback (127.0.0.1) se non si desidera che cupsd resti in ascolto su quell'interfaccia, ma che invece resti in ascolto solo sull'interfaccia Ethernet della LAN (Local Area Network). Per abilitare l'ascolto su tutte le interfacce di rete a cui un certo host è collegato, inclusa quella di loopback, è possibile creare una voce Listen per l'host socrates come segue:

      Listen socrates:631 # Listen su tutte le interfacce dell'host "socrates"

  oppure omettendo la direttiva Listen e utilizzando quella Port, come in:

      Port 631 # Listen sulla porta 631 di tutte le interfacce

### Riferimenti

Sito Web di CUPS

NFS (Network File System) |  | Capitolo 13. Servizi email