Das Common Unix Printing System
Druck-O-Matic
CUPS ist das Drucksystem des Internet-Zeitalters. Unser Überblick zeigt, was damit derzeit möglich ist, und was hinter den Kulissen abläuft.
CUPS ist das Drucksystem des Internet-Zeitalters. Unser Überblick zeigt, was damit derzeit möglich ist, und was hinter den Kulissen abläuft.
Treue Leser des Linux-Magazins kennen das Common Unix Printing System (CUPS) bereits seit unserer Artikelreihe im Jahr 2000 [1]. Inzwischen sind jedoch die Entwicklung und die Akzeptanz von CUPS mit Riesenschritten vorangekommen. Es wird Zeit für eine Auffrischung und ein Update auf den neuesten Stand.
CUPS [2] implementiert das Internet Printing Protocol (IPP) [3] in Version 1.1. Es kann sowohl lokal als auch im Netzwerk den in die Jahre gekommenen Line Printer Daemon vollständig ablösen. Einige Linux-Distributionen wie Mandrake, Caldera, EasyLinux oder Connectiva installieren den LPD schon gar nicht mehr. Auch in aktuellen SuSE-Varianten kann CUPS inzwischen mit YaST konfiguriert werden.
Auf Einzelplatz-Systemen reizt CUPS alle individuellen Eigenschaften des vorhandenen Druckers aus, seine wahren Stärken kommen jedoch erst im Netzwerk zum Tragen. Dort kann auf jedem freigegebenen Drucker unter Nutzung all seiner gerätetypischen Optionen gedruckt werden, ohne dass auf dem Client ein Treiber installiert ist. Mehr noch, der Client erkennt selbständig, welche Drucker im Netz installiert sind, sofern diese an einem CUPS-Server hängen.
Herzstück von CUPS ist der Server-Daemon oder Scheduler cupsd, der viel mit einem herkömmlichen Webserver gemein hat. Er kann mit jedem Browser über den reservierten Port 631 angesprochen werden. Über diesen Port kommunizieren auch die Clients mit dem Server. Der Datenaustausch mit den am Server angeschlossenen Druckern jedoch kann auf vielerlei Wegen geschehen. Idealerweise verstehen diese selbst IPP, das ist jedoch erst bei etwa 200 Modellen der Fall. Gute Laserdrucker wie die in unserem Test werden wahrscheinlich eher das Appsocket-Protokoll beherrschen, freigegebene Drucker an Windows-Rechnern können mit Samba über SMB angesprochen werden. Für den "Rest" kommt LPD zum Einsatz. Die Kommunikation mit den Druckern über die genannten Protokolle erledigen Backends, die separat konfiguriert werden.
Wer auf Unix-Systemen druckt, kommt an Postscript nicht vorbei; CUPS ist da keine Ausnahme. Am einfachsten sind deshalb Postscript-fähige Drucker zu handhaben. Deren eingebaute Prozessoren verarbeiten im sehr rechenintensiven Raster Image Process (RIP) PS-Dateien zu Rasterdaten. Für Drucker, die kein Postscript verstehen, muss das ein Rechner erledigen.
In der Druckvorstufe stehen oft dedizierte RIP-Server. Im Firmennetz übernimmt der Printserver diese Aufgaben mit und sollte deshalb über ausreichend Rechenleistung verfügen, falls wirklich regelmäßig mit nicht postscriptfähigen Druckern gearbeitet wird. CUPS ist jedoch flexibel genug, um unter Umständen auch das Aufbereiten der Druckdaten auf dem Client zu erlauben. Dann ist jedoch ein wesentlicher Vorteil dahin; der Client braucht hierfür selbstverständlich eigene Treiber. Die Eigenschaften jedes Druckermodells sind in einer Postscript Printer Description (PPD) im ASCII-Format festgelegt
Alle Rezensionen aus dem Linux-Magazin
Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...