Hay muchos tipos diferentes de impresoras y no todas las impresoras se pueden usar en un sistema Linux. Si necesitas añadir una impresora a tu instalación de Linux o, simplemente, deseas obtener más información sobre cómo instalar una impresora en su sistema Linux, este articulo te guiará en todo el proceso.
Aunque existen muchos estándares de impresión de diferentes fabricantes, en Linux se ha popularizado el uso de CUPS (Common UNIX Printing System) y es el servicio de impresión que viene por defecto en las distribuciones Linux. Por lo tanto, deberemos configurar cups, tal y como explico en este artículo.
Por supuesto, si queremos instalar otro diferente como, por ejemplo, HP Jetdirect, podemos hacerlo, pero nos centraremos en CUPS por ser de código abierto y el producto estándar que viene en todas las distribuciones Linux.
Instalar CUPS
Imprimir con Linux se ha vuelto fácil con la introducción de CUPS. Nos permite administrar impresoras en Linux.
Como os podéis imaginar, existe un software llamado cups, que es el que tendremos que instalar para poder arrancar el demonio cupsd y, así, poder configurar y utilizar impresoras en Linux. Con el comando yum install cups instalaremos este producto, aunque suele venir instalado con el software base de cualquier distribución de Linux.
# rpm -qa |grep -i cups
cups-lpd-1.4.2-50.el6_4.5.x86_64
cups-1.4.2-50.el6_4.5.x86_64
cups-libs-1.4.2-50.el6_4.5.x86_64
#
¿Necesitas Comprar una Impresora?
Configurar una impresora con system-config-printer en Linux
system-config-printer es una herramienta gráfica que nos permite administrar e instalar las impresoras del sistema. Si lo deseamos, podemos configurar las impresoras por línea de comandos mediante el comando lpadmin. Así lo suelo hacer yo en los sistemas que administro.
# rpm -qa |grep -i system-config-printer
system-config-printer-libs-1.1.16-23.el6.x86_64
system-config-printer-1.1.16-23.el6.x86_64
#
La herramienta system-config-printer es muy intuitiva, así que no voy a dedicar mucho tiempo en explicarla. No obstante, aquí os dejo algunas capturas de pantalla:
Con estos sencillos pasos es muy fácil instalar impresoras en Linux.
En los ficheros de configuración /etc/printcap y /etc/cups/printers.conf, tenemos todo el detalle de las impresoras configuradas en el sistema:
# cat /etc/printcap
# This file was automatically generated by cupsd(8) from the
# /etc/cups/printers.conf file. All changes to this file
# will be lost.
CP6C|CP6C:rm=lincrix0.8799.1286.ecs.hp.com:rp=CP6C:
CP8B|Ricoh Aficio MP C3500:rm=lincrix0.8799.1286.ecs.hp.com:rp=CP8B:
#
# cat /etc/cups/printers.conf
# Printer configuration file for CUPS v1.4.2
# Written by cupsd on 2014-10-30 14:03
# DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING
<DefaultPrinter CP6C>
Info CP6C
MakeModel HP LaserJet 4200 Foomatic/pxlmono
DeviceURI socket://10.176.128.20:9100
State Idle
StateTime 1414674173
Type 8400916
Filter application/vnd.cups-raw 0 -
Filter application/vnd.cups-postscript 100 foomatic-rip
Filter application/vnd.cups-pdf 0 foomatic-rip
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>
<Printer CP8B>
Info Ricoh Aficio MP C3500
Location 10.176.128.24
MakeModel Ricoh Aficio MP C3500 PS
DeviceURI socket://10.176.128.24:9100
State Idle
StateTime 1414670517
Type 8433916
Filter application/vnd.cups-raw 0 -
Filter application/vnd.cups-postscript 0 foomatic-rip
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>
#
Comprobar el estado de una impresora
Podemos utilizar los comandos lpc y lpstat.
# lpc
lpc> status
CP6C:
printer is on device 'socket' speed -1
queuing is enabled
printing is enabled
no entries
daemon present
CP8B:
printer is on device 'socket' speed -1
queuing is enabled
printing is enabled
no entries
daemon present
lpc> exit
#
# lpstat -t
scheduler is running
system default destination: CP6C
device for CP6C: socket://10.176.128.20:9100
device for CP8B: socket://10.176.128.24:9100
CP6C accepting requests since Thu 30 Oct 2014 02:02:53 PM CET
CP8B accepting requests since Thu 30 Oct 2014 01:01:57 PM CET
printer CP6C is idle. enabled since Thu 30 Oct 2014 02:02:53 PM CET
Ready to print.
printer CP8B is idle. enabled since Thu 30 Oct 2014 01:01:57 PM CET
Ready to print.
#
Cambiar la IP de una impresora
En mi trabajo suele ser frecuente recibir peticiones de cambios de IPs de impresoras. Hacerlo es muy sencillo:
- Confirmamos que llegamos al puerto de destino de la nueva IP de la impresora:
# nc -zv 10.144.192.57 9100
Connection to 10.144.192.57 9100 port [tcp/jetdirect] succeeded!
- IP de la impresora antes del cambio:
# lpstat -t |grep IF809R |grep socket
device for IF809R: socket://10.144.28.84
- Configuración de la nueva IP:
# lpadmin -p IF809R -v socket://10.144.192.57
# cupsdisable IF809R
# cupsenable IF809R
# cupsaccept IF809R
# lpstat -t |grep IF809R |grep socket
device for IF809R: socket://10.144.192.57
#
Añadir una nueva impresora
Para ello, utilizaremos el comando lpadmin. Ejemplo:
lpadmin -p HPLaserJetP3015 -v socket://19.86.82.172 -P /usr/share/cups/model/HP/LaserJet_P3005-Postscript.ppd
Reiniciar una impresora
lpstat -p IA217T
printer IA217T disabled since Tue 28 Feb 2017 11:38:13 AM CET –
Print file sent, waiting for printer to finish…
cupsenable IA217T
lpstat -p IA217T
printer IA217T now printing IA217T-29398. enabled since Tue 21 Mar 2017 04:17:45 PM CET
Connected to printer…
Si la impresora sigue sin imprimir, tendremos que eliminar los trabajos en cola, tal y como explico en el siguiente punto.
Cancelar todos los trabajos de una impresora
lpstat -o IA217T
IA217T-29616 gcxadm 10240 Fri 03 Mar 2017 12:46:32 PM CET
IA217T-29623 gcxadm 24576 Fri 03 Mar 2017 01:45:00 PM CET
IA217T-29624 gcxadm 14336 Fri 03 Mar 2017 01:53:21 PM CET
IA217T-29693 gcxadm 50176 Mon 06 Mar 2017 02:41:12 PM CET
IA217T-29763 gcxadm 14336 Wed 08 Mar 2017 08:40:45 AM CET
IA217T-29764 gcxadm 14336 Wed 08 Mar 2017 08:41:04 AM CET
IA217T-29828 gcxadm 158720 Wed 08 Mar 2017 02:17:59 PM CET
IA217T-29847 gcxadm 14336 Wed 08 Mar 2017 02:48:01 PM CET
cancel -a IA217T
lpstat -o IA217T
Otros comandos útiles del sistema de impresión en Linux
lpd: Es el demonio (proceso en background) que se encarga de administrar las colas de impresión. Si no está activo, no se imprimirá ningún trabajo. El archivo de configuración es /etc/printcap.lpd Es el demonio (proceso en background) que se encarga de administrar las colas de impresión. Si no está activo, no se imprimirá ningún trabajo. El archivo de configuración es /etc/printcap.
Opciones de este fichero:
lp: Especifica la ruta del dispositivo (/dev/lp0).
sd: Especifica el directorio de spool (donde se encolan los trabajos).
lf: Indic la ruta donde se registrarán los errores.
rm: Nombre del sistema remoto de impresión.
rp: Nombe de la impresora remota.
if: Se especifica el filtro a aplicar a un trabajo antes de ser impreso (ASCII).
lpr: Envía trabajos a la cola de impresión.
lpr [-Pimp] [-h] [-#Num] [archivos]lpr [-Pimp] [-h] [-#Num] [archivos]
-Pimp: Especificamos a qué impresora (Imp) se enviarán los trabajos.
-h: Elimina la primera hoja de cabecera.
-#Num: Indicamos el número de copias de impresión.
lpq: Analiza el estado de la cola de impresión.
lprm: Cancelamos trabajos de impresión.
lpc: Comprobamos el estado de todas las impresoras.
lp archivo: Imprime un archivo.
-d dest: Elegimos la impresora.
-m: Cuando termine la impresión nos enviará un correo electrónico.
-n num: Número de copias.
lpstat: Nos da información acerca del estado del sistema de impresión, tal y como hemos visto anteriormente.
escputil: Revisa los niveles de tinta.
Te puede interesar
- Administración del sistema de archivos de Linux
- Comandos básicos de Linux sobre el sistema de archivos
Mi pasión por la tecnología me lleva constantemente a explorar las últimas tendencias y aplicaciones, buscando siempre formas de implementar soluciones innovadoras que mejoren la eficiencia. En puerto53.com comparto contenido valioso para ayudar a otros profesionales y entusiastas de la informática a navegar y dominar el complejo mundo de la tecnología. Mi especialidad en Linux RedHat.
Más sobre mí en el este enlace,
Hola estoy intentado instalar una impresora hp 315 ink en el programa Loc-OS linux y no he podido. ¿Me podría ayudar?
Hola, para las impresoras HP, has de utilizar HPLIP. Lo puedes descargar desde https://developers.hp.com/hp-linux-imaging-and-printing