Printing/es

Este documento cubre la instalación y mantenimiento de impresoras mediante CUPS y Samba. Cubre la instalación local y la instalación en red y contiene instrucciones acerca de cómo usar impresoras compartidas desde otros sistemas operativos. Para obtener más información acerca del uso de las órdenes o  para imprimir documentos, leer la excelente documentación del proyecto CUPS.

Utilizar las herramientas adecuadas
Linux ofrece buen soporte para las impresoras. La herramienta adecuada para este trabajo es CUPS (Common Unix Printing System). Desde el comienzo de este proyecto allá por 1999, la instalación y el mantenimiento de CUPS ha mejorado sustancialmente.

En este documento mostraremos como usar CUPS para configurar una impresora local o en red. No se entrará en mucho detalle ya que el proyecto dispone de un magnífica documentación para un uso avanzado.

Núcleo
Cuando un usuario quiere instalar una impresora en un sistema, el primer paso es saber cómo se conecta la impresora al sistema. ¿Lo hace a través de un puerto local como LPT o USB, o está en red?. En este último caso, ¿Utiliza el protocolo de impresión de Internet (IPP) o el protocolo CIFS de Microsoft Windows (Compartir recursos en Microsoft Windows)?

La siguientes secciones indican la configuración mínima de núcleo que se necesita para conectar una impresora en Gentoo. Por supuesto, esto depende de cómo se va a conectar la impresora al sistema, por lo que para mayor comodidad se han separado las indicaciones.

Ir a y lanzar  para entrar en la configuración del núcleo. Si se ha utilizado para configurar el núcleo, entonces se deberían realizar estos pasos para asegurarse de que se no ha olvidado nada. No se puede confiar únicamente en  para configurar todo dentro del sistema de forma automática. La impresión es un área en la que es complicado ajustar todo de forma automática.

En los siguientes ejemplos de configuración se ha añadido el soporte necesario en el núcleo, no como módulos. No es obligatorio construir el núcleo de esta forma. Si se desea soporte modular, simplemente ¡No olvide que después se deben cargar los módulos apropiados!.

Ahora vaya a la sección apropiada para configurar (o comprobar) el núcleo.

Impresora conectada localmente (LPT)
El puerto LPT se usa normalmente para identificar el puerto paralelo de la impresora. Es necesario activar previamente el soporte para el puerto paralelo, exactamente "PC-style parallel port support" (a menos que se esté utilizan un sistema SPARC), después de ésto, habilitaremos el soporte para una impresora a través del puerto paralelo.

¡Eso es todo! Salir de la configuración del núcleo y reconstruirlo.

Ahora continúe con CUPS.

Impresora conectada localmente (USB)
CUPS soporta la impresión USB con el ajuste USE USB habilitado. Esto utiliza la biblioteca libusb para el soporte de USB en el espacio de usuario.

Algunos paquetes de software antiguos pueden requerir soporte de impresora USB dentro del núcleo. Se se construye como módulos, éste debería llamarse :

Sin embargo, la utilización del soporte para impresoras USB dentro del núcleo se considera obsoleto. Hacer esto sólo cuando sea estrictamente necesario.

Impresora conectada de forma remota (IPP y LPD)
Para poder conectar a una impresora remota a través del protocolo de impresión de Internet (Internet Printing Protocol) o el protocolo del demonio de impresora de línea el núcleo necesita soporte de red. Asumiendo que el núcleo ya lo tiene, continúe con CUPS.

Impresora conectada de forma remota (CIFS)
El núcleo debe ofrecer soporte para CIFS:

Una vez se ha completado la configuración para CIFS, salga de la configuración del núcleo y reconstrúyalo. No hay que olvidar copiar la imagen del núcleo a la localización (y no olvidar montar  si es necesario) y actualizar la configuración del cargador de arranque antes de reiniciar el sistema. Observe las órdenes que se deben lanzar como root en el paso Impresora conectada localmente (LPT) de arriba para sbar cómo realizar estos pasos.

Ahora continúe con los siguientes pasos del proceso de instalación de CUPS.

Ajustes USE
CUPS dispone de algunas características opcionales que pueden se de su interés. Para activar o desactivar estas características, usaremos los ajustes USE asociados a las mismas.

Compruebe los ajustes USE actuales. Para desviarse de los ajustes actuales solo para CUPS, añáda los deseados al fichero.

Emerge
Cuando esté satisfecho con el resultado, pídale a Portage que instale CUPS:

Samba
Para habilitar el soporte para SAMBA, se necesita instalar con soporte para CUPS. Actualice el fichero o directorio para habilitar el ajuste USE  :

A continuación (re)instale Samba:

Avahi
CUPS uses Avahi internally when built with the  USE flag to scan for printers on the local network. To use Avahi hostnames to connect to networked printers, set up .local hostname resolution and restart the CUPS service. CUPS and cups-filters need to be built with the  USE flag as well. Use the command for listing available printers.

Grupo de impresión
Cualquier usuario que necesite imprimir debe añadirse al grupo :

Para poder añadir y editar impresoras a través de la interfaz web de CUPS, cualquier usuario autorizado debe pertenecer al grupo lpadmin:

OpenRC
Si la impresora está conectada localmente al sistema y necesita estar disponible en cada inicio, se necesita cargar el demonio de CUPS cada vez que se arranca el sistema. Asegúrese de que la impresora está conectada y alimentada antes de que se arranque el demonio de CUPS.

systemd
Para iniciar el demonio de CUPS de forma inmediata y hacer que arranque cuando el sistema se inicie, lanzar:

Interfaz HTTP
Una vez se ha arrancado el servicio, los usuario autenticados pueden añadir impresoras, root está disponible por defecto y cualquier miembro del grupo lpadmin. Abrir la siguiente URL en un navegador Web:

http://localhost:631/

Ficheros
La configuración por defecto del servidor CUPS localizada en es suficiente para la mayoría de los usuarios. Sin embargo, algunos usuarios podrían necesitar cambios a la configuración de CUPS.

En las siguientes secciones se cubren algunos cambios que se necesitan a menudo:


 * Permitimos a otros sistemas que utilicen la impresora conectada a esta estación de trabajo Linux.
 * Concedemos acceso a la administración de CUPS desde sistemas remotos.
 * Configuramos CUPS para que ofrezca soporte a los controladores PCL de Windows. Esto se recomienda para que los sistemas Windows puedan utilizar una impresora compartida con SAMBA ya que la mayoría de los controladores Windows son PCL.
 * Configuramos este sistema para que utilice una impresora conectada a otro sistema (no a través de un recurso Windows compartido).

Acceso a impresoras remotas
Para que otros sistemas utilicen su impresora a través de IPP, se necesita permitir explícitamente el acceso a la impresora en el fichero. No necesitará realizar este cambio para compartir su impresora mediante SAMBA.

Abra el fichero con el editor de texto preferido y añada una línea   para el sistema o los sistemas que deberían acceder a la impresora. En el ejemplo de abajo, se concede acceso a la impresora desde localhost y desde cualquier sistema cuya dirección IP comience por.

Esta línea difunde información de navegación a los clientes de la red. Esto hará que los usuarios sepan que la impresora está disponible.

También se necesita especificar en qué puerto escucha CUPS de modo que responderá a las peticiones desde otras máquinas de la red:

The CUPS server reject a hostname or server alias in the HTTP request with "Bad request" message. It works with IP-addresses by default. So if you want to print or browse CUPS interface by using a hostname or domain, add the ServerAlias parameter:

Administración remota de CUPS
Si se necesita realizar una administración remota, entonces se necesita conceder acceso a otros sistemas aparte del equipo local. Edite el fichero y conceda acceso de forma explícita a todos los sistemas que necesiten acceso. Por ejemplo, para permitir el acceso a un sistema con dirección IP 192.168.0.3:

No olvide reiniciar el demonio de CUPS después de realizar los cambios a. Para ello lance la orden.

Habilitar soporte para los controladores PCL de Windows
Los controladores PCL envían datos en crudo al servidor de impresión. Para activar el soporte de dichos datos en CUPS, se debe editar y eliminar los comentarios de la línea   si no están eliminados ya. A continuación, editar y hacer lo mismo si no está hecho ya.

No olvide reiniciar el demonio de CUPS después de aplicar estos cambios. Para ello, lance.

Configurar una impresora remota
Si las impresoras están conectadas a un servidor de impresión CUPS remoto, se puede configurar el sistema de forma para que use la impresora remota modificando el fichero.

Si asumimos que la impresora está conectada a un sistema llamado , abra  con el editor de texto preferido y ajuste la directiva  :

El sistema remoto tendrá una configuración por defecto de la impresora que se utilizará. Para cambiar la impresora por defecto, utilice la orden :

En primer lugar, liste las impresoras disponibles:

Defina la impresora HP LaserJet 5P como impresora por defecto:

Introducción
Si la impresora que se desea configurar está disponible de forma remota a través de un servidor de impresión distinto (pero que está corriendo CUPS), entonces no se necesita seguir las siguientes instrucciones. En su lugar, lea cómo Configurar una impresora remota.

Detectar la impresora
Si se conectó una impresora USB o al puerto paralelo cuando se inició el sistema Linux, se podría recuperar información del núcleo indicando que se detectó la impresora satisfactoriamente. Esto es una mera indicación de que se ha detectado la impresora y no un requisito.

Para una impresora USB:

Listing available drivers
Para listar todos los controladores disponibles, lanzar la siguiente orden:

no muestra mucha información y su uso puede resultar complicado. Si se tienen problemas, leer para obtener más información.

Instalar la impresora
Para instalar la impresora en el sistema, lance un navegador e introduzca la dirección http://localhost:631. Se debería mostrar la interfaz web de CUPS, desde la que se pueden realizar todas las tareas administrativas.

Vaya a e introduzca la información de acceso de root y la contraseña del equipo. Entonces, cuando acceda al interfaz de administración, haga clic en. Se mostrará una nueva pantalla en la que se permite introducir la siguiente información:


 * El nombre de la cola de impresión, un nombre corto pero descriptivo que utilizarán en el sistema para identificar la impresora. Este nombre no debe contener ni espacios ni caracteres especiales. Por ejemplo, para la impresora HP LaserJet 5P se puede mostrar el título.
 * La localización, una descripción de dónde se encuentra localizada físicamente la impresora (por ejemplo "dormitorio" o "en la cocina al lado del lavavajillas", etc.). Esto se hace así para ayudar en el mantenimiento de varias impresoras.
 * La descripción es una descripción completa de la impresora. Una descripción frecuente es el nombre completo de la impresora (por ejemplo "HP LaserJet 5P").

La siguiente pantalla solicita el dispositivo en el que escucha la impresora. Se mostrará la posibilidad de elegir entre varios dispositivos. La siguiente tabla muestra algunos de ellos, pero esta lista no es exhaustiva.

Si se está instalando una impresora remota, se le pedirá la URL de la impresora:


 * Un servidor de impresión necesita una sintaxis.
 * Un servidor de impresión HP JetDirect necesita una sintaxis.
 * Una impresora IPP necesita una sintaxis  o.

A continuación seleccione el fabricante de la impresora y en la pantalla siguiente junto con el modelo y el número en la pantalla subsiguiente. Para muchas impresoras puede encontrar múltiples controladores. Seleccione uno o busque en la Lista de impresoras de OpenPrinting uno más adecuado. Los controladores se pueden cambiar fácilmente más tarde.

Una vez haya seleccionado el controlador, CUPS se informará de que la impresora se ha añadido satisfactoriamente al sistema. Navegue a la página de administración de la impresora y seleccione para modificar los ajustes de la misma (resolución, formato de página, ...).

Probar y reconfigurar la impresora
Para verificar que la impresora está funcionando correctamente vaya a la página de administración de impresoras, seleccione la impresora y haga clic en.

Si la impresora no parece funcionar correctamente, pulse en para reconfigurar la impresora. Se mostrarán las mismas pantallas que aparecieron durante la primera instalación, sin embargo, la configuración por defecto ahora será la configuración actual.

Si la impresora no funciona, puede obtener alguna pista echando un vistazo al fichero al registro de errores de CUPS localizado en. En el siguiente ejemplo se muestra un error en los permisos, probablemente debido a un ajuste inadecuado en el fichero.

Instalar el mejor controlador
Existen muchos controladores de impresoras. Para encontrar cuál de ellos ofrece el mayor rendimiento, visite la lista de impresoras en OpenPrinting. Se debe seleccionar la marca y el tipo o modelo de la impresora para encontrar el controlador que recomiendan en este sitio. Por ejemplo, para la HP LaserJet 5P nos recomiendan el controlador .

Descargue el archivo PPD y colóquelo en, luego lance como root. Esto proporcionará el controlador a través de la interfaz web de CUPS. Ahora reconfigure la impresora como se ha descrito anteriormente.

Enabling job accounting in for Xerox printers
High-end Xerox printers (often a gray, cabinet sized device) use XCPT PDL, and XML based, and poorly documented XPIF ticketing instruction format.

XCPT filter in Cups never made it to a release grade, and the work on it was eventually dropped and all XPIF must be input into a PPD manually. Luckily, it's largely a direct copy of IPP, using XML syntax. After peeking into docs available online, we can craft an arbitrary XPIF command using corresponding IPP attributes.

To configure XPIF solely for ticketing/accounting, drop the following into any PPD:

It will draw a dropdown box in any printing ui compliant with CUPS PPD extensions to enter the id.

The long term solution would still be for Xerox to fully publish XPIF, and XCPT specifications, to allow for a proper XPIF cups filter to be developed.

Introducción
Algunas impresoras requieren controladores específicos u ofrecen características adicionales que no se habilitan a través del proceso normal de configuración (descrito arriba). En este capítulo mostramos una selección de impresoras y como se consigue hacerlas funcionar en Gentoo Linux.

Controlador Gutenprint
Los controladores gutenprint son controladores de código abierto de gran calidad para varias impresoras Canon, Epson, HP, Lexmark, Sony, Olympus y PCL que ofrecen soporte CUPS. También ofrecen soporte para ghostscript, El Gimp y otras aplicaciones.

El árbol Portage de Gentoo contiene un ebuild para los controladores gutenprint. Para instalarlos, lanzar. Observar que este ebuild requiere de varios ajustes USE. Se deben habilitar al menos  y   para que los controladores gutenprint funcionen correctamente.

Cuando el proceso de emerge haya finalizado, los controladores gutenprint estarán disponibles a través de la interfaz web de CUPS.

Controlador HPLIP
Lea el artículo sobre el Controlador HPLIP

Lexmark driver
Most Lexmark printers are handled by their "Universal Printer Driver":

Once this is installed, there is a single Lexmark driver available in the CUPS setup wizard that should work with most printers and MFDs.

Controlador PNM2PPA
PPA es una tecnología de HP orientada a enviar todo el procesamiento de bajo nivel al sistema, en lugar de la impresora. Con lo cual las impresoras son más baratas, pero consumen más recursos.

Si el sitio OpenPrinting informa que el controlador pnm2ppa es la mejor opción, entonces se necesita instalar el filtro en el sistema:

Una vez instalado, descargue el fichero PPD de la impresora desde el sitio OpenPrinting y colóquelo en el directorio. A continuación configure la impresora siguiendo los pasos indicados arriba.

Controlador SpliX
SpliX es un conjunto de controladores CUPS para impresoras SPL (Samsung Printer Language). Aunque también existen controladores SpliX en OpenPrinting, el paquete permite una instalación de estos controladores rápida y gestionada por portage. Para instalarlos lance:

y reinicie.

Controladores de impresora Brother
Lea impresora Brother en red.

Canon printer drivers
See the specific pages:
 * Canon CAPT drivers
 * Canon Pixma drivers

Configurar un cliente Windows para IPP
Microsoft Windows ofrece soporte para IPP (Los usuarios de Windows 9x y ME necesitarán instalarlo por separado). Para instalar una impresora en Windows conectada a un sistema Linux bajo Windows, lance el asistente y seleccione. Cuando se solicite el URI, use la sintaxis.

Configurar un cliente Windows para una impresora compartida a través de Samba
Para compartir la impresora en la red CIFS, se debe instalar y configurar SAMBA adecuadamente. Los pasos para realizarlo están fuera del alcance de este artículo, sin embargo, se tratará brevemente la configuración de impresoras compartidas a través de SAMBA.

Abra con el editor de texto preferido y añada la sección  :

Navegue al principio del fichero hasta que esté en la sección. Localice la entrada  y los ajustes   y defínalos como    (mire el ejemplo de abajo):

Asegúrese de habilitar el soporte pcl para windows en CUPS. A continuación reinicie el servicio smb para que los cambios tengan efecto.

Configurar un cliente Linux para un servidor de impresión Windows
En primer lugar, asegúrese de que la impresora está compartida en los sistemas Windows y que se ha hecho emerge de con el ajuste USE   habilitado tal y como se ha indicado arriba.

Para encontrar el URI de la impresora deseada, lanzar la siguiente orden y sustituir  por el equipo en el que se van a buscar las impresoras compartidas con samba:

En la interfaz web de CUPS, configure la impresora tal y como se ha descrito anteriormente. Observe que CUPS ha añadido otro dispositivo llamado. Selecciónelo y utilice la sintaxis  o   para el URI.

Introducción
Hay muchas herramientas que pueden ayudar a configurar una impresora, usar filtros adicionales de impresión, añadir características a las capacidades de la impresora, etc. Este capítulo muestra algunas de ellas. Tenga cuidado porque la lista no es exhaustiva y no se pretende exponer cada herramienta con mucho detalle.

Gtk-LP. Una herramienta de configuración de impresión basada en GTK
Con, se puede instalar, modificar y configurar la impresora desde una aplicación Gtk independiente. Esta aplicación emplea CUPS y ofrece todas las capacidades estándar de CUPS. Definitivamente merece la pena echarle un vistazo si la interfaz web de CUPS no es del agrado del usuario o necesita una aplicación independiente para sus rutinas diarias de impresión.

Instalarlo de la siguiente forma:

Herramienta de configuración de la impresora para KDE 4
KDE 4 también dispone de una herramienta de configuración de la impresora llamada. Funciona con CUPS y ofrece una interfaz amigable para configurar las impresoras. Instalarla de la siguiente forma:

Ajustes USE
Se deben modificar los paquetes que están instalados actualmente con el ajuste USE. Buscar dentro de para ver si hay paquetes que tienen explícitamente definido el ajuste USE   y eliminarlo.

Puede que sea necesario a continuación eliminar el valor   de la variable USE dentro de  si se ha definido previamente.

Desinstalación
Por último, se debe limpiar el sistema eliminando los paquetes que ya no son necesarios como resultado de la eliminación de CUPS.

Debugging
See archlinux wiki

Error: Unable to convert file 0 to printable format
Si tiene problemas al imprimir y se muestra el siguiente mensaje en :

Haga emerge de nuevo de con el ajuste USE. Puede, bien añadir  a los ajustes USE del sistema en  o puede habilitarlos solo para ghostscript-gpl como se muestra a continuación:

A continuación lanzar. Cuando haya terminado la compilación, asegúrese de reiniciar a continuación.

Cuando se utilice OpenRC:

Cuando se utilice systemd:

USB Printer is not detected
Assuming that cups is built with the  USE flag, verify that the printer's character device has the correct permissions. For example:

There should be a character device for this printer at.

In this example, over-zealously modified the permissions. This is. Lets try fixing them:

Now we should see:

The printer likely is detected now. You should be able to add it, configure it (provided that you have a working driver) and print a test page. This implies a permissions problem. Assuming that your system uses udev/eudev for managing its /dev directory, you can make this change permanent by making a udev file:

Our device is "ID 04e8:3297" according to the earlier lsusb output. We split that into idVendor and idProduct as demonstrated in the example. Now udev should ensure that the correct permissions are set at every boot and at every hotplug.

Recursos externos

 * Utilizar impresoras en red - Documentación en CUPS.org.
 * Impresión desde la línea de órdenes y opciones - Documentación en CUPS.org.