Copyright © 2001 Kurt Pfeifle
Se concede permiso para copiar, distribuir y/o modificar este documento bajo los términos de la Licencia Libre de Documentación de GNU, versión 1.1 o posterior publicada por la Free Software Foundation; con secciones no invariantes, con textos que no estén en la cubierta, y con textos que no estén en la contraportada. Se incluye una copia de la licencia en the section entitled "GNU Free Documentation License".
Este manual describe KDEPrint. KDEPrint no es un programa solitario. Forma parte del esquema de impresión para KDE 2.2. KDEPrint es una capa intermedia entre las aplicaciones KDE (u otras) y el subsistema de impresión seleccionado (e instalado) en su S.O.
Tabla de contenidos
Lista de ejemplos
Este manual describe KDEPrint. KDEPrint no es un programa solitario. Forma parte del esquema de impresión para KDE 2.2. KDEPrint es una capa intermedia entre las aplicaciones KDE (u otras) y el subsistema de impresión seleccionado (e instalado) en su S.O.
Es necesario advertir que tanto el desarrollador de esta aplicación como el autor de la documentación están familiarizados con CUPS como sistema de impresión. En el momento de la redacción, CUPS es el subsistema de impresión mejor soportado y el mejor documentado.
Este manual es un trabajo progresivo y las versiones posteriores del software de KDEPrint y del manual soportarán y explorarán más detalladamente otros sistemas de impresión.
Mientras tanto, incluso si su subsistema de impresión no está todavía bien cubierto, le animamos a que explore el módulo de Administración de impresión en KControl y encontrará su uso (esperamos) evidente, independientemente del subsistema de impresión que utilice.
Lauri Watts, equipo de documentación de KDE.
Este capítulo pretende ofrecer un resumen técnico de KDEPrint que sea comprensible para no programadores.
KDEPrint es una herramienta nueva y revolucionaria que permite acceso a los servicios de impresión tanto para usuarios como para desarrolladores de KDE.
Puede acceder a las funciones de KDEPrint de diferentes modos: a través del administrador de impresión en KControl, a través de la orden kprinter o a través del diálogo emergente que aparece cuando va a imprimir.
KDEPrint no es un sustituto del subsistema de impresión por sí mismo. KDEPrint por tanto no proporciona spooling (encolamiento y almacenamiento temporal) y no realizar el procesado básico del PostScript® o de otros datos de impresión.
KDEPrint es una capa intermedia entre el almacenamiento temporal y el encolamiento y el subsistema de procesamiento de impresión (como esté instalado) y la aplicación que desea imprimir. KDEPrint proporciona un interfaz común, para desarrolladores y usuarios de KDE para los diferentes subsistemas de impresión. Al mismo tiempo, es personalizable y muy configurable.
KDEPrint es fácil de usar por desarrolladores de KDE y usuarios finales. Los desarrolladores pueden portar sus aplicaciones con cambios mínimos para utilizar KDEPrint en lugar del viejo «sistema» de impresión de Qt™. Los usuarios pueden elegir y configurar fácilmente sus subsistemas de impresión.
Como referencia para nuevos usuarios de KDE: Qt™ es la biblioteca básica y el juego de herramientas gráficas utilizadas por todas las aplicaciones KDE. Qt™ es desarrollada por TrollTech, una empresa de software noruega.
KDEPrint ofrece diferentes rostros para gente diferente.
KDEPrint permite a los usuarios y/o administradores, dependiendo de sus permisos, acceder a los subsistemas de impresión (CUPS, LPD, RLPR, LPRng, PDQ, etc.) a través de un interfaz de usuario gráfico de KDE (GUI). Usando KDEPrint se puede imprimir, administrar trabajos, impresoras y el demonio de impresión, todo cómodamente.
Los usuarios experimentados apreciarán la posibilidad de utilizar cualquier filtro que funcione para los datos de impresión entre la salida de su aplicación y la entrada en el sistema de impresión elegido. Algunos ejemplos de este tipo de funcionamiento ya están con «la opción sencilla» de KDEPrint. Continúe leyendo.
Si un desarrollador de KDE necesita acceso de impresión para su aplicación, no tiene que escribir el código desde el principio. Antes de KDE 2.2 este servicio era proporcionado por la clase QPrinter
, una biblioteca del conjunto de herramientas Qt™. La clase QPrinter
dependía de un desfasado «Demonio de impresión en línea» (LPD). La biblioteca KDEPrint está fundada sobre el más moderno Sistema de Impresión Común de UNIX® (CUPS), mientras que mantiene la compatabilidad con el anterior LPD y otros sistemas de impresión heredados o menos elaborados y «deja la puerta abierta» a cualquier desarrollo futuro.
Para que los desarrolladores de KDE utilicen la nueva clase KDEPrint en sus aplicaciones, necesitan cambios mínimos en su código: Cada llamada a QPrinter
, necesitan cambiarla a KPrinter
. Reemplazando un caracter (!) en unos pocos lugares, de forma que una vez que hayan hecho sus aplicaciones podrán hacer uso de todas las funcionalidades de la nueva biblioteca KDEPrint.
Los desarrolladores más ambiciosos, o aquellos con necesidades especiales tienen más posibilidades: a pesar del rico entorno de propiedades de KDEPrint, es posible personalizar el diálogo de impresión para su aplicación permitiendo la aparición de una «pestaña» adicional, donde pueden insertar de modo natural sus extensiones a KDEPrint.
Esta última propiedad no se utiliza de modo extensivo en KDE hasta la fecha, ya que los desarrolladores no conocen completamente la potencia de KDEPrint. Es de esperar que veremos uso de esto en el futuro. Un ejemplo que descubrí es la aplicación KCron. Le permite editar su archivo crontab utilizando un GUI. Los desarrolladores han implementado una propiedad de impresión que le permite (o a root
) elegir si desea imprimir el crontab completo (para todos los usuarios) o simplemente la parte marcada. Puede ver los efectos de esa opción en KDEPrint en las siguientes capturas de pantalla.
Esta captura muestra un ejemplo de la utilidad KCron.
El diálogo para configurar las opciones de impresión de KCron: la pestaña adicional denominada Opciones de cron pertenece a KCron, no a KDEPrint; es una extensión especial añadida por los desarrolladores de KCron para extender las posibilidades de impresión. No tiene su origen en KDEPrint pero es ejecutado por éste. Los desarrolladores de otras aplicaciones pueden añadir sus propias funcionalidades si así lo desean.
Añadido de KCron al diálogo de KDEPrint.
El interfaz de KDEPrint es de manejo sencillo en todos los subsistemas de impresión soportados, pero no elimina las debilidades tradicionales de algunos de estos sistemas. Aunque sí lima algunos bordes. Usuarios diferentes pueden utilizar sistemas de impresión diferentes en la misma máquina. Incluso un usuario puede cambiar «sobre la marcha», desde el cuadro de diálogo de impresión, el subsistema de impresión a utilizar para el siguiente trabajo (ésto es posible si sistemas diferentes se instalan de modo que no «interfieran unos con otros»).
La mayor parte de los usuarios de UNIX® están habituados al sistema de impresión LPD. LPD sólo proporciona funciones básicas de impresión, es bastante inflexible y no utiliza muchas de las opciones de los más modernos sistemas de impresión como CUPS. Aunque también funciona remotamente a cualquier distancia (como todos los protocolos basados en TCP/IP), el LPD carece de comunicación bidireccional, soporte de autentificación, de control de acceso y de cifrado.
KDEPrint puede utilizar CUPS para soportar:
La búsqueda de impresoras disponibles en la LAN.
Autentificación básica, organizada y certificada.
Control de acceso basado en direcciones IP, direcciones de red, máscaras de red y nombres de máquinas y de dominio.
Cifrado TLS o SSL3 de 128-Bits de los datos de impresión, para impedir la interceptación o, al menos, para dificultarla.
Esto convierte a KDEPrint una solución más robusta y fiable que utilizar el venerable LPD.
Puede acceder a KDEPrint o partes de él de cuatro modos diferentes:
A través de sus aplicaciones: si llama al diálogo de impresión (Archivo+Imprimir...) o pulsa el botón que contiene una pequeña impresora, aparece el diálogo de impresión.
A través de la orden kprinter introducida desde un terminal o desde una ventana de Konsole o desde Ejecutar orden... de la ventana mini-CLI: estas operaciones también abren el diálogo de impresión.
Desde el botón , iniciando KControl y después seleccionando Sistema+Administrador de impresión. Esta operación abre el administrador de KDEPrint como parte del Centro de control de KDE y le permite cambiar a otras partes de KControl.
Desde una línea de órdenes (Konsole o mini-CLI) introduzca kcmshell
. Esto abrirá la parte KDEPrint correspondiente a KControl para configurar su opciones. printmgr
Iniciando el diálogo de kprinter desde una ventana de Ejecutar orden....
Aquí un dibujo de Kivio del diálogo de kprinter tal y como aparece después de ser iniciado ... Y siempre puede añadir una nueva impresora pulsando sobre el pequeño botón Asistente (marcado rojo/amarillo en este dibujo).
Diálogo kprinter iniciado (borrador de dibujo Kivio)
El nuevo sistema KDEPrint incluye más de un aspecto importante. Si anteriormente ha trabajado en un entorno simple en cuanto a impresión se refiere, eche una ojeada a algunas de las ventajas que incorpora KDEPrint.
KDEPrint ofrece un «Asistente de añadir impresora». El asistente de añadir impresora le ayuda a añadir y configurar una nueva impresora. Por supuesto, esto lo puede hacer también manualmente.
KDEPrint le ayuda a «descubrir» impresoras. Es capaz de explorar el entorno en busca de dispositivos y colas disponibles. Esto funciona para conexiones de red con TCP (AppSocket, también conocido como HP® JetDirect®, o IPP) o impresoras SMB/Samba («compartido» en Windows®) y parcialmente para impresoras directamente conectadas a través de puertos paralelos, series o conexiones USB.
El asistente se encarga de la instalación y manejo de los controladores «en un suspiro». Seleccionar, configurar y probar debería ser más sencillo que nunca en cualquier sistema tipo Linux®.
El visor de trabajos de impresión se inicia automáticamente desde kprinter. Puede ser empotrado dentro del panel de KDE (en la bandeja del sistema). El visor de trabajos de impresión le permite una administración completa de los trabajos, si está soportado por el subsistema de impresión.
Usted puede:
Mantener en espera y liberar trabajos.
Mover trabajos pendientes a otra impresora.
Cancelar trabajos pendientes o en proceso.
Una captura del visor de trabajos de impresión de KDEPrint muestra la información que usted obtiene: ID del trabajo, impresora de destino, nombre del trabajo, propietario del trabajo, estado del trabajo y tamaño del trabajo. En la siguiente versión de KDEPrint también verá información acerca del número de páginas (tal y como las calcula CUPS. Consulte el capítulo sobre contabilización de páginas para obtener más información sobre sus capacidades y limitaciones).
Una captura del visor de trabajos de impresión de KDEPrint.
Un modo alternativo de mirar la misma información (y de tener la misma cantidad de control es a través del Centro de control de KDE seleccionando Sistema+Administrador de impresión. Si no ve la Información de la impresora, pulse con el botón del ratón sobre el fondo de la ventana y seleccione Ver propiedades de la impresora. Después vaya a la pestaña Trabajos para verlo:
KDEPrint utiliza diferentes módulos para crear el interfaz al posible susbsistema de impresión. No todos los módulos están completamente desarrollados, pero tendrá una funcionalidad básica con:
LPD (estilo BSD).
LPRng (Red Hat®, si utiliza un subconjunto del estilo BSD).
RLPR (una utilidad de la línea de órdenes LPR que no necesita un archivo printcap
).
Órdenes de impresión «externas» (tipo Netscape®).
Lo más importante, el soporte completo de CUPS está ya disponible. Los módulos para otros subsistemas de impresión, tales como PLP, PPR y PDQ puede que lo estén posteriormente.
KDEPrint consigue que KDE sea más flexible. Ofrece libertad de elección a los usuarios de KDE 2.2. Para utilizar los diferentes subsistemas de impresión disponibles, deben haber sido instalados independientemente de KDE. En versiones anteriores, los usuarios estaban atados a los antiguos subsistemas de impresión estilo LPD. Ahora pueden utilizar CUPS. En el futuro, habrá una integración sencilla del resto de los subsistemas, a medida que vayan apareciendo.
Algunas propiedades específicas de KDEPrint dependen del sistema de impresión elegido. Esta dependencia podría existir porque esas propiedades sólo están implementadas allí. Recuerde que KDEPrint es una capa intermedia, no es un reemplazo de ningún subsistema de impresión. Tal dependencia existe por otra razón: KDEPrint no ha implementado un interfaz para todos los subsistemas.
Otras propiedades incluyen ventajas de KDEPrint que son independientes del subsistema de impresión elegido y que están disponibles con cada uno de ellos. En este momento hay impresoras «especiales» o «virtuales» y algunos «pre-filtros» genéricos.
Desde el diálogo de impresión, usted puede previsualizar el resultado. Para ello el archivo de impresión se envía a través de filtros que hacen que se ajuste a la pantalla con KGhostView.
Entre las propiedades adicionales de KDEPrint hay unas pocas impresoras «especiales» o «virtuales».
Estas impresoras especiales pueden:
Convertir su documento a PDF con la ayuda de un programa externo.
Enviar su documento adjuntando el archivo PDF en el mensaje electrónico.
Guardar su documento como archivo PostScript®
Enviarlo a través de una aplicación disponible, tal como Hylafax como un fax.
Estas impresoras «especiales» aparecen en el diálogo de impresión del usuario como impresoras «normales». Son totalmente configurables por el usuario.
KDEPrint le proporciona un entorno para definir y configurar sus propios «prefiltros». Estos prefiltros pueden tener efecto antes de que pasen por su subsistema de impresión para un procesado posterior, pero después de que los archivos de impresión (PostScript® o de texto u otros) hayan sido generados por su aplicación.
Hay ya definidos algunos filtros útiles. Estos son:
El filtro «varias páginas por hoja».
El filtro de texto «enscript».
Tres filtros para ayudar a imprimir panfletos.
Usted puede crear sus propios filtros sobre un tercer programa que sea capaz de procesar sus archivos PostScript®, de texto, o de imagen, y producir la salida en cualquiera de esos formatos.
Esos filtros están configurados a través de archivos XML. Esto extiende el concepto fácilmente para los expertos, y la configuración para los usuarios finales se hace a través de un interfaz gráfico intuitivo. De modo que no tema, KDEPrint no requiere que usted aprenda XML.
Este es un filtro predefinido que se instala con KDEPrint. Le permite crear una salida modificada de PostScript® a partir de una entrada PostScript® que imprime 1, 2 ó 4 páginas lógicas en una única hoja física de papel.
Este es un filtro predefinido que se instala con KDEPrint. Permite crear salida PostScript® a partir de cualquier archivo de entrada de texto, que incluye el resaltado de sintáxis para listado de programas, impresión bonita y marcos de página configurables y cabeceras.
Si su impresora es capaz de producir salida en doble cara, bien usando una pasada o dos pasadas, puede utilizar un filtro o una combinación de los filtros de «panfleto».
Para impresoras duplex, asegúrese de usar la opción duplex que «da vuelta» a la salida a través del borde corto del papel. Doblando la salida por la mitad convierte su documento en un bonito panfleto.
Si usted utiliza un dispositivo sin unidad duplex, puede conseguir el mismo resultado utilizando dos filtros diferentes y unos pasos adicionales más.
Dependiendo de su modelo, primero use el filtro para imprimir las páginas «impares», después inserte el papel en el orden correcto en la bandeja de papel, para que se impriman las páginas pares en el reverso. Acabe doblando el papel.
KDEPrint contiene un módulo para CUPS. CUPS, el «Common UNIX® Printing System» (http://www.cups.org/), es el subsistema de impresión más avanzado, potente y flexible de UNIX® y de otros sistemas operativos tipo Linux®. Es bastante reciente, pero está basado en IPP, el protocolo de impresión por Internet, el estándar de impresión emergente para el futuro de la impresión en redes. CUPS es, claramente, el sistema de impresión preferido de Michael Goffioul, el desarrollador principal de KDEPrint.
Los usuarios de KDE con experiencia puede que ya estén familiarizados con las utilidades qtcups y kups de Michael (codesarrollado con Jean-Eric Cuendet). Éstas eran hasta ahora los interfaces gráficos para CUPS fuertemente relacionados con KDE.
Ambas utilidades todavía están en uso. Para aquellos que no están familiarizados con ellos, aquí hay unas breves descripciones.
qtcups era un interfaz gráfico para las órdenes de impresión lp o lpr instalados por CUPS. Usando qtcups se abría un diálogo. Este diálogo le permitía seleccionar cómodamente su impresora y las opciones de los trabajos de impresión. qtcups funcionaba desde la línea de órdenes o desde las propias aplicaciones, que disponían de una orden de impresión configurable.
kups era un envoltorio gráfico para realizar las tareas administrativas de su servidor CUPS y del demonio CUPS. Se podía añadir, borrar, modificar, configurar, iniciar y detener las impresoras. Se podía cancelar, borrar, mover, detener y reiniciar los trabajos de impresión, y se podían cambiar las opciones del demonio, iniciarlo, detenerlo y reiniciarlo.
El módulo CUPS en KDEPrint contiene ahora todas las (y más) funciones proporcionadas por qtcups y kups en versiones anteriores de KDE.
En lugar de qtcups ahora puede utilizar la orden kprinter. Y en lugar de kups probablemente podrá utilizar de ahora en adelante kcmshell printmgr.
El módulo CUPS de KDEPrint le permite administrar totalmente el subsistema de impresión, como antes lo hacía kups. Puede iniciar, detener y configurar su demonio CUPS. También puede detener, iniciar, añadir y borrar «impresoras» (es decir, colas de impresión) e «instancias» de impresión. Las instancias de impresoras son colas de impresión que apuntan al mismo dispositivo físico pero con unas opciones de impresión predefinidas diferentes.
El módulo CUPS de KDEPrint le proporciona acceso a una «orden gráfica de impresión», tal y como antes lo hacía qtcups.
Utilice kprinter en cualquier aplicación, incluso en aplicaciones no KDE que le permitan configurar la órden de impresión. Ejemplos de esto son Netscape® y StarOffice, pero no la mayor parte de los programas pre-KDE 2.2.
Una captura de pantalla que muestra cómo usar la orden de impresión kprinter en lugar del anticuado lpr... Por supuesto necesita tener kprinter en su $PATH
, de lo contrario introduzca la ruta completa en el cuadro de diálogo una vez, p. ej.,
. Netscape® recordará ésto y a partir de ahora siempre obtendrá el cuadro de diálogo de kprinter para configurar sus trabajos de impresión./opt/kde/bin/kprinter
También puede utilizar kprinter desde la línea de órdenes y ver cómo aparece el cuadro de diálogo:
Asegúrese de que también introduce al menos el archivo a imprimir desde la línea de órdenes: kprinter
. Ésto pasará el manual del administrador de software de CUPS al cuadro de diálogo de kprinter que entonces aparecerá con la impresora preseleccionada./usr/share/doc/packages/cups/sam.pdf
Para preseleccionar una impresora desde la línea de órdenes, utilice la opción -d
, p. ej. kprinter
. Puede además deseleccionar la impresora -d DANKAcolorC2000
/home/kurt/linuxtag2001-paper.ps
DANKAcolorC2000
y elegir una diferente.
Sin embargo no se puede invocar kprinter
sin un archivo de impresión y esperar que se abra un cuadro de diálogo de selección desde la ventana de kprinter. Ésta es una propiedad que se implementará en la próxima versión.
A través de kprinter usted será capaz de «tocar todos los palos» de su impresora. Necesitará el llamado PPD (PostScript® Printer Description) específico del dispositivo para hacer que CUPS lo consiga. Lea más acerca de ello en “Opciones de impresión dependientes del dispositivo”.
Lo que usted tiene ahora es la primera y completa versión de KDEPrint. Esta versión es, por supuesto, totalmente utilizable para imprimir. Podría incluso pensar que, «nunca fue tan fácil imprimir» (ni siquiera en los oscuros días en los que tenía que utilizar Microsoft® Windows®).
En el futuro, KDEPrint mejorará más. Hará un mejor trabajo «detectando» automáticamente su subsistemea de impresión. KDEPrint ya lo hace bastante bien detectando automáticamente si tiene CUPS instalado en su sistema. Pero en muchos casos, tendrá que decirle a KDEPrint lo que está utilizando, si desea mantener un sistema de impresión heredado.
La mejora más importante en el futuro cercano será el acabado del complemento de LPRng. El actual es muy básico. Está restringido a la clásica parte LPDde LPRng.
También podrá añadir impresoras directamente desde el diálogo de impresión a su sistema, «sobre la marcha», sin tener que abrir primero KControl.
Las pequeñas mejoras ya planeadas son:
Añadir una selección de archivos desde la ventana de kprinter para permitir combinar archivos adicionales a los trabajos actuales de impresión.
Añadir un botón «historial» a la ventana KJobViewer y también una columna para mostrar el número de páginas estimadas por CUPS para el trabajo.
Finalmente habrá un «IO slave» que le permitirá acceder a su sistema de impresión, por ejemplo, a través de Konqueror. De este modo pronto será capaz de navegar por su sistema de impresión desde Konqueror a través de una URL como print://printers/printername
. Un KPart añadirá una carpeta virtual a la sección de servicios del panel de navegación de Konqueror ofreciendo un modo agradable e integrado de navegar y administrar su sistema de impresión a través de la URL print:/manager
.
Por favor contacte con Michael Goffioul en (kdeprint AT swing.be)
si desea realizar cualquier sugerencia de uso o desarrollo.
Este capítulo está orientado a ofrecer un poco de trasfondo teórico sobre la impresión en general y especialmente sobre CUPS. Si no necesita esta información, pase directamente al siguiente capítulo. Estoy convencido de que tendrá que volver a este capítulo en cierto momento, porque a veces es necesaria teoría extra para resolver problemas prácticos.
La impresión es una de los capítulos más complicados de la tecnología IT.
Al inicio, todo desarrollador de un programa que era capaz de imprimir debía escribir sus propios controladores también. Esto era bastante complicado porque diferentes programas tenían formatos diferentes. Incluso programas con el mismo uso, por ejemplo, procesadores de textos, no entendían con frecuencia otros formatos. De modo que no había un interfaz común para todas las impresoras, por tanto los programadores soportaban con frecuencia sólo algunos pocos modelos seleccionados.
Un nuevo dispositivo en el mercado obligaba a los autores de los programas a escribir un nuevo controlador si deseaban que su programa lo soportara. También para los fabricantes era imposible asegurarse de que su dispositivo estuviera soportado por todos los programas que existían (aunque hubiera muchos menos que ahora).
Soportar diez programas de aplicaciones y una docena de impresoras, significaba que el administrador del sistema tenía que lidiar con 120 controladores. De modo que el desarrollo de interfaces unificados entre programas e impresoras se conviertió en una necesidad urgente.
La aparición de la «Página de descripción de lenguajes», describiendo la representación gráfica de la tinta y el toner en hojas de papel (u otros dispositivos de salida, como monitores, fototipógrafos, etc.) de un modo común ayudó a ocupar una gran carencia.
Uno de dichos desarrollos fue el PostScript® de Adobe. Significaba que un programador de aplicaciones se podía concentrar en hacer que su programa generara un lenguage de descripción PostScript® de las páginas que quería imprimir, mientras que los desarrolladores de dispositivos de impresión se podían concentrar en crear dispositivos conformes a PostScript®.
Por supuesto, con el tiempo, aparecieron otros métodos de descripción. Los competidores más importantes de PostScript® fueron PCL («Print Control Language», de Hewlett-Packard®), «ESC/P» (de Epson) y GDI («Graphical Device Interface» de Microsoft®).
El aspecto de estos lenguajes de descripción de páginas facilitó la vida y el desarrollo futuro a todo el mundo. A pesar de ello el hecho de que todavía existían diferentes lenguajes descriptivos incompatibles entre sí dificulta la vida de los usuarios, administradores, desarrolladores y fabricantes.
PostScript® se usa extensivamente en entornos de impresión profesional tales como preimpresión e industrias de servicios de impresión. En los dominios de UNIX® y Linux®, PostScript® es un estándar predominante como PDL. En ellos casi todos los programas generan una representación PostScript® de sus páginas una vez que pulse sobre el botón «Imprimir». Miremos un ejemplo (hecho a mano) sencillo de código PostScript®. El listado que sigue describe dos dibujos simples:
Ejemplo 4.1. Código PostScript®
%!PS 100 100 moveto 0 50 rlineto 50 0 rlineto 0 -50 rlineto closepath .7 setgray fill % first box over; next 160 100 moveto 0 60 rlineto 45 10 rlineto 0 -40 rlineto closepath .2 setgray fill
Este ejemplo le indica a la «pluma» imaginaria PostScript® que dibuje una cierta forma, y después rellene diferentes sombras de gris. La primera parte se traduce en castellano como «Moverse a la coordenada (100,100), dibujar una línea de longitud 50 hacia arriba, después una a la derecha, abajo y finalmente cerrar el polígono. Ahora utilizar una pintura gris al 70% y usarla para rellenar la forma geométrica.»
Por supuesto, el PostScript® puede ser mucho más complicado que lo que se ve en este sencillo ejemplo. Es un completo lenguaje de programación con muchos operadores y funciones. Es posible, incluso, escribir programas de PostScript® para calcular el valor de Pi, formatear un disco duro o escribir un archivo. La principal potencia de PostScript®, sin embargo, reside en el campo de la descripción de los objetos gráficos de una página: también puede cambiar el tamaño, crear imágenes simétricas, mover, transformar, girar y distorsionar cualquier cosa que sea susceptible de ser representada en una hoja de papel; como letras con diferentes aspectos, figuras, formas, sombras, colores, líneas, puntos, dibujos...
Un archivo PostScript® es una representación de una o más páginas destinadas a ser impresas, de una forma relativamente abstracta. Su utilidad ideal es la de representar páginas de una forma independiente al dispositivo que se utilizará para imprimirlas. PostScript® no es «visible» directamente, únicamente se almacena en discos duros y en memoria RAM como una representación codificada de futuras páginas impresas.
Lo que se ve en una hoja de papel es casi siempre una «imagen de trama». Aunque su cerebro le sugiera que lo que sus ojos ven es una línea: coja una buena lupa y descubrirá cientos de pequeños puntos... (un ejemplo de lo contrario son las líneas que han sido dibujadas por un trazador). Y eso es todo lo que los «motores de dibujo» de las impresoras actuales son capaces de poner sobre el papel: simples puntos de diferentes colores, tamaños y resoluciones, para componer una «imagen de página» completa en base a diferentes patrones de mapas de bits.
Las diferentes impresoras necesitan las imágenes de trama preparadas de modos diferentes. Piense en un dispositivo de inyección de tinta: dependiendo de su resolución, el número de tintas utilizadas (las mejores necesitas 7 tintas diferentes, mientras que las más baratas suelen utilizar únicamente 3), el número de inyectores disponibles (algunos cabezales de impresión tienen hasta 100) que dispensan tinta simultáneamente, el «algoritmo de tramado» que se utilice, y muchas otras cosas, el formato de trama final y el orden de transferencia al motor de inyección dependen en gran medida del modelo exacto utilizado.
Al principio de la existencia del «Line Printer Daemon», las impresoras eran máquinas que martilleaban mecánicamente líneas de texto ASCII en papel contínuo que se recogía de una caja ubicada bajo la mesa... Evidentemente las cosas han cambiado.
Antes de que las imágenes de trama sean impresas en hojas de papel, ha sido necesario calcular de alguna manera un representación PostScript® abstracta. Este proceso requiere un cálculo bastante intensivo. Se denomina «Proceso de tramado de la imagen», más comúnmente conocido como «RIP».
En las impresoras PostScript® el proceso RIP se realiza en los propios dispositivos de impresión. Únicamente hay que enviar el archivo PostScript®. El «Procesador de tramado de la imagen» (que también se denomina RIP) interno de la impresora es el responsable (y especialista) en llevar a cabo correctamente esta tarea de interpretación de las descripciones de la página PostScript® y poner la trama sobre el papel.
Los dispositivos PostScript® pequeños tienen un RIP incorporado en hardware; bien en un chip de silicio o de otro tipo. Las grandes impresoras profesionales tienen su RIP implementado como software dentro de un ordenador UNIX® rápido y dedicado en exclusiva el proceso, normalmente máquinas Sun SPARC Solaris o SGI™ IRIX®.
Pero, ¿qué ocurre cuando no se tiene la suerte de poder disponer de una impresora PostScript®?
Es necesario realizar el proceso de RIP antes de enviar la información a la impresora. Hay que interpretar el PostScript® generado por la aplicación en la misma máquina (cliente de impresión). Hay que conocer el formato de trama exacto que requiere la impresora para poder componerlo adecuadamente.
En otras palabras, como no se puede dejar en manos de la impresora la responsabilidad de interpretar el PostScript®, todo resulta más complicado. Es necesario un software que trate de resolver automáticamente la cuestión.
Esto es exactamente lo que se encarga de hacer el omnipresente ghostscript en muchos sistemas Linux®, *BSD u otros UNIX® que necesitan imprimir en impresoras que no son PostScript®: ghostscript es un intérprete de PostScript®, un RIP software capaz de ocuparse muchos dispositivos diferentes.
Para producir imágenes de trama a partir de una entrada PostScript®, en ghostscript se utiliza el concepto de «filtros». Hay muchos filtros diferentes en ghostscript, algunos de ellos específicos para un modelo de impresora. Los filtros específicos para dispositivos de ghostscript se han desarrollado en muchas ocasiones sin el consentimiento o el soporte del fabricante en cuestión. Sin el acceso a las especificaciones y a la documentación, resulta un proceso muy complicado descubrir los protocolos y los formatos de datos a través de la ingeniería inversa.
No todos los filtros de ghostscript funcionan igual de bien en sus impresoras correspondientes. Algunos de los más modernos, como el filtro stp del proyecto de impresión de Gimp, producen unos resultados excelentes con una calidad de impresión igual e incluso superior que sus controladores equivalentes en Microsoft® Windows®.
PostScript® es el formato de salida que producen la mayoría de las aplicaciones que imprimen en UNIX® y Linux®. Los filtros son auténticas máquinas de conversión hacia cualquier sistema de impresión. Esencialmente lo que hacen es producir los mapas de bits correctos a partir de cualquier entrada PostScript® y con destino a las impresoras que no son PostScript®.
CUPS utiliza sus propios filtros, aunque el sistema de filtrado está basado en Ghostscript. En concreto los filtros pstoraster e imagetoraster están derivados directamente del código de Ghostscript. CUPS ha reorganizado y optimizado todos los mecanismos del antíguo código y lo ha distribuido en módulos diferentes y más concretos.
El siguiente diagrama (realizado con la ayuda de Kivio) muestra una idea de los filtros y los motores que funcionan dentro de CUPS, y de cómo interaccionan juntos. El «flujo» va de arriba hacia abajo. Los motores son filtros especiales: no convierten la información a un formato diferente, envían los archivos una vez preparados a la impresora. Hay diferentes motores para los diferentes protocolos de transferencia.
A parte de la dura tarea del filtrado para generar mapas de bits listos para la impresión, cualquier software de impresión necesita utilizar un mecanismo de colas: esto sirve para alinear los diferentes trabajos de los diferentes usuarios para las diferentes impresoras a través de los diferentes filtros y enviarlos correctamente a sus destinos. El demonio de impresión se encarga de todo esto.
Este demonio mantiene la casa ordenada: también es el responsable del control de tareas: los usuarios tienen que poder cancelar, detener, reiniciar, etc. sus tareas (pero no las de otras personas) y todo debe funcionar correctamente.
Ahora que ya sabemos cómo se transforma un archivo en lenguaje PostScript® (que describe la disposición de la página de forma independiente al dispositivo) en una imagen de trama, podríamos preguntar: «Bien, hay diferentes tipos de dispositivos de salida: difieren en su resolución, en los diferentes tamaños de papel, en las opciones de acabado (a doble cara, folletos, encuadernación entre hojas de diferentes colores que se recogen de diferentes bandejas, etc.) ¿Cómo se ajusta todo esto en nuestro modelo de PostScript® independiente del dispositivo?»
La respuesta la encontramos en los archivos de descripción de impresoras PostScript® (PPD). Un PPD describe todas las características dependientes del modelo concreto que se utilizan en una impresora determinada. También contiene las órdenes codificadas que se deben utilizar para invocar a ciertas características del dispositivo. Pero los PPDs no son un libro cerrado, son símplemente archivos de texto ASCII.
Los PPDs fueron «inventados» por Adobe para facilitar a los fabricantes la implementación de sus propias características en las impresoras PostScript®, y al mismo tiempo conservar la forma estándar de hacerlo. Los PPDs están bien descritos y documentados por Adobe. Su especificación resulta ser un estándar abierto «de facto».
Tenga en cuenta que la impresión avanzada de PostScript® se desarrolló originalmente para ser utilizada únicamente en sistemas Microsoft® Windows® y Apple Mac®. Durante mucho tiempo las características especiales de los dispositivos de impresión modernos no han estado disponibles en Linux® y UNIX®. CUPS ha supuesto un cambio radical en esto. CUPS está unido muy de cerca a los PPDs y por ello los PPDs existentes se puede utilizar completamente en los sistemas que utilizan CUPS.
Mediante el uso de los PPDs, los fabricantes de impresoras fueron capaces de introducir características específicas del hardware en sus productos, como por ejemplo, la impresión a dos caras, la encuadernación, las grapadoras, el acabado, etc.. El controlador de la impresora carga el PPD de igual forma que un archivo de configuración. El siguiente paso es que el controlador de la impresora se informa sobre las opciones del dispositivo que están disponibles y cómo llamarlas. El controlador también se las presenta al usuario a través del GUI. Gracias a este mecanismo el usuario sigue pudiendo imprimir archivos de descripción PostScript® que son «independientes del dispositivo» y especificar opciones de acabado que sí son exclusivas de cada dispositivo concreto y que se añaden al PostScript® generado por la aplicación.
Los PPDs no fueron originalmente utilizados de forma rutinaria en los sistemas UNIX® y Linux®. Los distribuidores de los PPDs nunca tuvieron la intención de que fuesen utilizados en otros sistemas operativos diferentes a los soportados originalmente: Microsoft® Windows® y Mac® OS. Gracias al brillante esfuerzo realizado para soportar y reutilizar la especificación PPD existente, CUPS ofrece ahora la posibilidad de usar todas las características de las impresoras modernas a los usuarios de los sistemas operativos Linux® y similares. KDEPrint hace su uso incluso más cómodo de lo que concibieron originalmente los desarrolladores de CUPS.
CUPS puede utilizar PPDs originales de Windows®, distribuidos por los fabricantes en el caso de las impresoras PostScript®. Normalmente no suelen costar dinero y se pueden obtener de cualquier ordenador Windows® que tenga instalado el controlador PostScript® del modelo en cuestión o de los discos proporcionados junto a la impresora. También hay varias páginas web desde las que se pueden descargar.
Ahora ya sabemos cómo pueden utilizar los PPDs las impresoras PostScript®. Pero, ¿qué pasa con las impresoras que no son PostScript®? CUPS ha realizado una buena labor con esto: utilizando el mismo formato y la misma estructura que en las descripciones de impresoras PostScript® (PPDs) del mundo PostScript®, se pueden describir las opciones existentes en las impresoras que no son PostScript®. Para este propósito CUPS ha añado algunas opciones especiales (principalmente la línea que define el filtro a utilizar en el proceso posterior del archivo PostScript®).
De esta forma los desarrolladores pueden utilizar el mismo motor de software para procesar las opciones disponibles en los archivos de descripción de impresoras de todo tipo de dispositivos. Es obvio que los desarrolladores de CUPS no pueden esperar a que los fabricantes de impresoras no PostScript® decidan repentinamente ponerse a desarrollar PPDs. Tendrían que hacerlo ellos solos y comenzar desde cero. Hay más de 1.000 de estos archivos disponibles con la versión comercial de CUPS, llamada ESP PrintPro.
Pero también hay muchos PPDs específicos de CUPS disponibles. Incluso ahora siguen sin estar realizados, en muchos casos, por los fabricantes de las impresoras, sino por desarrolladores de software libre. El equipo de CUPS comprobó su funcionamiento y otros ha venido detrás: mientras que hace uno o dos años imprimir en Linux® y UNIX® era una tortura con determinadas impresoras, en la actualidad es posible utilizar a la perfección una gran gama de ellas, incluyendo impresoras de inyección de 7 tintas capaces de dar unos resultados de calidad fotográfica.
Se pueden obtener PPDs para utilizar con CUPS e impresoras que no son PostScript® de diferentes puntos de la web:
En primer lugar está el almacén de www.linuxprinting.org, que permite generar automáticamente un PPD para cualquier impresora que estuviese previamente soportada por ghostscript. Esto ayuda a realizar el cambio a CUPS sin mucho esfuerzo, si es que desea hacerlo. Si su impresora funcionaba bien con el método tradicional de ghostscript, utilice el generador automático para añadir el controlador a CUPS y así tendrá lo mejor de los dos mundos.
En segundo lugar, hay PPDs de CUPS para más de 120 modelos de impresoras, guiados por el nuevo controlador universal stp. stp (utilizado originalmente para Stylus Photo) es ahora desarrollado por el proyecto gimp-print; el proyecto fue iniciado por Mike Sweet, el líder del equipo de desarrollo de CUPS y ahora está disponible en la página gimp-print.sourceforge.net. Este controlador imprime en calidad fotográfica real en la mayoría de las impresoras de inyección de tinta modernas y se puede configurar para realizar 120 PPDs de CUPS, además de su propia compilación. Las impresoras láser y de inyección de HP®, los modelos Stylus y Photo Color de Epson® así como algunos modelos de Canon® y Lexmark® están soportados.
En tercer lugar está la extensión comercial de CUPS realizada por los mismos desarrolladores que el propio CUPS: se llama ESP PrintPro e incluye más de 2.300 controladores de impresoras. Incluso lleva incluidas unas versiones mejoradas de los filtros imagetoraster y pstoraster.
CUPS facilita mucho a los fabricantes incluir soporte de impresión para Linux® y UNIX® a un coste razonablemente bajo. El marco de trabajo modular de CUPS facilita la inclusión de cualquier filtro (= controlador) con un esfuerzo mínimo y el acceso a toda la potencia de impresión que proporciona CUPS.
Puede leer más sobre las impresionantes características de CUPS en la documentación de CUPS que está disponible en http://www.cups.org/documentation.html y http://www.danka.de/printpro/faq.html. También es interesante http://www.linuxprinting.org/, donde se encuentra el almacén universal de todo lo relacionado con la impresión en Linux® y UNIX®.
Durante mucho tiempo gran cantidad de desarrolladores estaban en profundo desacuerdo con el viejo LPD. Varios nuevos proyectos trataron de mejorar la impresión: LPRng es el ejemplo más conocido. Otros son PDQ, PPR, PLP, GNUlpr y RLPR. Pero ninguno de los nuevos programas resultaron ser un «gran avance»; la mayoría de ellos se limitaban a implementar la vieja especificación del LPD con unas pocas (o unas muchas) extensiones nuevas, lo que los hacía incompatibles entre ellos.
Después de haber visto el desarrollo de no uno, sino diferentes alternativas al venerable LPD de estilo BSD, Grant Taylor, autor del Linux Printing HOWTO, alzó la voz para decir ¡LPD debe morir! en su «Campaña para la abolición del LPD».
Junto con lo visto anteriormente, en el lado de la industria, se hiceron esfuerzos para superar las conocidad debilidades de LPD. Comenzó con extensiones propietarias del viejo LPD y llegó hasta el punto de que Hewlett-Packard® intentó establecer HP® JetDirect como un nuevo estándar en la impresión en red. Esto desembocó en más incompatibilidades.
Al final, tomo forma una iniciativa para definir un nuevo estándar entre la industria y la IETF. El «Printer Working Group» o PWG, una unión de fabricantes de hardware, software y sistemas operativos, creó un borrador del nuevo «Protocolo de impresión de Internet», IPP. La versión 1.1 de IPP ha sido aprobada por la IETF (Grupo de tareas de ingeniería de Internet) como un estándar propuesto y ahora disfruta del soporte unánime en la industria de Europa, los Estados Unidos y Japón. La mayoría de los modelos de impresoras de red actuales incorporan soporte para IPP junto al tradicional LPR/LPD o a la impresión JetDirect.
IPP promete resolver muchos de los problemas a los que se enfrentan los administradores de red. Este colectivo normalmente debe ocuparse de entornos de red heterogéneos y pasa más de la mitad de sus horas de trabajo resolviendo problemas de impresión.
Al crear un conjunto único de funciones de consulta para las impresoras y los servidores compatibles con IPP, para la transferencia de archivos y el establecimiento de atributos de control de tareas entre otras cosas, IPP está destinado a funcionar en todas las plataformas y sistemas operativos. Sin embargo, la implantación no va a producirse de manera inmediata, ya que muchos dispositivos de impresión antiguos seguirán en uso durante varios años. Por lo tanto, en IPP se prevee la compatibilidad con cualquier implementación anterior de IPP. CUPS proporciona la viabilidad de la impresión IPP en todos los entornos.
Sin duda su mayor ventaja será la integración en el conjunto existente de otros protocolos IP robustos. Al ser una extensión de HTTP 1.1, protocolo de demostrada fiabilidad, para la tarea especial de manejar archivos e información para la impresión, también resulta muy sencillo añadirle otros estándares a medida que se van desarrollando:
Autenticación básica, cifrada y de certificados para los usuarios que desean acceder a los servicios de impresión.
Cifrados SSL3 y TLS para la transferencia de información.
Comunicación bidireccional entre los clientes y los dispositivos de impresión, utilizando los mecanismos de HTTP/IPP GET y POST.
Integración con el servicio de directorio LDAP para mantener una base de datos consistente de impresoras disponibles, sus capacidades y los costes por página, etc., así como contraseñas de los usuarios, ACLs, etc..
Impresión de «recogida» (en oposición al modelo tradicional de impresión por «envío»), donde el servidor o la impresora únicamente debe ser informado de la URL de un documento para poder recuperarlo de Internet e imprimirlo.
¿Ha visto usted alguna vez una demostración de las capacidades de CUPS en la red? Seguramente se habrá quedado muy impresionado si no tenía una idea previa de lo que iba a suceder.
Imagine que es usted el administrador de una «red local». Con intención de realizar unas pruebas ha instalado un sistema KDE/CUPS en su red, junto con una docena de impresoras configuradas y funcionando: impresoras láser PostScript®, de inyección de tinta, etc. Los usuarios de KDE de ese sistema están felices y contentos, ya que pueden imprimir como nunca lo habían hecho, pudiendo acceder a todos «los elementos» de cada impresora. Usted ha tardado 2 horas en tenerlo todo funcionando a la perfección... y ahora 100 usuarios de la red quieren lo mismo. ¿Dos horas más en cada sistemas? Usted pensará que es imposible terminarlo antes del año que viene.
Pues está usted equivocado. Basta con que cambie un parámetro en el sistema CUPS original para convertirlo en un «servidor». Instale CUPS en otros cinco sistemas, como «clientes». En el momento en el que vuelva a su primer sistema, encontrará a los usuarios jugando felizmente como los parámetros de la docena de impresoras que había instalado en el «servidor». De alguna forma mágica las impresoras han aparecido en todos los diálogos de impresión de los cinco nuevos sistemas clientes de CUPS.
Sus usuarios pueden imprimir, pero no se ha instalado ni un controlador en los clientes, ni siquiera se han definido colas de impresión.
Entonces, ¿cuál es el truco?
La respuesta no es complicada en absoluto.
Si en la «red local» hay un servidor de CUPS, envía los nombres de todas las impresoras disponibles, utilizando el protocolo UDP y el puerto 631. El puerto 631 está reservado como un «puerto bien conocido» por la IANA (la «Autoridad de asignación de números de Internet») para su utilización por IPP. Todos los clientes CUPS esperan información de un servidor CUPS en el puerto 631. De esa forma es como tienen noticia de las impresoras disponibles y también es así como conocen la «ruta» hacia esas impresoras.
Al utilizar IPP, que en realidad es una inteligente extensión de la versión 1.1 deHTTP, CUPS es capaz de dirigirse a todos los objetos relacionados con el sistema de impresión a través de «Localizadores universales de recursos» o URLs. Ya sean tareas de impresión para eliminar o reiniciar, impresoras para ser consultadas o modificadas o tareas de administración para realizar en el servidor, con IPP y CUPS se puede acceder a cualquier recurso a través de una URL determinada. Muchas de las cosas más importantes se pueden hacer a través del interfaz web de CUPS, que es accesible, por ejemplo, con Konqueror.
Y aún más, lo clientes pueden básicamente «administrar» y «utilizar» cualquier impresora de la que tienen noticia, de la misma forma que si fuese una impresora local. Obviamente esto se puede restringir a través de listas de control de acceso, etc., de forma que cualquier cliente no puede utilizar cualquier impresora de la forma que quiera.
Los clientes pueden incluso imprimir sin tener el filtro (o controlador) apropiado instalado localmente.
¿Cómo funciona esto? Si un cliente quiere conocer y seleccionar las opciones específicas de una impresora, envía una solicitud (llamada CUPS-get-ppd) al servidor. El servidor informa al cliente de todas las opciones específicas de la impresora, como las ha leido del PPD servidor. El usuario del cliente puede ver las opciones y seleccionar las que considere oportunas. Entonces envía al servidor de impresoras el archivo a imprimir, normalmente PostScript® en «bruto» sin filtrar, aliñado con las opciones específicas de la impresora, utilizando IPP como protocolo de transporte. Todo el resto de proceso, especialmente el filtrado para generar el formato final adecuado para la impresora concreta, se realiza en el servidor. El servidor tiene los programas necesarios («controladores» o «filtros») para hacerlo.
De esta forma un cliente puede imprimir sin la necesidad de tener instalado un controlador localmente.
Cualquier cambio en el servidor, como la adición o modificación de una impresora, es «conocido» al instante por los clientes, sin que sea necesario ningún otro tipo de configuración.
Otra de las características avanzadas que se encuentran integradas en CUPS, es la posibilidad de hacer «balanceo de carga».
Si define las mismas colas de impresión en dos o más servidores diferentes, los clientes enviarán sus trabajos al primer servidor disponible o que responda. Esto implica un balanceo de carga automático entre los servidores. Si usted necesita retirar de la red un servidor para realizar tareas de mantenimiento, los otros se ocuparán de sus tareas sin que el usuario llegue a notar la diferencia.
Este capítulo del manual de KDEPrint le conducirá a través de las opciones de configuración o de selección de KDEPrint. En esta versión tratará fundamentalmente de CUPS ya que el autor está familiarizado con él y porque KDEPrint comenzó soportando mejor CUPS. Versiones posteriores de KDEPrint y de las ediciones de este manual soportarán y explorarán más detalladamente otros sistemas de impresión.
Necesita definir su subsistema de impresión, antes de poder instalar cualquier impresora con el entorno de KDEPrint. Hay dos áreas donde puede definir esto: bien en KControl (La sección administrador de impresión), o directamente y «sobre la marcha» desde el cuadro de diálogo.
Navegue hasta ->->->. En la parte inferior verá un botón que le permite seleccionar el subsistema de impresión que desea utilizar. En KDE 2.2 puede elegir de entre las siguientes alternativas:
CUPS (Common UNIX® Printing System).
Imprimir a través de un programa externo (genérico).
LPR (Sistema de impresión estándar BSD).
Sistema de impresión genérico UNIX® LPD (el predefinido).
Entorno RLPR (imprimir sobre servidores remotos LPD desde la línea de órdenes).
Por supuesto, el sistema elegido debe estar instalado, y ejecutándose en su máquina antes de seleccionarlo o de ponerlo en marcha.
En su primer inicio KDEPrint intentará la autodetección. Esto sólo funciona para:
CUPS, porque comprueba si existe un demonio CUPS en ejecución.
LPD, porque comprueba un demonio LPD en ejecución, junto con un archivo printcap
.
El sistema que elija debe estar instalado antes de realizar la selección. La recomendación del autor es CUPS.
Una vez autodetectado, elegido o modificado, el sistema de impresión activo tendrá efecto en todas las aplicaciones KDE. Usuarios diferentes pueden tener subsistemas diferentes en uso, si existen en la máquina y son consistentes entre sí. Las opciones de configuración se guardan en kdeprintrc
. Este archivo es único y normalmente está instalado en $
.HOME
/.kde/share/config/kdeprintrc
Este archivo no debería ser editado directamente, y todas las opciones se pueden configurar desde el interfaz gráfico de KDEPrint.
Puede incluso querer pasar de un susbsistema a otro sobre la marcha, desde el cuadro de diálogo de kprinter.
Una vez que usted haya elegido su susbsistema de impresión y lo haya instalado, está listo para investigar, configurar, administrar y trabajar con este sistema utilizando el entorno de KDEPrint.
Navegue hasta ->->->. En la parte derecha de la ventana verá al menos 4 impresoras predefinidas. Estas son las impresoras virtuales o para propósitos especiales, que se explicarán en otra sección. Verá una barra de herramientas con 13 iconos en la parte superior de la ventana, y al menos 4 pestañas en la parte inferior, llamados Información, Trabajos, Propiedades e Instancias.
Inicia la configuración del servidor de impresión (ahora que ha elegido CUPS, esto es equivalente a la configuración del demonio CUPS) pulsando en el botón apropiado. Puede encontrarlo moviendo el ratón lentamente sobre los botones y leyendo los consejos. Debería ser el undécimo por la izquierda o el tercero por la derecha, su icono es una llave inglesa.
Aparece la ventana de configuración del servidor CUPS. Le ofrece una vista estructurada de todas las opciones aplicables al demonio CUPS. El archivo de configuración para ese demonio está normalmente ubicado en /etc/cups/cupsd.conf
. Éste es un archivo ASCII sencillo con sintaxis similar a la del archivo de configuración del servidor web Apache. Es una buena idea crear una copia de seguridad por si acaso algo se estropea durante la utilización de los diálogos de configuración de KDEPrint/ servidor CUPS:
cp /etc/cups/cupsd.conf
/etc/cups/cupsd.conf.bak
Como este interfaz gráfico de usuario es una nueva propiedad, debería tener una segunda oportunidad de volver al archivo original. De modo que por favor haga una copia.
Una propiedad muy interesante es la «Ayuda rápida» disponible. Si pulsa sobre la pequeña interrogación (¿Qué es esto?) en la barra de títulos de la ventana, verá que el cursor cambia de forma. Ahora pulse sobre el campo de configuración de cupsd para encontrar lo que significa y qué opciones tiene. En la mayor parte de los casos el significado es inmediato, de lo contrario busque en la excelente documentación de CUPS (si el demonio de CUPS está en ejecución, lo tiene en línea en su propia máquina en http://localhost:631/documentation.html).
Si CUPS no se está ejecutando, pero está instalado en su sistema puede encontrarlo en su propio sistema de archivos. La dirección exacta depende de su Sistema operativo, pero en Linux® el valor predeterminado es /usr/share/doc/cups/
o /usr/share/doc/cups/documentation.html
.
Para obtener la mejor y más detallada información, debería siempre referirse a la documentación original de CUPS. CUPS está, al igual que KDE, en un proceso de desarrollo rápido. Constantemente hay nuevas propiedades añadidas. Temporalmente algunas propiedades nuevas pueden que sólo sean configurables editando archivos de configuración. El GUI de KDEPrint podría no seguir la misma velocidad de desarrollo de CUPS.
En caso de que quiera ver los archivos de configuración originales de su sistema CUPS, están aquí:
Estas rutas están basadas en una instalación predefinida. Su Sistema operativo puede que las haya instalado con un prefijo diferente, por ejemplo, /usr/local/
, pero la jerarquía debería concordar con la que se muestra a continuación.
/etc/cups/
La carpeta en la que se encuentran los archivos de configuración.
/etc/cups/cupsd.conf
El archivo de configuración para el demonio CUPS.
/etc/cups/printers.conf
El archivo de configuración que contiene la información sobre las impresoras instaladas localmente.
/etc/cups/ppd/
La carpeta que contiene los archivos PPD de las impresoras instaladas.
Los siguientes enlaces sólo funcionan si su demonio CUPS está funcionando y en marcha. Para acceder a la documentación original de CUPS vaya a:
Una página con todos los enlaces a otros documentos.
Acceso directo al manual del administrador de software de CUPS en formato HTML.
Acceso directo al manual del administrador de software de CUPS en PDF format.
La última documentación en línea desde el servidor web de CUPS.
Los siguientes enlaces le permiten acceder a los mismos archivos (probablemente los iconos y las imágenes falten) incluso si su demonio CUPS no está en marcha. Necesita, sin embargo, que CUPS esté instalado en su sistema (algunas distribuciones pueden colocar los archivos en algún lugar diferente, en cuyo caso tendrá que buscar donde están). Para acceder a la documentación original de CUPS, diríjase a:
Esta documentación está disponibles incluso cuando no esté instalado el demonio CUPS, aunque puede que vea que ciertas imágenes e iconos no aparecen lea los archivos HTML.
Como ya indicamos, la jerarquía más abajo debería estar intacta pero su Sistema operativo puede que haya instalado CUPS en un lugar diferente.
/usr/share/doc/cups/documentation.html
Una página con todos los enlaces a otros documentos.
/usr/share/doc/cups/sam.html
Acceso directo al manual del administrador de software de CUPS en formato HTML.
/usr/share/doc/cups/sam.pdf
Acceso directo al manual del administrador de software de CUPS en PDF format.
Hay unos cuantos sitios web y grupos de noticias de discusión sobre CUPS (e impresión en Linux® en general) y que ayudan a los néofitos.
El servidor web de CUPS.
LinuxPrinting.org, el hogar del CÓMO de impresión en Linux y de la base de datos de Linux®.
Finalmente, habrá una página web para KDEPrint y documentación relacionada en http://kdeprint.sourceforge.net/.
En la siguiente sección, iremos paso a paso por la mayor parte de las opciones de KDEPrint con CUPS.
Esta sección todavía no está completa:
Vista de árbol, de iconos y de lista.
Los iconos de la barra de tareas.
Diferentes fuentes para impresoras diferentes.
Los diferentes iconos de impresoras significan cosas diferentes.
Esta es la pantalla de bienvenida del diálogo de configuración de su servidor. Pulsando sobre uno de los elementos de la vista de árbol en el lado izquierdo de la pantalla abre la parte adecuada de las opciones de configuración.
Cada opción tiene un valor predefinido. Los valores predeterminados permiten que CUPS funcione normalmente como un cliente funcional. Los clientes escuchan en el puerto TCP/IP 631 en escucha de la difusión realizada por los servidores CUPS en una LAN. Esta información permite a los cliente imprimir inmediatamente después de recibirla, sin que los clientes tengan que instalar o configurar ninguna impresora.
Para configurar un servidor CUPS (que anuncia su servicio a la LAN) necesita cambiar las opciones predeterminadas.
El diálogo para configurar el servidor CUPS: pantalla de bienvenida.
El diálogo para configurar el servidor CUPS: pantalla de bienvenida
Para selecionar el valor predeterminado de cualquier elemento active la casilla en el lado derecho de la pantalla. Para configurar un elemento con un valor diferente, desacitve la casilla y proceda con la opción que desea en el lado izquierdo de la pantalla.
La configuración completa del servidor incluye:
Configuración del Cifrado y soporte de certificados del servidor.
Configuración general de Red.
Cada de uno de estos elementos de configuración se describirán en las siguientes secciones de este manual.
La configuración general del servidor se hace desde esta pantalla. Incluye:
Nombre del servidor.
Correo del administrador.
Usuario del servidor.
Grupo del servidor.
Nombre de usuario remoto.
La pestaña para configurar las opciones generales del servidor CUPS le permite cambiar los valores predeterminados. Pulse sobre la interrogación y sobre un elemento para obtener una «Ayuda rápida» acerca de la función de dicho elemento.
Si no está seguro, déjelo y vuelva a la documentación original de CUPS primero. Si su demonio CUPS ya está en ejecución, es legible por Konqueror apuntando a URL http://localhost:631/documentation.html.
Lo primero «familiarícese» con el manual del administrador de software. Si no, por ejemplo, si el demonio CUPS no está ejecutándose, intente mirar en su sistema local de archivos, de manera predeterminada en /usr/share/doc/cups/
o /usr/share/doc/cups/documentation.html
.
El nombre del sevridor, como se anuncia al resto del mundo. De manera predeterminada, CUPS utilizará el nombre del sistema. Para configurar el servidor predeterminado uilizado por los clientes, consulte el archivo client.conf
.
Por ejemplo, introduzca mimaquina.dominio.com
Éste es el nombre de la máquina que comunican los clientes. Si encuentra algún problema extraño al acceder al servidor, ponga aquí su dirección IP para la diagnosis de problemas. De este modo elimina cualquier problema potencial de resolución de nombres y puede diagnosticar el problema real con más facilidad.
Ésta es la dirección de correo para enviar quejas o problemas. De forma predeterminada CUPS utilizará «root@hostname».
Por ejemplo, introduzca root@mimaquina.com
.
Al contrario de lo que sugiere la ayuda rápida, también es legal enviar un mensaje de alabanzas a CUPS y a KDEPrint al administrador del servidor.
El usuario bajo el que el servidor corre. Normalmente este debe ser lp
, sin embargo usted puede configurarlo para otro usuario si fuera necesario.
El servidor debe ejecutarse inicialmente como root para soportar el puerto IPP predefinido, 631. Cambia los usuarios siempre que se ejecute un programa externo.
Introduzca por ejemplo lp
.
Esta es la cuenta UNIX® de usuarios y sobre la que se ejecutan los programas CGI.que son los responsables de mostrar el interfaz de administración web al que podrá acceder a través de http://localhost:631/.
No hay necesidad de configurar la directiva Usuario a root
, así que no lo haga nunca, ya que tiene su peligro. Si alguien descubriera vulnerabilidades de seguridad en uno de los filtros de archivos utilizados, controladores de impresoras o programas CGI, podría ejecutar órdenes arbitrarias remotamente en su sistema con privilegios de usuario de root. Utilice siempre una cuenta sin privilegios para la directiva Usuario del servidor.
El grupo bajo el que se ejecuta el servidor. Normalmente este debe ser sys
, sin embargo puede configurarlo para otro grupo si fuera necesario.
Introduzca por ejemplo sys
.
El nombre del usuario asignado para accesos sin autentificar desde sistemas remotos. De forma predeterminada remroot
.
El nombre aparecerá en archivos de registro y en solicitudes de propietario de trabajos, etc., para todos los recursos y direcciones del servidor CUPS que están configurados para permitir acceso sin autentificación. Las entradas autentificadas contendrán los nombres autentificados.
La configuración del registro del servidor se hace desde la pantalla. Incluye:
Opción de archivo de registro de accesos.
Opción de archivo de registro de errores.
Opción de archivo de registro de página.
Opción de nivel de registro.
Opción de tamaño máximo del registro.
Ésta es una pantalla importante para usted. Si tuviera problemas: aquí está el lugar para configurar el nivel de registro a «depurar», reinicie el demonio CUPS y después mire el archivo de registro de error definido aquí buscando entradas que podrían darle una pista sobre el problema.
Ese es el lugar donde se registran los accesos al servidor. Si no comienza por /
, entonces se asume que la ruta es relativa a la raíz del servidor.
También puede utilizar el nombre especial syslog
para enviar las salidas al archivo de registro syslog o al demonio syslog.
Introduzca una ruta, por ejemplo,
./var/log/cups/acces_log
El formato de este archivo está almacenado en el llamado «Formato de registro común», de modo que usted pueda utilizar programas como Webalizer o cualquier otra herramienta de informe de registro de acceso para generar informes de la actividad del servidor CUPS.
Para incluir el nombre del servidor en el nombre del archivo utilice un %s en el nombre. Ejemplo:
./var/log/cups/access_log-%s
kurt@transmeta:~ >
tail
/var/log/cups/access_log
127.0.0.1 - - [04/Aug/2001:20:11:39 +0100] "POST /printers/ HTTP/1.1" 200 109 127.0.0.1 - - [04/Aug/2001:20:11:39 +0100] "POST /admin/ HTTP/1.1" 401 0 127.0.0.1 - - [04/Aug/2001:20:11:39 +0100] "POST / HTTP/1.1" 200 210 127.0.0.1 - - [04/Aug/2001:20:11:39 +0100] "GET /ppd/DANKA_P450.ppd HTTP/1.1" 200 51021 127.0.0.1 - - [04/Aug/2001:20:11:39 +0100] "POST /jobs/ HTTP/1.1" 200 246 10.160.16.45 - - [04/Aug/2001:20:11:39 +0100] "GET /printers/DANKA_P450 HTTP/1.0" 200 0 127.0.0.1 - - [04/Aug/2001:20:11:39 +0100] "POST / HTTP/1.1" 200 80 127.0.0.1 - - [04/Aug/2001:20:11:39 +0100] "POST / HTTP/1.1" 200 139 10.160.16.45 - - [04/Aug/2001:20:11:40 +0100] "GET /cups.css HTTP/1.0" 200 198 127.0.0.1 - - [04/Aug/2001:20:11:40 +0100] "POST / HTTP/1.1" 200 139 10.160.16.45 - - [04/Aug/2001:20:11:39 +0100] "GET /printers/DANKA_P450 HTTP/1.0" 200 7319 10.160.16.45 - - [04/Aug/2001:20:11:40 +0100] "GET /images/title-logo.gif HTTP/1.0" 200 5729
Usted ve una línea separada para cada vez que se ha accedido. Dicha línea muestra la dirección IP del cliente, fecha, hora y método de acceso (POST o GET), el recurso solicitado, la versión HTTP utilizada por el cliente, el código de estado y el número de bits transferidos. El código de estado 200 significa correcto el 401 en el ejemplo anterior es un acceso no autorizado que fue denegado. Para una explicación detallada del formato del registro consulte el manual del administrador de software de CUPS.
Si no comienza por /
, entonces se asume que la ruta es relativa a la raíz del servidor. La opción predefinida es /var/log/cups/error_log
.
También puede utilizar el nombre especial syslog
para enviar las salidas al archivo de registro syslog o al demonio syslog.
Por ejemplo, introduzca la ruta
./var/log/cups/error_log
El siguiente extracto del registro de error muestra lo que se registra al probar la página con la opción predefinida de Nivel de registro a «info». Para una explicación de la opción Nivel de registro consulte las opciones siguientes.
kurt@transmeta:~ >
tail
/var/log/cups/error_log
I [04/Aug/2001:23:15:10 +0100] Job 213 queued on 'DANKA_P450' by 'root' I [04/Aug/2001:23:15:10 +0100] Started filter /usr/lib/cups/filter/pstops (PID 18891) for job 213. I [04/Aug/2001:23:15:10 +0100] Started backend /usr/lib/cups/backend/lpd (PID 18892) for job 213.
Si no comienza por /
, entonces se asume que la ruta es relativa a la raíz del servidor. La opción predefinida es /var/log/cups/page_log
.
También puede utilizar el nombre especial syslog
para enviar las salidas al archivo de registro syslog o al demonio syslog.
Por ejemplo, introduzca la ruta
./var/log/cups/page_log
El archivo de registro de páginas tiene una línea por cada página única de trabajo impresa.
Aquí se muestran ejemplos:
kurt@transmeta:~ >
tail
/var/log/cups/page_log
GIMP_print_stp_HP kdetest 201 [03/Aug/2001:03:18:03 +0100] 4 1 GIMP_print_stp_HP kdetest 201 [03/Aug/2001:03:18:03 +0100] 5 1 GIMP_print_stp_HP kdetest 202 [03/Aug/2001:11:46:49 +0100] 1 1 GIMP_print_stp_HP kdetest 203 [03/Aug/2001:11:46:54 +0100] 1 1 DANKA_infotec_P450 kurt 204 [04/Aug/2001:03:29:00 +0100] 1 33 DANKA_infotec_P450 kurt 204 [04/Aug/2001:03:29:00 +0100] 2 33 DANKA_infotec_P450 kurt 204 [04/Aug/2001:03:29:00 +0100] 3 33 DANKA_infotec_P450 kurt 204 [04/Aug/2001:03:29:00 +0100] 4 33 DANKA_infotec_P450 root 205 [04/Aug/2001:19:12:34 +0100] 1 14 DANKA_infotec_P450 root 206 [04/Aug/2001:19:15:20 +0100] 1 1
En este extracto del archivo aparece información del nombre de las impresoras (GIMP_print_stp_HP
y DANKA_infotec_P450
) usadas por todo el servidor, los nombres de usuario (kdetest
, kurt
y root
), los IDs de los trabajos («201» a «205»), momento de impresión, número de páginas dentro del trabajo, y número de copias para las páginas. Por ejemplo, el trabajo con ID 204 tenía 4 páginas y 33 copias impresas, el trabajo con ID 205 tenía 14 copias de sólo 1 página).
CUPS depende (para el cálculo del número de páginas en un trabajo) de pasar el PostScript® a través del filtro «pstops». Consulte el diagrama de flujo Kivio en la arquitectura de filtro de CUPS para una idea de dónde ajusta el filtro en el proceso completo de impresión). Es más, pstops depende de un recuento conforme a DSC (DSC es Document Structuring Conventions, un estándar definido por Adobe) a ser enviado por el cliente. En la mayor parte de los casos funciona.
Sin embargo, esta contabilización de páginas no funciona para ninguna cola de impresora «sin procesar» (ya que aquellas, por definición, no utilizan filtrado en la máquina con CUPS y no pasan por pstops). Todos los trabajos que pasan a través de una cola «sin procesar» se contabilizan como 1 trabajo de 1 página (posiblemente con múltiples copias). Esto es especialmente cierto para todos los trabajos enviados desde clientes Microsoft® Windows® a través de Samba al servidor CUPS, ya que esos trabajos ya llegan correctamente a la impresora con el formato correcto, porque los clientes utilizan el controlador original de la impresora.
Todavía estoy pendiente de encontrar una herramienta de análisis de registro de páginas para CUPS. Debería generar un informe gráfico similar al de los informes de acceso generados por Webalizer. De este modo usted podría disponer de estadísticas para contabilizar el uso de impresoras, carga en función de la hora o del día, usuarios, etc. ¿Se anima alguien?.
Esta opción controla el número de mensajes registrados en el archivo de registro de errores. Puede ser cualquiera de los siguientes:
Registra todo.
Registra casi todo.
Registra las peticiones y los cambios de estado.
Registro de errores y avisos.
Sólo registra errores.
No registra nada.
Si necesita descubrir el origen de los problemas (o si desea estudiar el funcionamiento interno de CUPS), establezca el nivel de registro a debug o debug2. Entonces el error_log tendrá muchas más entradas (no sólo errores, sino también entradas informativas).
Puede utilizar este visor para «observar» qué es lo que está haciendo CUPS cuando envía a imprimir un trabajo. En Konsole introduzca:
kurt@transmeta:~ >
tail
-f
-n
100
/var/log/cups/error_log
Esto le ofrecerá las últimas 100 líneas (-n
100
) del archivo en la pantalla y una actualización en tiempo «real» (-f
) de lo que está ocurriendo. El siguiente listado muestra la impresión de una página de prueba (algunas partes han sido eliminadas por razones de espacio... Inténtelo si necesita más información):
I [04/Aug/2001:23:15:12 +0100] Job 214 queued on 'DANKA_P450' by 'root'
D [04/Aug/2001:23:15:12 +0100] StartJob(214, 08426fe0)
D [04/Aug/2001:23:15:12 +0100] StartJob() id = 214, file = 0/1
D [04/Aug/2001:23:15:12 +0100] job-sheets=none,none
D [04/Aug/2001:23:15:12 +0100] banner_page = 0
D [04/Aug/2001:23:15:12 +0100] StartJob: argv = "DANKA_P450","214","root","KDE Print Test",
[....]
D [04/Aug/2001:23:15:12 +0100] StartJob: envp = "PATH=/usr/lib/cups/filter:/bin:/usr/bin", [....]
D [04/Aug/2001:23:15:12 +0100] StartJob: statusfds = 5, 6
D [04/Aug/2001:23:15:12 +0100] StartJob: filterfds[1] = 7, -1
D [04/Aug/2001:23:15:12 +0100] StartJob: filter = "/usr/lib/cups/filter/pstops"
D [04/Aug/2001:23:15:12 +0100] StartJob: filterfds[0] = 8, 9
D [04/Aug/2001:23:15:12 +0100] start_process("/usr/lib/cups/filter/pstops", [....]
I [04/Aug/2001:23:15:12 +0100] Started filter /usr/lib/cups/filter/pstops (PID 18991) for job 214.
D [04/Aug/2001:23:15:12 +0100] StartJob: backend = "/usr/lib/cups/backend/lpd"
D [04/Aug/2001:23:15:12 +0100] StartJob: filterfds[1] = -1, 7
D [04/Aug/2001:23:15:12 +0100] start_process("/usr/lib/cups/backend/lpd", [....]
I [04/Aug/2001:23:15:12 +0100] Started backend /usr/lib/cups/backend/lpd (PID 18992) for job 214.
D [04/Aug/2001:23:15:12 +0100] Page = 595x842; 15,16 to 580,833 [....]
Las líneas que comienzan con «D» son entradas de nivel de depuración, las que comienzan con «I» tienen el nivel «info».
Controla el tamaño máximo de cada archivo de registro antes de que sea rotado. Los valores predeterminados son 1048576 (1 Mb). Establezca este valor a 0 para desactivar la rotación.
Introduzca un tamaño en bytes, por ejemplo, 1048576
.
El diálogo para configurar el servidor CUPS. Aquí se configuran diferentes carpetas. Normalmente no necesitará cambiar nada en esta sección. En caso de jugar con tipos de letras bonitas (TrueType, PostScript® u otras) en su sistema, éste es el lugar para configurar las opciones para usarlos al imprimir. Las opciones de carpeta incluyen:
Ejecutables: dónde encontrar los ejecutables del servidor.
Configuración: dónde encontrar los archivos de configuración del servidor.
Datos: dónde encontrar los archivos de datos del servidor.
Archivos temporales: dónde colocar los archivos temporales del servidor.
Solicitudes temporales: dónde encontrar el servidor.
Rutas a las fuentes: dónde encontrar las fuentes del servidor.
La carpeta raíz para los ejecutables del planificador. De forma predeterminada este es /usr/lib/cups
(o /usr/lib32/cups
en IRIX 6.5).
La carpeta raíz para el planificador de tareas. De forma predeterminada, /etc/cups
.
En el sistema SuSE del autor, este es /usr/share/doc/cups
. Contiene toda la documentación HTML o PDF para CUPS que está disponible a través del interfaz Web en http://localhost:631/documentation.html
La carpeta raíz de los archivos de datos de CUPS. De forma predeterminada es /usr/share/cups
.
Contiene anuncios, juegos de caracteres, datos, controladores, tipos de letras y plantillas pstoraster.
La carpeta en el que colocar los archivos temporales. Esta carpeta debe ser escribible por el usuario en la pantalla anterior. El valor predeterminado es o bien /var/spool/cups/tmp
o el valor de la variable de entorno TMPDIR
.
La carpeta en la que se guardan los archivos de solicitudes. De forma predeterminada la carpeta es /var/spool/cups
.
El lugar en el que configurar el servidor CUPS para manejar tipos de letra bonitos (TrueType o PostScript®). CUPS buscará aquí para incluir los tipos de letra en los archivos de impresión. Esto sólo afecta al filtro pstoraster y el valor predeterminado es /usr/share/cups/fonts
.
Para especificar más de una carpeta, utilice los dos puntos para separarlos. Hágalo así:
/path/to/first/fontdir/:/path/to/second/fontdir/:/path/to/last/fontdir/
Para que la directiva de la ruta a las fuentes funcione como se espera, la aplicación para imprimir necesita:
O bien referenciar correctamente los tipos de letra deseados en la cabecera del PostScript® generado.
O empotrar el tipo de letra en el archivo PostScript®.
Referenciar el tipo de letra por el nombre significa que RIP y el dispositivo de impresión lo respetan y lo utilizan. RIP o la impresora sólo pueden utilizar el tipo de letra deseado, si está disponible en el sistema.
En caso de una impresora PostScript®, es necesario un tipo de letra residente en la impresora. Si la impresora no tiene este tipo de letra, intentará reemplazarla por otra similar.
En caso de una impresora que no sea PostScript® esto se hace por CUPS y su mecanismo de filtrado RIP. CUPS utilizará la directiva de la ruta a las fuentes para utilizar el tipo de letra correcta cuando se haga RIP del PostScript® en el filtro de pstoraster.
En caso de un dispositivo de salida PostScript®, CUPS simplemente encola el archivo (de hecho, lo pasa a través del filtro pstops para la contabilización), y no «actua» sobre él. Por tanto, si imprime en una impresora PostScript® ésta es la única responsable de utilizar el tipo de letra requerido. No puede, si el tipo de letra no se carga en la impresora ni se puede incluir en el PostScript®.
El diálogo para configurar las opciones HTTP del servidor CUPS,se muestran aquí.
Las opciones HTTP del servidor CUPS son las siguientes:
La carpeta de documentos.
El lenguaje predefinido.
El juego de caracteres predefinido.
La carpeta raíz para los documentos HTTP a servir. De forma predeterminada están en la carpeta /usr/share/cups/doc
.
El idioma predefinido, si no está especificado por el navegador. Si no está especificado, se utiliza el locale actual.
Utilice los códigos de dos letras, por ejemplo en
o de
.
El juego de caracteres predefinido a utilizar. Si no se especifica el valor predeterminado es UTF-8. Esto se puede especificar directamente en los documentos HTML.
Este es el diálogo para configurar las opciones de seguridad del servidor CUPS. Las opciones de soporte de cifrado del servidor son:
Cifrar certificado: el archivo a leer que contiene el certificado del servidor.
Clave de cifrado: el archivo a leer que contiene la clave del servidor.
El archivo a leer conteniendo el certificado del servidor. El valor predeterminado es /etc/cups/ssl/server.crt
.
El archivo a leer conteniendo la clave del servidor. Valor predeterminado: /etc/cups/ssl/server.key
.
El diálogo para configurar opciones varias del servidor CUPS se muestra aquí. Las opciones del servidor se configuran a través de esta pantalla:
Preservar historial del trabajo: decide si se guardar el historial del trabajo para su posterior revisión.
Preservar archivos de trabajo: decide si guardar trabajos con RIP para imprimirlos más tarde.
Archivo Printcap: opción del nombre de y ruta al archivo printcap.
Caché RIP: opción del tamaño del caché RIP en memoria.
Límite de filtro: definición de un límite de filtro.
Opción para preservar el historial de un trabajo después de que éste haya finalizado, haya sido cancelado o detenido. El valor predeterminado es sí.
Indica si se han de conservar o no archivos de trabajo después de que éste haya finalizado, haya sido cancelado o detenido. El valor predeterminado es no.
El nombre del archivo printcap. El valor predeterminado es sin nombre de archivo. Déjelo en blanco para desactivar la generación del archivo printcap.
La opción printcap sólo es necesaria para ciertas aplicaciones antiguas que precisan un archivo de ese tipo.
La cantidad de memoria que cada RIP debería utilizar para usar bitmaps en caché. El valor puede ser un valor real, seguido de una «k» para kilobytes, «m» para megabytes, «g»para gigabytes, o «t» para baldosas, donde una baldosa es 256 x 256 pixels. El valor predeterminado es 8m.
Establece el coste máximo de todos los filtros de los trabajos que se pueden ejecutar al mismo tiempo. Un límite de 0 significa sin límite. Un trabajo típico necesita un límite de filtro de al menos 200. Límites inferiores al mínimo requerido por un trabajo fuerzan la impresión de un trabajo único en cada momento. El valor predeterminado es 0 (ilimitado).
Se muestra el diálogo para configurar las opciones de red del servidor CUPS. Incluye:
Búsquedas de nombre de servidores.
Puerto.
Tamaño máximo de solicitud.
Tiempo de espera.
Indica si hacer o no búsquedas de direcciones IP para obtener un nombre de máquina totalmente cualificado. El valor predeterminado está desactivado, para tener mejores prestaciones.
Introduzca aquí los puertos y direcciones en los que escucha el servidor. El puerto predeterminado 631 está reservado para el Internet Printing Protocol (protocolo de impresión de Internet), y es lo que se usa aquí.
Puede tener múltiples entradas, para escuchar más de un puerto o dirección o para restringir el acceso.
Desafortunadamente, la mayor parte de los navegadores web no soportan actualizaciones TLS o HTTP para cifrado. Si desea soportar cifrado basado en web, probablemente necesita escuchar en el puerto 443, el puerto HTTPS.
Utilice los botones y para añadir o eliminar entradas de la lista.
Puede introducir sólo puertos, p. ej. 631
, o nombres de máquinas con puertos, p. ej. mimaquina:80
ó 1.2.3.4:631
.
Controla el máximo tamaño de las peticiones HTTP y los archivos de impresión. El valor predeterminado es 0, que desactiva esta propiedad.
El tiempo de espera (en segundos) antes de que expiren las peticiones. El valor predeterminado es 300 segundos.
Se muestra el diálogo de configuración del cliente de red de CUPS. Incluye:
Aceptar solicitudes «mantener activo»
Tiempos de espera para mantener activo
Máx. No. de clientes
Decide si soportar o no la opción de conexión de mantener activo. El valor predeterminado es activo.
El tiempo de espera (en segundos) antes de que las conexiones de Mantener activo se cierren automáticamente. El valor predeterminado es 60 segundos.
Controla el número máximo de clientes simúltaneos a manejar. El valor predeterminado es 100.
Se muestra el diálogo de configuración general de exploración de CUPS. Incluye:
Activar exploración.
Utilizar nombres cortos cuando sea posible.
Utilizar clases implícitas.
Decide si difundir o no la información de la impresora a otros servidores CUPS: Activado de forma predeterminada.
Decide si usar o no nombres «cortos» para impresoras remotas cuando sea posible (p. ej., printer
en lugar de printer@host
). Activado de manera predeterminada.
Decide si utilizar o no clases implícitas.
Las clases de impresoras se pueden especificar explícitamente, en el archivo classes.conf
, basado implícitamente en las impresoras disponibles en la LAN, o en ambas.
Cuando las clases implícitas están activadas, las impresoras en la LAN con el mismo nombre (p. ej. Acme-LaserPrint-1000
) se pondrán en una clase con el mismo nombre. Esto le permite configurar colas redundantes múltiples en una LAN sin muchas dificultades administrativas. Si un usuario envía un trabajo a Acme-LaserPrint-1000
, el trabajo irá primero a la primera cola disponible.
Esta opción está disponible de forma predeterminada.
Se muestra el diálogo de configuración de conexión de exploración del servidor CUPS. Las opciones de conexión de exploración incluyen:
Direcciones de difusión: La dirección de difusión (UDP) a la que transmitir información de la impresoras.
Puerto de difusión: El número de puerto utilizado para difusión.
Direcciones de comprobación: Las direcciones en las que comprobar la información sobre las impresoras de los servidores que no envíen mensajes de difusión (o que si los envían no llegan a su red local debido a la existencia de enrutadores intermedios).
Después de pulsar el botón , podrá ver el siguiente diálogo para introducir un nuevo valor para los paquetes salientes de exploración de la difusión. Es el mismo tipo de diálogo que se utiliza para añadir otras direcciones de servidores de CUPS para comprobar la información de las impresoras.
Esta opción especifica la dirección de difusión a utilizar. De forma predeterminada, la información de exploración es difundida a todos los interfaces activos.
HP-UX® 10.20 y las versiones anteriores no manejaban correctamente las difusiones salvo que tuviese una máscara de red de las clases A, B, C o D (es decir, no hay soporte para CIDR).
El puerto utilizado para las difusiones UDP. De forma predeterminada éste es el puerto IPP, si lo cambia, tendrá que hacerlo en todos los servidores. Únicamente se reconoce el BrowsePort.
Comprobar las impresoras de los servidores nombrados.
Aquí se muestra el diálogo para configurar los paquetes de exploración permitidos y/o denegados para el servidor CUPS.
Permitir exploración.
Denegar exploración.
Orden de exploración.
Aquí se muestra el diálogo para introducir un nuevo valor para la dirección de otro servidor CUPS que acepte paquetes de exploración. Se abre pulsando en el botón situado al lado del campo Permitir exploración. Es el mismo diálogo que para añadir direcciones de envío «denegadas».
Aquí se muestra el diálogo para introducir un nuevo valor para la dirección de de otro servidor CUPS que acepte paquetes de exploración.
Permitir exploración especifica una máscara de direcciones para permitir los paquetes de exploración entrantes. De forma predeterminada, se permiten la entrada a paquetes de todas las direcciones.
Denegar exploración especifica una máscara de direcciones para denegar los paquetes de exploración entrantes. De forma predeterminada, no se deniega ningún paquete de ninguna dirección.
Tanto Permitir exploración como Denegar exploración permiten las siguientes notaciones para las direcciones:
All
None
*.dominio.com
.dominio.com
equipo.dominio.com
nnn.*
nnn.nnn.*
nnn.nnn.nnn.*
nnn.nnn.nnn.nnn
nnn.nnn.nnn.nnn/mmm
nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
Las restricciones por nombres y dominios únicamente funcionarán si está activada la resolución de nombres.
Especifica el orden de las comparaciones permitidas/denegadas.
Aquí se muestra el diálogo para la configuración de las esperas de exploración de CUPS. La configuración de esperas de la exploración incluye:
Intervalo de exploración.
Caducidad de la exploración.
El tiempo entre las actualizaciones de la exploración en segundos. El valor predeterminado es de 30 segundos.
Tenga en cuenta que la información de exploración se envía cada vez que cambia el estado de una impresora, así que esto representa el tiempo máximo entre actualizaciones.
Si lo establece a 0 se desactivan las difusiones salientes de forma que sus impresoras locales no enviarán actualizaciones, pero aún podrá ver las impresoras de otros equipos.
La caducidad (en segundos) de las impresoras en red. Si no se obtiene una actualización durante ese tiempo, la impresora será eliminada de la lista de impresoras.
Este número no debería ser menor que el periodo del intervalo de navegación, por razones obvias. El valor predeterminado es 300 segundos.
Aquí se muestra el diálogo para configurar el servidor CUPS como un repetidor de exploración. Los parámetros del repetidor de exploración incluyen:
Repetición de los paquetes de exploración.
Aquí se muestra el diálogo para introducir un nuevo valor para una pareja de direcciones para definir un repetidor de exploración entre el servidor CUPS y una red.
Reenvía los paquetes de navegación desde una dirección o una red a otra.
Aquí se muestra el diálogo para configurar los parámetros de seguridad del servidor CUPS en cualquiera de las ubicaciones definidas. Contiene los siguientes parámetros, que se pueden definir por separado para cualquier recurso (o ubicación) válido del servidor CUPS:
Grupo de sistema.
Permisos de acceso.
Tipo de autorización.
Clase de autorización.
Nombre del grupo de autorización.
Cifrado.
Permitir.
Denegar.
Orden.
Los recursos (o ubicaciones) válidos del servidor CUPS son:
Ubicación de la raiz del servidor: /
Ubicación de la administración del servidor: /admin
Todas las impresoras en el servidor: /printers
Cualquier impresora individual en el servidor: p. ej. /printers/infotec_P320
Todas las clases de impresoras en el servidor: /classes
:
Cualquier clase de impresora individual en el servidor: p. ej. /classes/all_infotecs_P320_or_P450
Es válido para todas las ubicaciones que no se hayan definido de forma separada «superiores».
Por ejemplo, si tiene una impresora llamada infotec_P450
sin opciones de seguridad, entonces la seguridad de la ubicación /printers
tendrá la responsabilidad de la impresora, al ser esta una sububicación de /printers
. Si se da el caso de que no haya seguridad definida para /printers
, la seguridad de /
(la seguridad general del servidor) tendrá la responsabilidad. Si no lo configura específicamente, la seguridad será la de los valores compilados de manera predeterminada.
El nombre del grupo de System
o acceso a la administración de la impresora. El valor predeterminado varía en función del sistema operativo, pero será sys
, system
o root
(se comprueba en ese orden).
Los permisos de acceso de cada carpeta los sirve el organizador. Las ubicaciones son relativas a la raíz del documento.
La autorización a utilizar:
Ninguna autentificación.
Autentificar utilizando el método HTTP básico.
Autentificar utilizando el método HTTP de resumen.
La autentificación por certificado local puede ser sustituida por el cliente por la básica o la de resumen, al conectar al interfaz local.
La clase de autorización. En este momento únicamente se soportan «Anónimo», «Usuario», «Sistema» (un usuario válido que pertenezca al grupo establecido o al de sistema) y «Grupo» (un usuario válido que pertenezca al grupo especificado).
El nombre del grupo para la autorización por «Grupo».
Utilizar o no cifrado. Esto depende de que OpenSSL esté enlazada a la biblioteca de CUPS y al organizador.
Los valores posibles son:
Utilizar siempre cifrado (SSL).
No utilizar cifrado.
Utilizar la actualización de cifrado TLS.
Utilizar cifrado si el servidor lo solicita.
Permite el acceso desde el equipo, dominio, dirección IP o red especificados. Los valores posibles son:
All
None
*.dominio.com
.dominio.com
equipo.dominio.com
nnn.*
nnn.nnn.*
nnn.nnn.nnn.*
nnn.nnn.nnn.nnn
nnn.nnn.nnn.nnn/mmm
nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
Para las direcciones de nombre o de dominio es necesario que tenga activadas las resoluciones de nombres, como ya ha sido descrito.
Deniega el acceso desde el equipo, dominio, dirección IP o red especificados. Los valores posibles son:
All
None
*.dominio.com
.dominio.com
equipo.dominio.com
nnn.*
nnn.nnn.*
nnn.nnn.nnn.*
nnn.nnn.nnn.nnn
nnn.nnn.nnn.nnn/mmm
nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
Para las direcciones de nombre o de dominio es necesario que tenga activadas las resoluciones de nombres, como ya ha sido descrito.
El orden el proceso para permitir y denegar.
Aquí se comenta el diálogo para configurar los parámetros de seguridad del servidor CUPS. Utilizaremos el ejemplo de añadir definiciones de seguridad distintas a las predeterminadas para el recurso all printers
. Esta es la ubicación de acceso para el servidor web de CUPS, http://localhost:631/printers/ o (remotamente) http://cups.server.name:631/printers/
La primera imagen muestra la ubicación general de este parámetro. Seleccionar o un recurso para el que haya decido realizar cambios en su seguridad.
Este diálogo es para añadir un nuevo recurso. Es similar si desea modificar un recurso existente. Éstas son las opciones generales:
Ésta es la segunda parte del diálogo para añadir un nuevo recurso. Es similar si desea modificar un recurso ya existente. Aquí puede definir las máscaras de acceso para el recurso en cuestión.
Pulsando sobre el icono situado en el extremo izquierdo de la barra de herramientas en la parte superior de la pantalla, se inicia el «asistente de añadir impresora».
Este asistente genera varias pantallas hasta conseguir instalar una nueva impresora. En este momento el asistente funciona para CUPS y para el módulo de entorno de RLPR. El número de pasos depende del susbsistema de impresión activo en su sistema.
La pantalla de bienvenida le indica que siempre puede retroceder para modificar algún parámetro.
Seleccione el «terminal» que el protocolo CUPS debe utilizar con su nueva impresora. Estos son:
Impresora local (serie, paralelo, USB).
Cola LPD remota.
Impresora compartida SMB (Windows®).
Impresora en red (TCP, HP® JetDirect, AppSocket).
Impresora en red con IPP (IPP/HTTP).
Impresora de archivo.
Impresora serie fax/módem.
Clase de impresoras.
Si algunas de las posibilidades están en gris, es porque no están disponibles. Por ejemplo, quizá no tenga software para un terminal FAX o ningún módem instalado para usarlo.
Los contenidos de la siguiente pantalla dependen de su elección en la pantalla previa. Si conoce los detalles, simplemente introdúzcalos para configurar directamente la red.
En otros casos el asistente puede explorar la red por usted para ayudarle a decidir qué opción es útil.
Si utiliza una de las conexiones de red (LPD remoto, SMB, CUPS remoto, impresora de red con IPP), dispone de una opción para explorar la red. Sea cuidadoso al aplicarla, en algunos entornos de red la exploración se considera un acto hostil y dañino.
En el caso de SMB, KDEPrint utilizará las utilidades de Samba, nmblookup y smbclient (que necesitan estar instaladas para que funcione) para obtener la información que se presenta en forma de árbol.
En el caso de IPP (Puerto 631) y TCP Network/AppSocket (Puerto 9100) KDEPrint tratará de abrir el puerto y en caso de conseguirlo enviar una solicitud ipp-get-printer-attribute a la impresora. En impresoras HP® nuevas esto último funciona bien porque soportan tanto AppSocket como IPP.
Otros fabricantes de impresoras utilizan otros números de puertos para impresión directa TCP/IP. Puede que necesite averiguar cuál usar. El botón Opciones en el diálogo le permite configurar la exploración, incluyendo direcciones IP, puertos y tiempos de espera a utilizar.
Le advertimos de nuevo: sea cuidadoso para no ser confundido con un intruso en su red cuando utilice la técnica de exploración.
La parte más difícil es probablemente la «selección del modelo de impresora». Antiguamente la situación era complicada porque apenas si se podían encontrar controladores. Ahora es porque hay demasiados, muchos de ellos muy buenos, pero muchos que no funcionan.
Si dispone de una «base de datos» actual con controladores disponibles en su sistema, seleccione primero el fabricante en la parte izquierda de la ventana, y después el modelo en la derecha. Esta ventana partida muestra todos los PPDs encontrados por CUPS en el repositorio estándar de PPDs instalables. Este repositorio normalmente es /usr/share/cups/model/
. Si desea que su controlador sea encontrado automáticamente por CUPS y KDEPrint, coloquelo aquí.
En la siguiente pantalla verá una descripción del controlador seleccionado previamente. Esta descripción está extraida del PPD usado en este momento.
Para una impresora PostScript® real nunca intente instalar un PPD «Foomatic» o «Gimp-Print», incluso si se le ofrece. No estará satisfecho con él. En su lugar busque el PPD original del fabricante, preferiblemente el escrito para Windows® NT, y uselo.
Algunas distribuciones de Linux® suministran cualquier posible combinación de archivos de filtros PPD Ghostscript y «foomatic» para CUPS que pueden encontrar en la red. Muchos de ellos son inservibles. Se generaron hace un año cuando las miembros de www.linuxprinting.org hicieron sus primeros experimentos suministrando PPDs de terceras partes para CUPS. Aunque etiquetados como versiones «Alfa» en ese momento, comenzaron a tener vida propia y se pueden encontrar en diversos lugares de la red, haciendo un flaco favor a CUPS.
Si no está seguro cuales usar vaya a:
Y solicite ayuda. En un estadío posterior de la documentación las diferencias de los diferentes controladores y los modelos PPD aparecerán en http://kdeprint.sourceforge.net/. Esté atento.
A través del botón será capaz de recuperar cualquier PPD en cualquier parte de su sistema de archivos.
Configure su controlador ahora. La opción más importante es el tamaño predeterminado del papel. En muchos casos es «Carta». Si usted reside en un país donde se utiliza «A4» y no quiere que la primera página de prueba se atasque es el momento de impedirlo.
Está listo para iniciar una página de prueba. Pulse el botón .
La última pantalla le permite seleccionar que rótulos o páginas anunciadoras quiere utilizar para marcar el comienzo y final de cada trabajo de impresión en esa impresora. También puede seleccionar y deseleccionar los rótulos antes de imprimir en las opciones del diálogo.
Si necesita rótulos personalizados, cópielos a /usr/share/cups/banners/
para que estén disponibles. Pero deben ser archivos PostScript®.
La última pantalla le permite introducir el nombre de su nueva impresora.
El nombre debe comenzar por una letra y puede contener números y subrayados hasta un máximo de 128 caracteres. Cíñase a esta regla si desea evitar comportamientos erráticos de su demonio CUPS. Los nombres de las impresoras en CUPS no distinguen mayúsculas de minúsculas. Este es un requisito de IPP. De modo que, por ejemplo, los nombres DANKA_infotec
, Danka_Infotec
y danka_infotec
representan la misma impresora.
Este capítulo le ofrece algunas sugerencias sobre opciones de configuración que pueden no estar disponibles en KDEPrint desde el interfaz gráfico para CUPS.
Casi todas las propiedades y funciones más usadas proporcionadas por CUPS están soportadas en KDEPrint.
La administración de impresión está soportada: añadir, eliminar, modificar, configurar, probar desactivar, activar...
La administración de trabajos está soportada: cancelar, mantener, soltar, mover a una impresora diferente.
Opciones de impresión: para un control total tal y como se proporciona en CUPS.
Mucha información sobre el funcionamiento interno de CUPS está disponible a través del interfaz web, que siempre soportará CUPS. Funciona con cualquier navegador (sí, incluso con los de sólo texto). Simplemente vaya a http://localhost:631/ para iniciar. Allí encontrará un enlace a la documentación disponible de CUPS en formato HTML y PDF si usted es nuevo en CUPS.
CUPS es accesible a través de otros medios diferentes de KDEPrint: la línea de órdenes y el navegador son dos interfaces nativos de CUPS. Las muchas utilidades de la línea de órdenes agrupadas consiguen el mayor control posible sobre CUPS. El interfaz web es sólo un subconjunto de todas las opciones de configuración o control disponibles.
Esto también es cierto para KDEPrint. Generalmente, con el desarrollo de CUPS las nuevas propiedades se implementarán primero a través de la línea de órdenes. Asegúrese de comprobar las últimas versiones de las páginas de man para CUPS para mantenerse actualizado con las nuevas propiedades después de instalar una nueva versión.
Dependiendo de su método de actualización para CUPS, su archivo de configuración activo podría no ser reemplazado por uno nuevo, de modo que su nuevo y más potente demonio de CUPS podría no conocer las nuevas propiedades porque está leyendo el antiguo archivo de configuración.
Una lista completa de los archivos y páginas de manual disponibles debería venir con el manual del administrador de software de CUPS (http://localhost:631/sam.html#FILES). En el campo de URL/dirección de Konqueror introduzca man:/lpadmin
y man:/cupsd.conf
para encontrar información acerca de las órdenes más importantes y del archivo de configuracón. Como seguramente sepa, Konqueror puede mostrar páginas de manual de UNIX®. Desde allí podrá encontrar sugerencias más interesantes y enlaces a otra páginas de manual y de documentación.
Aquí hay un medio de encontrar qué páginas de man relacionadas con CUPS existen en su sistema:
kurt@transmeta:~ >
apropos
cups
cups-calibrate (8)- Herramienta de calibración de impresoras ESP lpstat (1) - Información de el estado de impresión cups cups-lpd (8) - recibir trabajos de impresión + informar del estado de la impresora a clientes lpd classes.conf (5) - archivo de configuración de clases para cups backend (1) - interfaces de transmisión de terminales de cups filter (1) - interfaces de filtros de conversión de archivos cups-polld (8) - demonio de muestreo de impresora de cups mime.types (5) - archivo de descripción de tipos mime para cups cupsd (8) - demonio de sistema de impresión común de unix lpadmin (8) - configurar impresoras cups y clases cupsd.conf (5) - archivo de configuración de servidor para cups mime.convs (5) - archivo de conversión de tipos mime para cups printers.conf (5) - archivo de configuración de impresora para cups mime.convs (5) - archivo de conversión de tipos mime para cups cups-polld (8) - demonio de monitorización de impresora de cups lpstat (1) - información de estado de impresión cups backend (1) - interfaces de transmisión de terminal de cups mime.types (5) - archivo de descripción de tipos mime para cups cupsd (8) - demonio de sistema de impresión común de unix lpadmin (8) - configurar impresoras cups y clases printers.conf (5) - archivo de configuración de impresora para cups cupsd.conf (5) - archivo de configuración de servidor para cups filter (1) - interfaces de filtros de conversión de archivos
Aquí tiene una serie de ejemplos de opciones que sólo están disponibles si utiliza la línea de órdenes.
Al instalar (o modificar) una impresora a través de la línea de órdenes, puede denegar o permitir el uso de esa impresora para ciertos usuarios:
lpadmin -p
HeidelbergDigimaster9110
-v
lpd:/10.160.16.99/mqueue
-u
allow:kurt,sylvi,hansjoerg
-E
-P
/home/kurt/PPDs/DVHV.ppd
Permitirá el uso de esta impresora (créame: muy estético y muy profesional) sólo para los tres usuarios mencionados y al mismo tiempo denegárselo al resto. Si otro usuario quiere imprimir en el DigiMaster a través del servidor CUPS, recibirá un mensaje de error junto con las líneas client-error-not-possible.
lpadmin -p
HeidelbergDigimaster9110
-v
lpd:/10.160.16.99/mqueue
-u
deny:tackat,boss,waba
-E
-P
/home/kurt/PPDs/DVHV.ppd
denegará el uso de esta misma impresora a los tres usuarios mencionados y al mismo tiempo permitirá el uso a los otros. Si el usuario «denegado» desea imprimir en el DigiMaster a través de este servidor CUPS, recibirá un mensaje de error junto con las líneas client-error-not-possible.
Sólo se puede utilizar una de las dos opciones, en este momento no hay soporte para disponer de una opción similar basada en grupos. Se implementará en el futuro.
Algunas veces desea poner cuotas a ciertas impresoras. Con cuotas puede establecer límites superiores para el número de páginas o la cantidad de datos a ser impresos durante un cierto periodo para una impresora.
Las cuotas se pueden establecer con la opción -o
, al instalar una impresora con la orden lpadmin, o después para una impresora ya existente. A continuación hay varias guías (que faltan en el momento de escribir en la documentación oficial de CUPS):
Con CUPS puede tener cuotas basadas en el número de páginas -y en el tamaño de los archivos- para cada impresora de forma individual.
Las cuotas se calculan para cada usuario individualmente (de modo que un conjunto de límites se aplica a todos los usuarios para la impresora en cuestión).
Las cuotas incluyen páginas de anuncios (si se utilizaran).
Ésto significa que usted puede limitar cada usuario a 20 páginas por día en una impresora cara, pero no puede limitar todos los usuarios excepto Pedro
o root
.
Las opciones job-k-limit
, job-page-limit
y job-quota-period
se pueden introducir al configurar una impresora.
job-quota-period
establece un intervalo de tiempo para cáculo de cuotas (los intervalos se determinan en segundos, de modo que un día es 60x60x24=86.400, una semana 60x60x24x7=604,800 y un mes 60x60x24x30=2.592.000 segundos).
Para forzar cuotas, el periodo de tiempo más al menos un job-limit debe ser diferente de cero.
El valor predeterminado de 0 para job-k-limit
especifica que no existe límite.
El valor predeterminado de 0 para job-page-limit
especifica que no existe límite.
El valor predeterminado de 0 para job-quota-period
especifica que el límite se aplica a todos los trabajos que se han impreso por un usuario que es todavía conocido por el sistema.
Se definen ejemplos que funcionan con límites de periodo de tiempo y uno o dos límites de trabajos de impresión.
lpadmin -p
danka_infotec_4850
-o
job-quota-period=604800
-o
job-k-limit=1024
Configura un límite de 1 MB (en total) para cada usuario de la impresora ya existente, danka_infotec_4850
, durante una semana.
lpadmin p
danka_infotec_4105
-o
job-quota-period=604800
-o
job-page-limit=100
Configura un límite de 100 páginas (en total) para cada usuario de la impresora, ya existente, danka_infotec_4105
durante una semana.
lpadmin -p
danka_infotec_P450
-o
job-quota-period=604800
-o
job-k-limit=1024
-o
job-page-limit=100
Configura un límite combinado de 1 MB (en total) y 100 páginas (en total) para cada usuario de la impresora, ya existente, danka_infotec_P450
durante una semana. El primer límite que se alcance será el que surta efecto.
NO funcionan, como sólo un periodo de tiempo o límite de trabajo definido.
lpadmin
-p
danka_infotec_P320
-o
job-quota-period=604800
lpadmin
-p
danka_infotec_FullColor
-o
job-page-limit=100
lpadmin
-p
danka_infotec_HiSpeed
-o
job-k-limit=1024
Hay varios modos diferentes de definir una impresora «en bruto». Una cómoda es utilizar la orden lpadmin. Simplemente no defina un archivo PPD para usar con dicha impresora y será una impresora en bruto:
lpadmin -p
Raw_Danka_infotec
-E
-v
lpd://10.160.16.137/PORT1
Las impresoras en bruto son aquellas que no modifican el archivo de impresión para transformalo en un formato diferente. Necesita esto por ejemplo al imprimir desde clientes Windows® a través de Samba usando un servidor CUPS para una impresora PCL: en ese caso el controlador de impresora de Windows® generaría el formato final de la impresora para la impresora de destino y filtrarlo utilizando los filtros de CUPS sólo estropearía el archivo. Bajo ciertas circunstancias (si desea asegurarse de que el archivo llega a la impresora «sin ser filtrado» por CUPS) «lpadmin sin un PPD» es práctico.
Esta sección del manual de KDEPrint depende de los comentarios de los lectores. Aquí se ofrece un pequeño comienzo.
Ningún sistema es perfecto. Aquí hay varios problemas en los que la gente cae frecuentemene.
La administración de las operaciones básicas está soportada (añadir/eliminar/modificar).
Cada usuario puede predefinir las impresoras que desea especificando la máquina y las colas de impresoras relacionadas. Las impresoras se almacenan según un criterio «por usuario». Este módulo está construido en torno la utilidad rlpr rlpr.
Módulo utilizado de forma predeterminada (por ejemplo en el primer inicio).
Módulo genérico que sólo permite enviar trabajos de impresión. No se soportan la administración de trabajos o de impresoras. Está hecho para trabajar en una gran variedad de entornos UNIX®: Linux®/LPR, HP-UX®, Solaris, IRIX®. También soporta algunas extensiones LPRng (como la ausencia del caracter de continuación \
en archivos printcap
).
Soporte sencillo (¿y antiguo?) para LPR. Hay un módulo LPRng en desarrollo y es probable que esté disponible para la versión 2.3.
Se está desarrollando un módulo LPRng para KDEPrint y es probable que esté disponible para KDE 2.3.
Este módulo permite especificar completamente la orden de impresión (como Netscape®). Con este motivo se añade una línea en el recuadro de impresión. Se puede utilizar en muchos casos, por ejemplo con un programa de impresión hecho por uno mismo.
Yo estoy contratado por Danka Deutschland GmbH, un proveedor y fabricante lider en sistemas de impresión digitales de alta velocidad en color y blanco y negro. Danka suministra hardware, software, servicios, mantenimiento. Los consumibles y las soluciones personalizadas están en su agenda de productos. Allí trabajo como ingeniero de sistemas. Entre las marcas disponibles Danka ofrece Heidelberg (antiguamente Kodak), Canon, Hewlett-Packard®, Hitachi, Infotec y EfI.
Mi relación con Linux® y la comunidad del software libre no es muy antigua. Cuando comencé a expermientar con Linux® a comienzos de 1999, mi mayor desilusión fue el pobre soporte existente para imprimir. Es cierto, conseguí que todas nuestra máquinas imprimieran impresiones en una sola cara, pero... ¿y la doble cara?. Y ¿taladrar la salida?, ¿Cómo hacer que funcionara el ordenado de copias, o el grapado, las cubiertas y muchas otras opciones de acabado estético que nuestras máquinas ofrecen a los clientes?. No había modo, al menos para mi que no soy experto.
Busqué una solución en Internet. Afortunadamente un poco más tarde, en Mayo de 1999, Mike Sweet, el desarrollador principal de CUPS, anunció el lanzamiento de la primera versión Beta de ese soberbio software de impresión. Después de probarlo supe que eso era lo que yo buscaba.
Lo siguiente que hice fue intentar que las distribuciones de Linux® se interesarán por esto. Créanme, fui más que tenaz. Ellos estaban convencidos de que ya disponían de la mejor solución existente para imprimir. Una de las razones era que ellos (y muchos desarrolladores de Linux®) nunca pensaron sobre como soportar un accesorio de doble cara para impresoras, porque nunca lo habían visto en sus mesas...
Finalmente, mis intentos para hacer que alguna publicación impresa se interesase por CUPS «se volvieron» contra mí, un editor me presionó para que escribiese una serie de árticulos sobre el tema. Y así fue cómo la gente empezó a llamarme por el apodo «Evangelista de CUPS». No me desprenderé de este apodo pronto, ni siquiera ahora que la gente de KDE me ha incluido en su plan de lanzamiento de versiones...
De cualquier modo, CUPS está haciéndose hueco en el mundo y puede que triunfe. Me siento orgulloso de haber apoyado y contribuído a ello desde casi el comienzo.
Le animo: incluso si algunos usuarios experimentados de Linux® se muestran escépticos sobre ello, e incluso si sus habilidades de programación son casi nulas (como las mías), hay muchas tareas, trabajos, ideas y talento con el que usted puede contribuir a la comunidad del software libre. Y no sólo en el proyecto KDE... ;-)
Deseo agradecer a...
En primer lugar a Mike Sweet por desarrolar CUPS.
Jean-Eric Cuendet por iniciar kups y qtcups, los predecesores de KDEPrint.
Michael Goffioul por hacer mucho trabajo difícil recientemente.
Martin Konold por pensar dos veces.
Sven Guckes por enseñarme unas pocas cosas acerca del arte de «sobrevivir en un terminal» (en caso de que KDE no esté disponible ;-) ).
... y muchos otros demasiado numerosos para mencionarlos que me ofrecieron bits y bytes de sus conocimientos.
y por último y no por ello menos importante: Tom Schwaller por animarme a «escribir la documentación».
KDEPrint ha sido desarrollado en un sistema utilizando CUPS 1.1.6. KDEPrint ha sido probado con otras versiones de CUPS y hasta la fecha no se conocen incompatibilidades. Durante la escritura de este manual ha salido CUPS 1.1.9 con nuevas prestaciones todavía no soportadas por KDEPrint. Por supuesto usted puede hacer uso de dichas prestaciones, pero necesitará puentear KDEPrint y utilizar las herramientas de línea de órdenes de CUPS o editar los archivos de configuración manualmente. El desarrollo de KDEPrint continuará y este manual pretende ser la mejor fuente de documentación para el ususario.
Derechos de autor de KDEPrint. 2001. Michael Goffioul (kdeprint AT swing.be)
.
Este programa está sujeto a los términos de la Licencia Pública General GNU.
Derechos de autor de la documentación. 2001. Kurt Pfeifle, (kpfeifle AT danka.de)
.
Esta documentación está sujeta a los términos de la Licencia de Documentación Libre GNU.
Traducido por Pablo de Vicente (pvicentea AT nexo.es)
.
Traducido por Miguel Revilla Rodríguez (yo AT miguelrevilla.com)
.
Traducido por Santiago Fernández Sancho (santi AT kde-es.org)
.
Would you like to make a comment or contribute an update to this page?
Send feedback to the KDE Docs Team