Common Unix Printing System

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
CUPS ist eine Weiterleitung auf diesen Artikel. Für Informationen zum gleichnamigen Spiel siehe Cups.
Common Unix Printing System
CUPS-Logo
Maintainer Apple Inc.
Entwickler Michael Sweet
Aktuelle Version 1.7.2
(10. Januar 2014)
Betriebssystem Unixoide Systeme
Kategorie Druckerserver
Lizenz GPL, LGPL (Freie Software)
www.cups.org

Common Unix Printing System (CUPS) ist ein freies Drucksystem, ein Daemon, der das Drucken unter den verschiedenen unixoiden Betriebssystemen ermöglicht.

CUPS wurde vom Unternehmen Easy Software Products entwickelt und kann sowohl unter der GPL als auch unter proprietären Lizenzen verwendet werden. Es wurde als Nachfolger von älteren Drucksystemen, wie beispielsweise LPD, entworfen.

Am 11. Juli 2007 gab Apple bekannt, Michael Sweet, den Hauptentwickler von CUPS, angestellt zu haben. Damit übernahm Apple auch die Rechte an CUPS.[1] Gleichzeitig wurde ESP Print Pro, das kommerzielle Produkt von Michael Sweet, welches auf CUPS aufbaut, eingestellt.

Architektur[Bearbeiten]

Skizze des Common Unix Printing Systems

CUPS besteht aus einer Client-Server-Architektur; das heißt, das Programm ist in einen Druck-Client und einen Druck-Server aufgeteilt: Der Druck-Client schickt die Druckaufträge, der Druck-Server erledigt das Drucken auf dem Rechner, an dem der Drucker angeschlossen ist.

Der Druckauftrag eines Clients wird an einen Scheduler gesendet, der die zu druckenden Daten durch ein Filtersystem in das portable PostScript-Format konvertiert. Diese Daten werden schließlich zu einem Backend gesendet, welches sie entweder auf dem entsprechenden Drucker druckt (und die PostScript-Daten dafür umwandelt) oder sie über ein Netzwerk an einen anderen CUPS-Server verschickt.

Der Hauptvorteil von CUPS gegenüber anderen Drucksystemen ist, dass es ein standardisiertes und modularisiertes System ist, welches eine Vielzahl von unterschiedlichen Daten auf dem Druckserver versteht (z. B. PDF-Dateien, PNG-Bilder, LaTeX-Texte). Mit einem solchen System ist plattformübergreifendes Arbeiten in heterogenen Netzwerken möglich. In Verbindung mit Samba lassen sich sogar CUPS-Dateien über einen virtuellen Spooler drucken, mit welchem Windows-Rechner kommunizieren können.

In einem CUPS-Server ist ein HTTP-Server standardmäßig integriert. Dies ermöglicht auf der einen Seite eine Konfiguration jedes Computers im Netzwerk des CUPS-Servers, auf der anderen Seite ist auch eine gewisse Benutzerfreundlichkeit durch ein ohne besondere Software nutzbares Steuerungssystem geschaffen (lediglich ein Browser ist notwendig). Das CUPS Web-Interface kann unter http://localhost:631 angesprochen werden.

Erweiterbarkeit[Bearbeiten]

Über CUPS-Backends (Backend-Filter zur Weiterverarbeitung der Daten) lässt sich CUPS mit Hilfe von eigenen Scripten anpassen. Einige Backend-Filter sind bereits mitgeliefert, wie smb zur Ansteuerung von Windows-Druckern via Samba, ipp für den Zugriff auf Warteschlangen anderer Hosts über das Internet Printing Protocol, pipe für das Weiterleiten des Druckauftrages an ein anderes Programm oder auch file für die Ausgabe in eine Datei. Des Weiteren gibt es pap für die Ausgabe auf AppleTalk-basierten Druckern z. B. via Netatalk oder Columbia AppleTalk Package (beides AppleTalk-Datei- und Drucker-Server).

Benutzerschnittstellen[Bearbeiten]

Neben dem bereits erwähnten Webserver-Frontend existiert eine Vielzahl von grafischen und konsolenbasierten Dienstprogrammen, mit welchen sich CUPS-Systeme auch über das Netzwerk steuern lassen.

  • GtkLP – ein grafisches Frontend für GNOME
  • KDEPrint ein grafisches Frontend für KDE bis KDE3
  • ESP Print Pro – ein grafisches Frontend von Easy Software Productions (Hersteller von CUPS)
  • Unter ZETA kann das Print_Kit auch auf ein CUPS-Subsystem zugreifen, und neben den ZETA Druckertreibern werden auch portierte CUPS-Treiber nebst entsprechenden PPD-Dateien unterstützt. So kommunizieren das Print_Kit und der Spooler über CUPS-Treiber mit den Druckern, die durch PPD-Dateien beschrieben sind.
  • Das Druckerdienstprogramm unter Mac OS X
  • Einzelne Linux-Distributionen haben eigene GUIs.
  • Für das Betriebssystem eComStation wird das System als eCups entwickelt. [2]

Kritik[Bearbeiten]

Mit Version 1.6 ließ Apple einige Funktionen entfernen, die für Linux-Systeme und Unix-Systeme von Bedeutung sind, da sie für Mac OS X nicht gebraucht werden. Dazu zählen diverse Filter zum Umwandeln verschiedener Text- und Bitmap-Formate in Postscript und eine Funktion, die zur Verfügung stehenden Drucker-Warteschlangen abfragen zu können.[3] Die Filterentwicklung wurde daraufhin vom Openprinting-Project übernommen, während die CUPS-eigene Funktionalität zur Erkennung von Druckerwarteschlangen schon seit einiger Zeit durch die Unterstützung des systemweiten Zeroconf-Dienstes überflüssig wurde. Mit Avahi steht auch eine Implementierung für Linuxsysteme zur Verfügung, so dass dies keine Funktionalitätseinschränkung mit sich bringt.

Literatur[Bearbeiten]

  • Edward Viesel: Drucken unter Linux. 2. Auflage. Bomots-Verlag, Saarbrücken 2009, ISBN 978-3-939316-60-2. Die ersten 25 Seiten als PDF

Weblinks[Bearbeiten]

 Commons: Common Unix Printing System – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise[Bearbeiten]

  1. http://www.heise.de/newsticker/meldung/92591
  2. http://svn.netlabs.org/ecups
  3. heise.de-Meldung CUPS 1.6 unterstützt Linux schlechter, vom 15. Februar 2012