CUPS

De La Wiki de MaInKiVi
Salta a la navegació Salta a la cerca

Introducció

Sota les sigles trobem Common UNIX Printing System o Sistema d'impressió comú Unix, un servei potent que permet compartir les nostres impressores amb altres dispositius basats en UNIX, com és el cas de LINUX.

Configuració

CUPS ja està pre-instal.lat en la majoria de distribucions Linux, però no es així en el cas d'Ubuntu Server, podem fer la instal.lació manual amb:

sudo apt install cups

Primer farem una copia de seguretat de la configuració:

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

A podem modificar certs paràmetres com són:

  • ServerAdmin on s'especifica el correu electrònic del servidor d'impressió:
ServerAdmin bjoy@somebigco.com
  • Listen - IP i porta de sortida específica. Per defecte, el servidor només escolta al loopback és a dir, a si mateix i a la porta 631. Podem afegir una nova adreça afegint a:
# Only listen for connections from the local machine.
Listen localhost:631
Listen /var/run/cups/cups.sock

L'adreça de l'equip que volem permetre administrar-lo:

#nou equip administrador:
Listen 192.168.10.250:631      # Listen on the LAN interface, Port 631 (IPP)

Una vegada realitzats els canvis els reiniciem amb:

sudo systemctl restart cups.service

Interfície Web

CUPS Ja incorpora una interfície web per administrar-lo compatible amb tot tipus de navegador.

Afegint un usuari a la interfície web

Per defecte s'administra des de l'usuari root o sudoer, però podem afegir un usuari més abm:

sudo usermod -aG lpadmin usuari

on usuari seria l'usuari que destinem a administrar.

Accedint des del navegador

Només cal obrir des del nostre equip l'adreça:

https://localhost:631

Permetent que altres equps accedeixen al servidor web

Per defecte, el servidor només es accessible des de la mateixa màquina anfitrió però podem permetre l'accés des d'altres equips, per fer-ho editem el fitxer de navegació:

sudo nano /etc/cups/cupsd.conf

I canviem les linies:

# Only listen for connections from the local machine.
Listen localhost:631
Listen /var/run/cups/cups.sock

I el deixem així:

# Only listen for connections from the local machine.
#Listen localhost:631
Listen /var/run/cups/cups.sock
Port 631

és a dir, comentem la linia de Listen localhost:631 i afegim Port 631, d'aquesta manera escoltarà qualsevol petició del port 631. Ara modifiquem el paràmetres web del mateix fixeer afegint Allow all a tots els Location:

<Location />
  Order allow,deny
  Allow all
</Location>

# Restrict access to the admin pages...
<Location /admin>
  Order allow,deny
  Allow all
</Location>

# Restrict access to configuration files...
<Location /admin/conf>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
  Allow all
</Location>

Ara reiniciem el servei:

sudo service cups restart

I ja podem accedir des d'altres equips ficant l'adreça IP al navegador:

https://192.168.0.241:631/
Interfice Web de CUPS

Compartint impressores

Compartint impressores amb equips Windows

  • Només cal compartir un recurs amb SAMBA

Compartint amb altres equips Linux

Denegant i permitent usuaris (ACL)

Comandes importants

Estat de les impressores amb (lpstat)

Mostra l'estat d'una impressora. Més informació a la web oficial.

Exemples

  • lpstat -t - mostra la informació e totes les impressores instal·lades.
  • lpstat -p - mostra totes les impressores instal·lades.
  • lpstat -a - mostra només les impressores que accepten peticions d'impressió.
  • lpstat -d - mostra la impressora per defecte.
  • lpstat -o - mostra la cua d'impressió.

Cancela tasques (cancel)

Amb cancel pots cancelar tasques d'impressió. Exemple d'aquesta ordre

Exemples

  • cancel - cancela totes les impressions.
  • cancel konica-minolta - cancela totes les impressions de la impressora amb etiqueta konica-minolta.
  • cancel -u argo - Òbviament amb el sudo davant per cancelar totes les tasques de l'usuari argo.

Ordre per imprimir (lp)

Amb aquesta ordre enviem des de consola la petició d'imprimir un fitxer a una impressora seleccionada. Exemple de l'ordre lp.

Exemples

  • lp -d myprinter -o media=legal -o sides=two-sided-long-edge file name - Ordre per imprimir a doble cara el fitxer file name a la impressora myprinter.

lpq

Mostra l'estat i la cua de les impressores. Mes info sobre aquesta ordre.

Exemples

  • lpq -l - Mostra la informació de les impressores més extesa.

Elimina tasques (lprm)

Elimina peticions d'impressió de la cua. Més informació

Exemples

  • lprm -P mydest 385 - Elimina la peticó d'impressió de la impressora mydest amb ID 385 ( que hem averiguat amb lpq -l).

lpadmin

Configura el servei lp. [https://www.computerhope.com/unix/ulpadmin.htm Exemple detallat de la comanda lpadmin

Exemples

  • lpadmin -x Konica-Minolta - Elimina la impressora amb etiqueta Konica-Minolta.
  • lpadmin -p Konica-Minolta -E -v smb://usuari:password@192.168.0.240/KONICA%20MINOLTA%20Virtual -P /usr/local/papercut/client/ppd/KOC554SX.ppd - Exemple d'instal·lació d'una impressora compartida per un servidor samba amb IP 192.168.0.240 amb nom Konica-Minolta i especifant el controlador amb extensió ppd.

Recursos