Common Unix Printing System

Common Unix Printing System
Información sobre la plantilla
Cups-large.JPG
CreadorEasy Software Products
Última versión estable1.5 / 25 de julio de 2011.
Sistemas Operativos compatiblesGNU/Linux,Microsoft Windows, Mac OS
IdiomaMultilenguaje
LicenciaGPL, LGPL
Sitio web
http://www.cups.org

Common Unix Printing System (CUPS, por sus siglas en inglés). Software que se utiliza para imprimir desde aplicaciones; como el navegador que está utilizando para leer esta página. Convierte las descripciones de página producidos porla aplicación (por poner un párrafo en este punto, trace una línea allí, y así sucesivamente) en algo que la impresora puede entender y luego envía la información a la impresora para la impresión.

Una computadora que ejecuta CUPS, actúa como un servidor que puede aceptar tareas de impresión desde otras computadoras clientes, los procesa y los envía al servidor de impresión apropiado.

Historia

El comunicado de la primera producciónde CUPS (basado en IPP/1.0) fue lanzado en octubre de 1999, por Michael Sweet. Desde entonces, se han publicado varias actualizaciones de parchea la versión 1.0, pero ninguna funcionalidad nueva se agrega paramejorar la estabilidad del código de CUPS.

Cups fue rápidamente adoptado como el sistema de impresión por defecto en varias distribuciones Linux. En marzo de 2002, la empresa Apple Inc. adoptó a CUPS como el sistema de impresión en el sistema operativo Mac OS X 10.2. En febrero de 2007, Apple Inc. empleó al desarrollador Michael Sweet y compró el código fuente de CUPS.

Información general

La primera vez que se imprime en una impresora, CUPS crea una cola para realizar un seguimiento de la situación actual de la impresora (todo bien, sin papel, etc) y todas las páginas que ha impreso. La mayoría de las veces los puntos de cola en una impresora conectada directamente a su ordenador mediante un puerto USB o paralelo, sin embargo, también puede apuntar a una impresora en la red, una impresora en Internet o varias impresoras, dependiendo de la configuración. Independientemente de dónde están los puntos de la cola, que se verá como cualquier otra impresorapara usted y sus aplicaciones.

Cada vez que se imprimealgo, CUPS crea un trabajo que contiene la cola que está enviando la letraa, el nombre del documento que está imprimiendo, y las descripciones de página. Trabajo están numerados (cola-1, cola de-2, y así sucesivamente) para que pueda supervisar el trabajo, ya que se imprime o cancelarla si usted ve un error. Cuando CUPS consigue un trabajo para la impresión, que determina los mejores programas(filtros, controladores de impresora, monitores de puertos, y sistemas base) para convertir las páginas en un formato imprimible, y luego corre a imprimir realmente el trabajo.

Cuando el trabajo de impresión está completamente impreso, CUPS elimina el trabajo de la cola y pasa a losotros trabajos que le han presentado. También puede recibir una notificación cuando el trabajo esté terminado, o si hay algún error durante la impresión, de varias maneras diferentes.

CUPS tiene como ventaja principal ser un sistema de impresión estandarizado y modularizado, capaz de procesar diferentes formatos de datos en el servidor de impresión. Antes de CUPS, era difícil encontrar un sistema de impresión estandarizado capaz de adaptarse a la gran gama de variedades de impresoras existentes en el mercado, utilizando cada una su propio lenguaje de impresión y formatos. Como ejemplo: los sistemas de impresión de System V y de Berkeley fueron durante mucho tiempo incompatibles uno con el otro, requiriendo scripts complicados y arreglos varios para lograr convertir el formato de datos desde el programa a un formato imprimible.

Normalmente no se lograba detectar el formato de archivo que estaba siendo enviado a la impresora, con lo que no se podía corregir y convertir automáticamente el flujo de datos. Además se ejecutaba la conversión de datos en cada estación de trabajo y no en un servidor central.

CUPS permite más fácilmente, a los fabricantes de impresoras y a los desarrolladores de controladores, crear controladores que funcionen nativamente en el servidor de impresión. El procesamiento ocurre en el servidor, permitiendo sistemas de impresión basadas en red mucho más sencillas que con otros sistemas de impresión Unix. Cuando es utilizado con Samba, pueden ser utilizados las impresoras en computadoras Windows remotas y controladores genéricos PostScript pueden ser utilizados para imprimir a través de la red.

Información general de Diseño

Al igual que la mayoría de los sistemas de impresión, CUPSse ha diseñado en torno a un proceso de impresión de planificación central que distribuye trabajosde impresión, los comandos de procesos administrativos, proporciona información sobre la impresora a los programas locales y remotos, e informa a los usuarios según sea necesario. La Figura 1 muestra la organización básica de CUPS.

Organización básica de CUPS


Scheduler

El planificador (Scheduler, en inlés) es una aplicación de servidor HTTP/1.1 que controla las solicitudes HTTP. Además de tramitar las solicitudes de impresión a través de solicitudes POST IPP, el programador también actúa como un servidor web con todas las funciones de documentación, seguimiento de estado y la administración.

El programador también maneja una lista de impresoras disponibles en la red local y envía los trabajos de impresión, según sea necesario utilizarlos filtros adecuados y backends.

Configuration files

Los archivos de configuración (Configuration Files, en inglés) consiste en:

  • El servidor HTTP archivo de configuración.
  • Impresora y los archivos de definición de la clase.
  • De tipos MIME y archivos de conversiónde la regla.
  • Descripción de impresora PostScript ("PPD") los archivos.

El servidor HTTP archivo de configuración es similar a propósitodel archivo de configuración del servidor Apache y define todas las propiedades de control de acceso para el servidor.

Los archivos de definición de la impresora y la clase una lista de las colas de impresión disponibles y las clases. Clases de impresoras son colecciones deimpresoras. Trabajos que se envíana una clase se remiten a la primera impresora disponible en la clase, round-robin.

Los archivos de tipo MIME se enumeran los tipos MIME admitidos (text / plain, application / postscript, etc) y las reglas de "mágica" para detectar automáticamente el formato de un archivo. Estos son utilizados por el servidor HTTP para determinar el campoContent-Type para solicitudes GET y HEADy por el controlador de solicitudesIPP para determinar el tipo de archivo cuando la solicitud de untrabajo de impresión o Enviar archivo-que se reciba un documento en formato de aplicación / octet-stream.

Los archivos de conversión MIME Estado una lista de los filtros disponibles. Los filtros se utilizan cuando un trabajo se distribuye de forma que una aplicación puede enviar un formato de archivo conveniente para el sistema de impresión que luego se convierte el documento en un formato imprimible, según sea necesario. Cada filtro tiene un costo relativo asociado con ella, y el algoritmo de filtradoelige el conjunto de filtros que convertir el archivo al formato necesario con el total más bajo "costo".

Los archivos PPD describen las capacidadesde todas las impresoras, no sólo impresorasPostScript. Hay un archivo PPD para cada impresora. Archivos PPD para impresoras no PostScriptdefinir filtros adicionales a través delos atributos cupsFilter para apoyar los controladores de impresora.

CUPS API

La API de CUPS contienelas funciones específicas de conveniencia para trabajos de impresión de cola, obtener información de la impresora, acceso a los recursos a través de HTTPe IPP, y la manipulación de los archivos PPD. A diferencia del restode CUPS, la API de CUPS se proporciona bajo los términos de la licencia GNU LGPL para que pueda ser utilizado por no-GPL aplicaciones.

Alpha Berkeley y System V Comandos

CUPS proporciona el System V y Berkeley interfaces de línea de comandos para la presentación de trabajos y comprobar el estado de la impresora. El lpstat y los comandos de lpc estado también muestran las impresoras de red ("impresora @ servidor") cuando la impresora está habilitadala navegación.

Los comandos System V. Administación se suministran para la gestión de las impresoras y clases. La impresora herramienta de administración de Berkeley (LPC)sólo se admite en una de "sólo lectura" modo para comprobar el estado actual de las colas de impresión y el planificador.

Filtres

Un programa de filtrado se lee de la entrada estándar o desde un archivo, si un nombre de archivo se suministra. Todos los filtros deben ser compatible con un conjunto común de opciones, incluyendo nombre de la impresora, ID del trabajo, nombre de usuario, título, número de copias, y opciones de trabajo. Toda la producción se envía a la salida estándar.

Los filtros se proporcionan para losmuchos formatos de archivo y el archivo de inclusión de imágenes y filtros PostScript de mapa de bits que soportan las impresoras no PostScript. Varios filtros se ejecutan en paralelopara producir el formato de salidadeseado.

La trama PostScriptfiltro se basa en el núcleo GNU Ghostscript 5,50. En lugar de utilizar los controladores de impresora de Ghostscripty front-end, el filtro de CUPS utiliza un controlador de impresora genéricotrama y CUPS compatible con front-end para soportar cualquier tipo de impresora de trama. Esto permite que el controlador de la impresora mismo filtropara ser utilizado para la impresión dedatos de trama de cualquier filtro.

CUPS Imaging

La biblioteca de imágenes de CUPS proporciona funciones para la gestión de imágenes de gran tamaño, haciendo la conversión espacio de color y gestión de color, las imágenes de escala para la impresióny la gestión de flujos de trama de página. Es utilizado por los filtros de archivos de imagen de CUPS, el RIP PostScript, y todos los controladores de impresoras de mapa de bits.

Backends

Un programa de fondo se encuentraun filtro especial que envía los datos de impresión a un dispositivo oconexión de red. Backends para paralelo, serial, USB, LPD, IPP, y AppSocket (JetDirect) las conexiones se proporcionan en CUPS 1.1.

Samba versión 2.0.6 y superior incluye un motor de SMB (smbspool (1))que se puede utilizar con CUPS 1.0 o 1.1 para imprimir en Windows.

Impresión en red

Tradicionalmente, la impresión en redha sido una de las cosas más difícilesde conseguir trabajo en UNIX. Una razón es que cada vendedor añadió sus propias extensiones para el protocolo LPD (la norma anterior, para impresión en red), por lo que la impresión se hace difícil, aunque no imposible.

Otra razón es que tiene que administrartodas las impresoras de red en cadamáquina cliente. En algunos casos se puede "clonar" la configuración de la impresora de un"maestro" de cliente a cada uno de los otros, pero incluso eso puede ser lentoy propenso a errores. CUPS proporciona "la navegación de la impresora", que permite a los clientes para verde forma automática y utilizar las impresoras de cualquier servidor en una red LAN. Esto significa que ustedsólo tendrá que configurar el servidor ylos clientes de forma automática a ver las impresoras y clases en el mismo.

Además, CUPS automáticamentepuede combinar múltiples impresoras de red idénticos en las clases "implícitas". Esto permite a los clientes para enviar trabajos a la clase implícita y hacer que se imprima en la primera impresora disponibleo en el servidor. Además, las funcionesa prueba de fallos y balanceo de cargase activan simplemente mediante la definición de la misma impresoraen varios servidores.

Obtención de la dirección IP

Cada impresora de red o servidor de impresión cuenta con un protocolo único de Internet (IP) asociada a ella. Esta dirección está bien configurado manualmente o utilizando un protocolo de la red automática,tales como el protocolo de arranque(BOOTP), Dynamic Host Control Protocol(DHCP), Reverse Address Resolution Protocol (RARP), o ZeroConf.

Normalmente se puede encontrar la dirección IP de una impresora en el panelde control de la impresora o mediante la impresión de la página de configuración o estado. ElSimple Network Management Protocol (SNMP) también se puede utilizar para obtener la dirección IP remota, lo que ocurre de forma automática cuando usted visita la administración de CUPS página web o elegir un dispositivo de CUPS está disponible al agregar una impresora.

Configuración de la dirección IP

La primera vez que instala una impresorade red o servidor de impresión en su LAN, es necesario configurar el protocolo de Internet ("IP"). La mayoría de los de gama más alta"grupo de trabajo" impresorasle permiten establecer la direccióna través del panel de control de la impresora. Sin embargo, si usted tiene muchas impresoras quese desea asignar las direcciones a distancia - esto hace que la administración de un poco más fácil y evita la asignación de direcciones duplicadasde forma accidental.

Para configurar la impresora o elservidor de impresión para la asignación de dirección a distancia, tendrá la Ethernet Media Access Control ("MAC"), también llamado a vecesuna dirección de nodo y la dirección IP que desea utilizar para el dispositivo. La dirección MAC de Ethernet a menudo se puede encontrar en la página de prueba de la impresora o la parte inferiordel servidor de impresión.

Configuración de la dirección IP mediante DHCP

El protocolo DHCP es la forma habitual de configurar la dirección IP de una impresora en unared administrada. Utilizando el estándardhcpd (8) del programa suministrado con UNIX sólo tendrá que añadir una línea al archivo / etc / dhcpd.conf:

nombre de host{

anfitrión hardware ethernet mac-address;
dirección IP-dirección fija ;

}

Asegúrese de que el nombre de hostse utiliza también aparece en el archivo / etc / hosts o se ha registrado en su servidor DNS.

Verificación de la conexión de la impresora

Para comprobar que la dirección IPse ha asignado correctamente y que la impresora está correctamente conectado a la red LAN, escriba:

ping dirección-ip

Si la conexión funciona correctamente, verá algo como:

ping MyPrinter
PING MyPrinter (192.0.2.2): 56 bytes de datos
64 bytes from 192.0.2.2: icmp_seq = 0 ttl = 15tiempo = 5 ms
64 bytes from 192.0.2.2: icmp_seq = 1 ttl = 15tiempo = 3 ms
64 bytes from 192.0.2.2: icmp_seq = 2 ttl = 15tiempo = 3 ms
64 bytes from 192.0.2.2: icmp_seq = 3 ttl = 15 tiempo = 3 ms

Si no es así, compruebe que el servidor de impresión o de impresión está conectado a la LAN,que se enciende, el cableado de la LAN es bueno, y la dirección IP está configurado correctamente. Generalmente, usted puedever la dirección IP actual y estado de la red, imprima una página de pruebade configuración o en el dispositivo.

Protocolos de red compatibles con CUPS

CUPS soporta la mayoría de impresorasde red utilizando uno de los tresen TCP / IP basados ​​en protocolos. Localización de la impresora se realiza actualmente mediante el protocolo SNMP, sin embargo, las versiones futuras de CUPS también incluirá soporte para servicios de DNS multicast descubrimiento así. AppSocket Protocolo

El protocolo AppSocket (a veces también llamado el protocoloJetDirect, debido a sus orígenes con la HP Jetdirect interfaces de red) es la más simple, más rápido, y en general el protocolo de red más confiable utilizado para impresoras.AppSocket impresión que normalmente ocurre a través del puerto9100 y utiliza el esquema de toma de URI:

socket :/ / ip-dirección-o nombre de host
socket :/ / ip-dirección-o nombre de host /? waiteof= false
socket :/ / ip-address-o nombre-: número-puerto
socket :/ / ip-address-o nombre-: puertoserie / waiteof= false

El "waiteof" opción controla si el servidor toma de espera para que la impresora finalice la impresión del trabajo. El valor predeterminado es de esperar.

Línea de comandos de impresión y opciones

CUPS proporciona tanto el sistema V de comandos de impresión como el Berkeley para los archivos de impresión. Además, apoyó un gran número de opciones estándar y específicas de la impresora que le permiten controlar cómo y dónde los archivos se imprimen.

Impresión de archivos

CUPS comprende muchos tipos diferentes de archivos directamente, incluyendo el texto, PostScript, PDF y archivos de imagen.Esto le permite imprimir desde dentro de sus aplicaciones o en la línea de comandos, lo que sea más conveniente. Escriba cualquiera de los siguientes comandos para imprimir un archivo en el valor por defecto (o único) de la impresora en el sistema:

lp nombre de archivo lpr nombre de archivo

Selección de una impresora

Muchos sistemas tienen más de una impresora a disposición del usuario. Estas impresoras pueden ser conectados al sistema local a través deuna serie en paralelo, o puerto USB, o disponibles en la red. Utilice el comando lpstat para ver una lista de impresoras disponibles:

lpstat-p-d

La opción-p especifica que desea ver una lista de impresoras, y la opción-d informa la impresora predeterminada actual o clase.

Utilice la opción-d con el comando lp para imprimir a una impresora específica:

lp-d impresora de nombre de archivo

o la opción-P con el comando lpr:

lpr-P nombre de impresora

Cancelación de un trabajo de impresión

La cancelación ylprm comandos de cancelar un trabajo de impresión:

cancelar el trabajo-id lprm trabajo Identificación

El trabajo-id es el número que se le informó a usted por el comando lp. También puede obtener el ID de trabajo mediante la lpq o los comandos lpstat:

lpq
lpstat

Alpha Traslado de un trabajo de impresión

El comando lpmove mueve un trabajo de impresión a una impresorao clase nueva:

lpmove Identificación del puesto de trabajo de destino

El trabajo-id es el número que se le informó a usted por el lp o comandos lpstat. Destinoes el nombre de una impresora o clase que desea imprimir en realidad el trabajo.

Herramientas de la interfaz de usuario

Existen varias herramientas para ayudar a configurar CUPS.

CUPS basado en la web la interfaz de administración

CUPS basado en la web la interfaz de administración

En todas las plataformas, CUPS tiene un interfaz de gestión basada en Web que se ejecuta en el puerto 631.En particular, ayuda a las organizaciones que necesitan para controlar los trabajos de impresión y añadir las colas de impresión y impresoras de forma remota.

CUPS 1.0 proporcionauna clase simple, el trabajo, y lainterfaz de la impresora de monitoreopara los navegadores web.

CUPS 1.1 sustituyó esta interfaz con una interfaz de administraciónmejorada que permite a los usuariosañadir, modificar, eliminar, configurar, y las clases de controles, trabajos, e impresoras.

CUPS 1.2 y posteriores proporcionan una interfaz web renovadoque ofrece una legibilidad mejoraday el diseño, el apoyo a las impresoras automáticamente descubiertas yun mejor acceso a los registros del sistema y la configuración avanzada.

GNOME

Interfaz de administración de GNOME

El Administrador CUPS de GNOME puede agregarnuevas impresoras CUPS y administrar impresoras y colas de CUPS. Hay otras aplicaciones de terceros para administrar la impresión, por ejemplo, y suGtkLP GtkLPQ herramienta de asociado, o GtkPSproc.

EL grupo de bibliotecas para desarrollar interfaces gráficas de usuario (widget toolkit) llamado GTK+, sobre los cuales GNOME está basado, incluye soporte integrado de impresiones basadas en CUPS a partir de su versión 2.10, introducida en 2006.

KDE

Interfaz de administración de KDE

El marco para KDE, KDEPrint contiene variasherramientas de interfaz gráfica de usuario que actúan como front-end de CUPS y permite la administración de clases, colas de impresión y trabajos de impresión;. Que incluye un asistente para ayudar a la impresora con la adición de nuevas impresoras entre otras características KDEPrint primero apareció en KDE 2.2.

KDEPrint soporta varias plataformas de impresión diferentes, con CUPS uno de los máscompatibles. Sustituyó a una versión anterior de soportes de impresiónen KDE, qtcupsy es compatible con este módulo de KDE. A partir de 2009 kprinter, un programa de diálogo de la caja, sirve como la principal herramienta para el envío de trabajos al dispositivo de impresión, sino que también se puede iniciar desde la línea de comandos. KDEPrint incluye un sistema de pre-filtro de lospuestos de trabajo antes de que seanentregados a CUPS, o para realizar trabajos de todo sobre sí mismo, como convertir archivos a PDF. Estos filtros son descritos por un par de Escritorio/ XML archivos.

Componentes principales KDEPrint incluyen:

  • Un cuadro de diálogo Imprimir, que permite a las propiedades de la impresora para ser modificada
  • Imprimir Manager, que permite la gestión de impresoras, tales como agregar y quitar impresoras,a través de un Asistente para agregar impresoras
  • Un visor de Trabajo / Manager, que gestiona los trabajos de impresión, tales como retención / liberación, cancelación y pasar a otra impresora
  • Un módulo de configuración de CUPS (integrado en KDE)

Fuentes

  • Artículo: CUPS. Disponible en: ¨www.cups.org¨. Consultado: 9 de abril de 2012.
  • Artículo: Linux CUPS. Disponible en: ¨common-unix-printing-system.softonic.com¨. Consultado: 9 de abril de 2012.
  • Artículo: CUPS. Disponible en: ¨www.linux-party.com¨. Consultado: 9 de abril de 2012.