Administración de Redes ADMINISTRACIÓN DE IMPRESORAS EN LINUX Profesor Eduardo Blanco Departamento de Computación y T. I. USB Sistemas de impresión en Linux LPD: tradicional (desde Unix BSD) ● LPRng: version mejorada de LPD (next generation) ● PDQ: version distribuida, más reciente ● CUPS: (Common UNIX Printing Systems). Desarrollado para ambientes heterogéneos. Portado a Linux (desplazó a LPRng!) ● Tipos de impresora Dependiendo de la conexión (serial, paralelo, red, USB), formato de datos: texto o PDL (Page Description Language) como PostScript y PCL PostScript (Adobe) es un standard de facto. Software genera PostScript. Impresoras modernas entienden PostScript; sino, se instala traductor PostScript -> formato impresora. Ej: ghostscript LPD printer spooler Controlado por demonio (/usr/sbin/lpd). Usuarios usan lpr (o lp), el cual se comunica con lpd vía el pipe /dev/printer, y usa /etc/printcap para determinar el spool directory lpd usa configuración en /etc/printcap Si impresora local, crea un hijo (fork) para enviar datos del archivo a la impresora (eventualmente aplicando filtros para convertir formatos) Si es remota, abre conexión y envía datos con formato apropiado Control de impresión lpr -Pprinter archivo lpq: muestra estado de la cola de impresión lprm: cancela impresión lpc: controla una impresora o cola Labores administrativas /etc/printcap Base de datos usada por LPD. Toda impresora debe estar registrada allí antes de usarse Cada impresora definida contiene alias e información de configuración sd: spool directory; lf: error log file; lp: dispositivo; af: accounting file; rm: máquina remota; rp: printer remoto; of: filtro de salida; if: filtro de entrada; mx: máximo tamaño de archivo; sh: elimina encabezados Añadir una impresora Tres escenarios Impresora local en puerto paralelo o serial Aceptar tareas de impresión lpd desde otras máquinas de la red Imprimir hacia un servidor de impresión lpd en la red Impresora local Agregar descripción impresora en /etc/printcap /dev/lp0 paralelo, /dev/ttyS0 serial deskjet|printer\ :mx#0:\ :sd=/var/spool/lpd/deskjet:\ :sh:\ :lp=/dev/lp0:\ Aceptar trabajos desde otras máquinas de la red Servidor: Configurar y probar impresora localmente En el archivo /etc/hosts.lpd, agregar nombres de las máquinas (clientes) desde donde se aceptan trabajos para imprimir Configurar impresora local Cliente: agregar entrada en /etc/printcap rdeskjet|rprinter:\ :lp=/var/spool/lpd/rdeskjet/.null:\ :rm=suma:rp=deskjet:mx#0:\ :sd=/var/spool/lpd/rdeskjet:\ Aceptar trabajos desde otras máquinas de la red (cont.) Crear directorio spool y el .null Probar (lpr, lpq, lp) > > > > > mkdir touch chown chgrp chmod /var/spool/lpd/rdeskjet /var/spool/lpd/rdeskjet/.null -R daemon /var/spool/lpd/rdeskjet -R daemon /var/spool/lpd/rdeskjet 775 /var/spool/lpd/rdeskjet Understanding the Common UNIX Printing System (CUPS) Provides new architecture for Linux printing Users browse network to find and print to networked printers and other devices System administrators manage printer definitions and print jobs across network Installed by default in Red Hat Linux and Fedora cupsd Main print server daemon Understanding the Common UNIX Printing System (CUPS) (continued) cupsd print server daemon Uses HTTP protocol Manages printers using web browser interface CUPS architecture uses network port 631 Start CUPS user interface http//localhost:631/ /etc/cups/cupsd.conf file specifies setting for each active server option Understanding the Common UNIX Printing System (CUPS) (continued) Understanding the Common UNIX Printing System (CUPS) (continued) Many printers are configured using PostScript Printer Description (PPD) file Manufacturers can easily create text-based configuration file Permits printer to be graphically configured using standard utilities CUPS class Group of printers to which user can submit print job First available printer within used to print job Managing Printing Printing policy Brief statement of rules describing: How printing resources can be used How printers should be managed lpc utility controls LPRng or CUPS printing Alternatives printing system Maps print command to different programs Based on which printing system in use Managing Printing (continued) Alternatives command lpr command and lpc command Symbolic links Using lpc Prevent new print jobs from being accepted by print queue Prevent print jobs from being sent to printer Cancel print job currently being printed See status of any printer Managing Printing (continued) lpq utility lists each print job in print queue with status information lprm command deletes print job from queue Graphical print management utilities Print Manager