Inhaltsverzeichnis
In der langen Entwicklungsgeschichte von Unix gibt es zwei bedeutende Drucksysteme, Berkeley Line Printer Daemon („ lpd“) und AT&T Line Printer System. Im Laufe der Jahre gab es einige Alternativen zu diesen Systemen (beispielsweise LPRng), doch an den grundlegenden Funktionen hat sich kaum etwas geändert.
Das betagte Drucksystem führte aufgrund der begrenzten Funktionalitäten zu einigen Problemen, und so begannen einige Entwickler, eigene Erweiterungen in die Programme einzubauen, ohne das Problem grundsätzlich zu lösen.
Von der Firma Easy Software Products wurde CUPS (Common UNIX Printing System) entwickelt und unter der GPL (bzw. LGPL für die API Library) freigegeben. CUPS benutzt das Protokoll IPP (Internet Printing Protocol) und bietet die von System V und Berkeley gewohnten Kommandozeilen-Tools. Ein Umstieg auf CUPS lohnt sich, probieren Sie es aus.
Natürlich besteht immer noch die Möglichkeit, auch die „klassischen“ Drucksysteme einzusetzen. Zur Konfiguration des klassischen Drucksystems stehen verschiedene Programme zur Verfügung.
Historisch gesehen stammen die bisherigen Drucksysteme unter Unix entweder aus der Familie der BSD-Systeme (LPD, definiert durch RFC 1179) oder aus dem AT&T-Lager. Beide Drucksysteme wurden in den 70er Jahren entworfen und sind für die Anforderungen der damaligen Drucktechnik (Zeilendrucker/Nadeldrucker) ausgelegt. Von den verschiedenen Herstellern kommerzieller Unix-Varianten wurden gelegentlich Erweiterungen eingebracht.
Natürlich gab es auch einige Entwicklungen, die versuchten, die etablierten Drucksysteme zu ersetzen. Hier sind LPRng, Palladin und PLP zu nennen. Leider hat keiner dieser Ansätze grundlegende Änderungen oder Verbesserungen gebracht.
In den letzten Jahren gab es diverse Versuche, eine neue Standard-Schnittstelle zu definieren, unter anderem den Entwurf zum POSIX-Standard, der vom „Institute of Electrical and Electronics Engineers, Inc.“ (IEEE, Nr. IEEE-1387.4) herausgegeben wurde, sowie das „Internet Printing Protocol“ (IPP), entwickelt von der „Internet Engineering Task Force“ (IETF) durch die „Printer Working Group“ (PWG, IETF-IPP). Der POSIX-Standard definiert einheitliche Kommandozeilen-Werkzeuge, ebenso wie eine C-Schnittstelle zur Druckerverwaltung und zur Verwaltung der Druckaufträge.
Das „Internet Printing Protocol“ definiert Erweiterungen zum Protokoll HTTP (HyperText Transport Protocol 1.1 [RFC2616]), um das Drucken auf Netzwerkdruckern zu ermöglichen. IPP/1.0 wurde von der IETF als experimenteller Request for Comments (RFC) im Oktober 1999 akzeptiert. Seitdem entwickelte die Printer Working Group eine erweiterte Spezifikation für die Version IPP/1.1, die von der IETF als empfohlener Standard akzeptiert wurde. Anders als der POSIX-Standard erfreut sich IPP einer weit reichenden Unterstützung durch die Industrie, und es scheint sich als Netzwerk-Drucklösung für alle Betriebssysteme durchzusetzen.
CUPS benutzt IPP/1.1, um ein umfassendes und modernes Drucksystem für Unix-Systeme mit einer weit reichenden Unterstützung für moderne Drucker und Protokolle zu bieten. Natürlich bleibt die Kompatibilität zu den bestehenden Anwendungen erhalten. CUPS ist Freie Software und wird unter der GNU General Public License und der GNU Lesser General Public License zur Verfügung gestellt.
Folgende Debian-Pakete, die mit CUPS im Zusammenhang stehen, sind verfügbar:
cupsys - Common UNIX Printing System - Server
cupsys-bsd - Common UNIX Printing System - BSD-Kommandos
cupsys-client - Common UNIX Printing System - System-V-Kommandos
qtcups - Qt-basierte Administration für CUPS
cupsys-driver-gimpprint - gimp-print-Druckertreiber für CUPS
gtklp - GTK-basierte Administration für CUPS
kups - KDE-basierte Administration für CUPS
Es gibt noch einige weitere Pakete, die von den genannten abhängen; hauptsächlich sind dies Libraries.
Nach der Installation der gewünschten Pakete ist CUPS wie gewohnt bereits so gut wie einsatzbereit. Sie sollten aber noch den administrativen Zugriff erlauben. Hierzu wurde eine Gruppe „lpadmin“ eingerichtet, zu der die Benutzer hinzugefügt werden können, die administrative Rechte am Drucksystem haben sollen.
In der Grundeinstellung erlaubt die Konfiguration aus Sicherheitsgründen lediglich
Verbindungen vom lokalen System. Diese Einstellung kann in der Datei /etc/cups/cupsd.conf
geändert werden. Am Ende dieser
Datei finden sich die Zugriffsbeschränkungen. Achten Sie darauf, den Zugriff nur von
Systemen zu erlauben, denen Sie vertrauen, oder aktivieren Sie eine
Authentifizierung.
Die CUPS-Pakete beinhalten Treiber für HP LaserJet und DeskJet, Epson Stylus Color sowie Stylus Photo Drucker.
Sie können Samba zur Zusammenarbeit mit CUPS bewegen, um CUPS-Drucker den Windows-Clients im Netz zur Verfügung zu stellen.
Hierzu gibt es zwei Möglichkeiten.
Samba benutzt das System-V-Drucksystem. Hierzu muss die Samba-Konfiguration
(in /etc/samba/smb.conf
) wie folgt ergänzt
werden:
[global] printing = sysv printcap name = lpstat [printers] lpq command = /usr/bin/lpstat %p lprm command = /usr/bin/cancel %p-%j print command = /usr/bin/lp -d%p -oraw %s ; /bin/rm -f %s
Damit dies funktioniert, muss das Paket cupsys-client
installiert werden.
Alternativ unterstützen aktuelle Samba-Versionen direkt das Drucken zu einem CUPS-System. Auch hierzu muss an der Samba-Konfiguration etwas verändert werden.
[global] printing = cups printcap name = /etc/printcap.cups
CUPS unterstützt das „Browsing“ über Broadcast-Requests, um andere CUPS-Server und -Drucker im Netz zu finden und diese den Clients zur Verfügung zu stellen. Auch diese Funktion ist normalerweise ausgeschaltet. Wenn diese Funktion aktiviert wird, kann dies dazu führen, dass Dial-on-demand-Verbindungen bei einem Broadcast aktiviert werden. Dies kann zu ungewollt hohen Online-Kosten führen. Wenn Sie diese Funktion aktivieren, achten Sie darauf, dass Sie die Broadcast-Adresse entsprechend setzen.
Wenn Sie das Kommando enable
aus dem Paket cupsys-client
benutzen, kann es zu Problemen mit
dem gleichnamigen Befehl aus der bash
kommen. Diese Probleme können umgangen
werden, wenn Sie das Kommando cupsenable
benutzen, das sich genauso verhält. Um
die Konsistenz zu waren, sind ebenfalls die Kommandos cupsdisable
, cupsaccept
und cupsreject
verfügbar.
Wie die meisten anderen Drucksysteme wurde für CUPS ebenfalls ein zentraler Prozess geschaffen, der die Druckaufträge verwaltet, administrative Befehle entgegennimmt und Statusinformationen weitergibt. Die Grafik zeigt die grundlegende Organisation von CUPS.
Der CUPS-Scheduler ist ein zu HTTP/1.1 kompatibler Server, der einerseits die Druckaufträge entgegennimmt, aber auch eine webbasierte, grafische Administrationsoberfläche zur Verfügung stellt. Letztere bietet neben Verwaltungsfunktionen auch solche zum Überwachen des CUPS-Drucksystems.
Der Scheduler verwaltet auch eine Liste der verfügbaren Drucker im Netz und organisiert die Verwaltung der benötigten Filter und Backends für die verschiedenen Drucker.
Die Konfigurationsdateien teilen sich in folgende Typen auf:
HTTP-Server-Konfiguration
Drucker- und Klassen-Definitionen
MIME-Typ- und Konvertierungsinformationen
PPD-Dateien („PostScript Printer Description“)
Die Konfiguration des HTTP-Servers für CUPS ähnelt sehr der Konfiguration des Apache-Webservers. Hier werden die Zugriffe und Eigenschaften des Servers definiert.
Die Drucker- und Klassenbeschreibungen beschreiben die verfügbaren Drucker und Klassen. Druckerklassen sind Gruppen von Druckern. Druckjobs, die an eine Klasse geschickt werden, werden auf dem ersten verfügbaren Drucker im Round-Robin-Prinzip gedruckt.
In der Liste der MIME-Typen finden sich alle unterstützten MIME-Typen (zum Beispiel „text/plain“, „application/postscript“ usw.) sowie einige „Magic Rules“, um den Typ einer Datei zu bestimmen. Diese werden vom HTTP-Server benutzt, um den „Content-Type“ für „GET-“ und „HEAD“-Anfragen zu bestimmen. Weiterhin benutzt der IPP-Handler die MIME-Typen ebenfalls zur Bestimmung der Dateitypen.
In den Konvertierungsinformationen finden Sie die verfügbaren Filter. Filter werden benutzt, um die von einem Programm kommenden Daten in für den Drucker verständliche Daten umzuwandeln.
Die PPD-Dateien beschreiben die Fähigkeiten eines Druckers; dies beschränkt sich nicht auf Postscript-Drucker. PPD-Dateien für Nicht-Postscript-Drucker beeinhalten zusätzliche Filterfunktionen durch „cupsFilter“, um diese Drucker optimal zu unterstützen.
CUPS bietet die von System-V- und Berkley-Unix-Versionen bekannten Befehle für
Druckaufträge und Statusabfragen. Die Kommandos „lpstat“ und „lpc
status“ zeigen auch Informationen über Netzwerkdrucker (printer@server
), wenn das „Browsing“
aktiviert ist.
Die System-V-Administrationskommandos können benutzt werden, um Drucker und
Klassen zu verwalten. Das Berkeley-Tool lpc
wird nur im „Read-only“-Modus
unterstützt.
Ein Filter-Programm liest Daten von der Standardeingabe oder aus einer Datei, wenn ein Dateiname angegeben wird. Alle Filter müssen einen gemeinsamen Befehlssatz unterstützen, wie zum Beispiel den Namen des Druckers, die Job-ID, einen Benutzernamen, einen Job-Titel, die Anzahl der gewünschten Kopien und weitere Druckoptionen. Alle Ausgaben werden auf die Standardausgabe geschickt.
Filter sind für die verschiedensten Dateiformate verfügbar und können bei Bedarf verknüpft werden, um das gewünschte Ergebnis zu erzielen.
Für die Administration von CUPS stehen dem Administrator unterschiedliche Frontends zur Verfügung. Neben den klassischen, kommandozeilenbasierten Hilfsprogrammen bietet sich auch eine webbasierte Oberfläche an.
Jeder unter CUPS benutzte Drucker wird über ein der Hardware entsprechendes Device angesprochen. Devices unter CUPS werden als URIs („Uniform Resource Identifiers“) bezeichnet, ähnlich wie URLs („Uniform Resource Locators“), die Sie aus Ihrem Webbrowser kennen. Der erste parallele Port unter Linux würde der URI
parallel:/dev/lp1
entsprechen.
Eine komplette Liste aller auf Ihrem System gefundenen Devices kann mit
dem Kommando
lpinfo -v
angezeigt
werden:
surimi:~# lpinfo -v file file network socket network http network ipp network lpd direct parallel:/dev/lp1 serial serial:/dev/ttyS1?baud=115200 serial serial:/dev/ttyS2?baud=115200 direct usb:/dev/usb/lp0 network smb
Das erste Wort jeder Zeile beschreibt den Typ der Schnittstelle, danach folgt die URI oder eine andere Zugriffsmethode.
Weiterhin gehört zu jedem unter CUPS eingerichteten Drucker eine so genannte PPD-Datei („PostScript Printer Description“), die die Eigenschaften des Druckers beschreibt. PPD-Dateien werden sowohl für PostScript- als auch für Nicht-PostScript-Drucker verwendet.
Um einen Drucker hinzuzufügen, können Sie das Kommando lpadmin -p
benutzen. Die komplette Syntax zu
diesem Kommando lautet:
lpadmin -p <printer> -E -v <device> -m <ppd>
Um beispielsweise einen HP-Deskjet-Drucker, der an der parallelen Schnittstelle angeschlossen ist, hinzuzufügen, kann das Kommando
lpadmin -p DeskJet -E -v parallel:/dev/lp1 -m deskjet.ppd
benutzt werden. Hier gleich noch ein Beispiel für einen HP-LaserJet-Drucker, der über einen Netzwerkanschluss (JetDirect) verfügt und dem die IP-Adresse 11.22.33.44 zugewiesen wurde:
lpadmin -p LaserJet -E -v socket://11.22.33.44 -m laserjet.ppd
Eine Übersicht über die verfügbaren PPD-Dateien und darüber, welche Drucker sich mit diesen ansteuern lassen, finden Sie unter file:///usr/share/doc/cupsys/online-docs/sam.html, wenn CUPS bereits auf Ihrem System installiert ist. Diese Liste enthält nur Druckertreiber, die zum Standardumfang von CUPS gehören; wenn Sie weitere Treiber installiert haben, tauchen diese nicht in der Dokumentation auf.
Zur Veränderung von Druckern von der Kommandozeile aus ist ebenfalls das
Kommando lpadmin
geeignet.
Die Syntax lautet:
lpadmin -p <printer> <options>
Als weitere Optionen können folgende angegeben werden:
-c class Fügt den Drucker der genannten Gruppe (Klasse) hinzu. Wenn diese Gruppe nicht existiert, wird sie erzeugt.
-i Interface Kopiert das benannte Interface-Skript zum Drucker. Interface-Skripts werden ausschließlich von System-V-Druckertreibern benutzt. Da hierbei alle anderen Filter deaktiviert werden, sollte dieses Verfahren nur benutzt werden, wenn kein anderer Treiber zur Verfügung steht.
-m model Bezeichnet den
Standard-Druckertreiber, normalerweise eine PPD-Datei. Eine
Liste aller verfügbaren Modelle kann mit dem Kommando lpinfo -m
angezeigt werden. Wenn
das Paket cupsys-driver-gimpprint
installiert wurde, steht eine deutlich größere Anzahl von
Druckertreibern zur
Verfügung.
surimi:~# lpinfo -m bjc-30.ppd.gz CANON BJC 30, CUPS+GIMP-print v4.1.7 bjc-50.ppd.gz CANON BJC 50, CUPS+GIMP-print v4.1.7 bjc-55.ppd.gz CANON BJC 55, CUPS+GIMP-print v4.1.7 bjc-80.ppd.gz CANON BJC 80, CUPS+GIMP-print v4.1.7 bjc-85.ppd.gz CANON BJC 85, CUPS+GIMP-print v4.1.7 bjc-1000.ppd.gz CANON BJC 1000, CUPS+GIMP-print v4.1.7 bjc-2000.ppd.gz CANON BJC 2000, CUPS+GIMP-print v4.1.7 bjc-3000.ppd.gz CANON BJC 3000, CUPS+GIMP-print v4.1.7 bjc-4300.ppd.gz CANON BJC 4300, CUPS+GIMP-print v4.1.7 bjc-4400.ppd.gz CANON BJC 4400 photo, CUPS+GIMP-print v4.1.7 bjc-6000.ppd.gz CANON BJC 6000, CUPS+GIMP-print v4.1.7 bjc-6100.ppd.gz CANON BJC 6100, CUPS+GIMP-print v4.1.7 bjc-6200.ppd.gz CANON BJC 6200, CUPS+GIMP-print v4.1.7 bjc-6500.ppd.gz CANON BJC 6500, CUPS+GIMP-print v4.1.7 ... pcl-3.ppd.gz HP LaserJet III series, CUPS+GIMP-print v4.1.7 laserjet.ppd HP LaserJet Series CUPS v1.1 pcl-P1000.ppd.gz HP PhotoSmart P1000, CUPS+GIMP-print v4.1.7 pcl-P1100.ppd.gz HP PhotoSmart P1100, CUPS+GIMP-print v4.1.7 lexmark-3200.ppd.gz LEXMARK 3200, CUPS+GIMP-print v4.1.7 lexmark-4076.ppd.gz LEXMARK 4076, CUPS+GIMP-print v4.1.7 lexmark-z31.ppd.gz LEXMARK Z31, CUPS+GIMP-print v4.1.7 lexmark-z52.ppd.gz LEXMARK Z52, CUPS+GIMP-print v4.1.7 okidata9.ppd OKIDATA 9-Pin Series CUPS v1.1 okidat24.ppd OKIDATA 24-Pin Series CUPS v1.1
-r class löscht einen Drucker aus der Gruppe. Wird der letzte Drucker einer Gruppe gelöscht, so wird auch die Gruppe gelöscht.
-v device-uri Setzt die Gerätedatei für die Kommunikation mit dem Drucker. Wenn für diesen Drucker bereits ein Druckjob anliegt, so wird dieser neu gestartet und an das neue Device gesendet.
-D info Hier kann die Beschreibung für diesen Drucker angegeben werden. Beispielsweise „Drucker im Büro Hr. Torvalds“.
-E
„Enable“ Aktiviert den Drucker. Diese Option hat
die gleichen Folgen wie die Kommandos enable
(1) und accept
(8).
-L location Beschreibt den Standort des Druckers.
-P ppd-file Name der zu verwendenden PPD-Datei.
Um einen Drucker zu löschen, wird die Option -x
benutzt. Um den Drucker
„LaserJet“ zu löschen, kann folgendes Kommando benutzt werden:
lpadmin -x LaserJet
Der Standarddrucker wird mit der Option -d
(default) gesetzt.
lpadmin -d LaserJet
Die Kommandos enable
und disable
starten und stoppen den angegebenen
Drucker.
enable LaserJet disable LaserJet
Gestoppte Drucker akzeptieren weiterhin Druckaufträge. Diese werden jedoch erst gedruckt, nachdem der Drucker wieder aktiviert wurde. Dies gibt dem Administrator die Chance, ein Druckerproblem zu lösen, ohne dass Druckaufträge verloren gehen.
accept LaserJet reject LaserJet
Mit diesen Kommandos werden alle aufgelaufenen Druckaufträge gedruckt und weitere Druckaufträge nicht angenommen. Wenn der Drucker längere Zeit nicht zur Verfügung steht, kann er so deaktiviert werden.
Die Administration von CUPS kann auch komplett über ein Webinterface erfolgen. Hierzu wird ein Webbrowser benötigt. CUPS benutzt den Port 631 für das Konfigurationsinterface. Aus Sicherheitsgründen lässt sich das Webinterface zunächst nur von lokalen Rechnern aus benutzen. Unter der URL http://localhost:631 wird das Webinterface zur Verfügung gestellt.
Alle Bereiche, über die eine Veränderung der Konfiguration vorgenommen werden kann, sind nur mit einem Usernamen und dem passenden Passwort erreichbar. In jedem Fall kann die Administration als Superuser (root) erfolgen.
Die grafische Administration gliedert sich in folgende Bereiche, die über die Startseite oder von jeder Seite aus über die Navigationsleiste am oberen Bildschirmrand erreicht werden können:
(Administration) bietet eine Übersicht über die Bereiche „Classes“, „Jobs“ und „Printers“ usw.
(Classes) Hier können Druckergruppen definiert werden. Wenn ein Druckauftrag an eine Gruppe gesendet wird, so wird der erste verfügbare Drucker dieser Gruppe den Auftrag bearbeiten. Dies ist in größeren Firmen sinnvoll; so wird vermieden, dass auf einen Druckauftrag lange gewartet werden muss.
(Help) An dieser Stelle finden Sie Verweise auf die englische Dokumentation.
(Jobs) Hier können noch anstehende Druckaufträge verwaltet werden.
(Printers) Sicher der wichtigste Punkt: die Verwaltung der Drucker. Hier können Drucker hinzugefügt oder verändert werden.
In diesem Beispiel wurde bereits ein Drucker eingerichtet. Normalerweise ist diese Seite nach der Installation von CUPS leer. Durch einen Klick auf „Add Printer“ kann ein neuer Drucker zum System hinzugefügt werden.
Zunächst sind für den Drucker ein Name, der Standort und eine Beschreibung anzugeben.
Wenn der Drucker lokal an der parallelen Schnittstelle des Rechners angeschlossen ist, wählen Sie hier „Parallel Port #1“ aus.
CUPS bietet aber noch weitere Möglichkeiten, um Daten auf Druckern auszugeben, die nicht lokal installiert sind.
http druckt direkt zum CUPS-Port eines CUPS-Servers.
ipp druckt über das IPP (Internet Printing Protocol).
ipd druckt über eine Queue des IPP (Internet Printing Protocol).
smb druckt auf freigegebenen Druckern, die
an Windows-Systemen angeschlossen sind. Hierzu muss zusätzlich
das Paket smbclient
installiert sein, da das
Programm smbspool
benötigt wird.
Hier ist der Hersteller des Druckers anzugeben.
An dieser Stelle erfolgt die genaue Auswahl des geeigneten Druckertreibers. Versuchen Sie möglichst genau den richtigen Treiber auszuwählen.
Damit ist die Einrichtung eines Druckers grundsätzlich abgeschlossen. Es sollte trotzdem noch ein Blick auf die weiteren Parameter geworfen werden.
Hier sollten zumindest die Werte für die Papiergröße und die Druckauflösung angepasst werden. Je nach verwendetem Drucker und Treiber stehen hier noch weitere Optionen zur Verfügung. Weiterhin kann für jeden Druckauftrag eine Start- oder Endeseite gedruckt werden.
Verweist auf die Webseite http://www.cups.org.
Die Konfigurationsdateien für CUPS finden Sie unter /etc/cups/
. Normalerweise ist es nicht notwendig,
an diesen Dateien etwas zu verändern; dennoch gebe ich Ihnen hier einen
Überblick über die möglichen Einträge in der Datei /etc/cups/cupsd.conf
.
Wenn Sie bereits mit der Konfiguration des Apache-Webservers vertraut sind, werden Sie auch mit dieser Datei schnell zurechtkommen.
ServerName myhost.domain.com
-
Der Name des Servers; die Voreinstellung ist der Hostname des
Systems.
ServerAdmin root@your.domain.com
- Die E-Mail-Adresse des Administrators; die Voreinstellung ist root@<hostname>
.
AccessLog
/var/log/cups/access_log
- Pfad und Dateiname der
Logdatei für die Zugriffe auf den Server. Wenn kein führendes „
/
“-Zeichen angegeben ist, wird die Datei relativ zum
Startverzeichnis des Servers (ServerRoot) abgelegt. Wird hier syslog
angegeben, so werden die
Daten an den Syslog-Dämon geschickt.
DataDir /usr/share/cups
- Das
Verzeichnis mit den Datendateien für CUPS.
DefaultCharset utf-8
- Benutzter
Zeichensatz.
DefaultLanguage en
- Benutzte
Sprache.
DocumentRoot /usr/share/cups/doc
- Das Verzeichnis für die HTML-Dokumente.
ErrorLog /var/log/cups/error_log
- Pfad und Dateiname der Logdatei für die Fehlermeldungen des
Servers. Wenn kein führendes „
/
“-Zeichen angegeben ist, wird die Datei relativ zum
Startverzeichnis des Severs (ServerRoot) abgelegt. Wird hier syslog
angegeben, so werden die
Daten an den Syslog-Dämon geschickt.
FontPath /usr/share/cups/fonts
-
Das Verzeichnis für die Schriften.
LogLevel info
- Kontrolliert, wie
viele Informationen in das ErrorLog geschrieben werden. Folgende
Werte sind
erlaubt:
debug2 Log everything. debug Log almost everything. info Log all requests and state changes. warn Log errors and warnings. error Log only errors. none Log nothing.
MaxLogSize 0
- Die maximale Größe
jeder Logdatei, ab der die Datei umkopiert und gepackt wird. Die
Voreinstellung ist 1048576 (1 Mbyte). Die Angabe 0 deaktiviert
diese Funktion.
PageLog /var/log/cups/page_log
-
Pfad und Dateiname der PageLog-Datei. Wenn kein führendes „
/
“-Zeichen angegeben ist, wird die Datei relativ zum
ServerRoot abgelegt. Wird hier syslog
angegeben, so werden die
Daten an den Syslog-Dämon geschickt.
PreserveJobHistory Yes
-
Bestimmt, ob die Druckauftragsliste gespeichert werden
soll.
PreserveJobFiles No
- Bestimmt,
ob die Druckaufträge gespeichert werden sollen.
AutoPurgeJobs No
- Entfernt
automatisch Druckjobs, die durch Quota begrenzt werden.
MaxJobs 0
- Maximale Anzahl der
Jobs (aktive und abgeschlossene), die im Speicher gehalten
werden. 0 bedeutet kein Limit.
Printcap /etc/printcap
- Pfad und
Dateiname zur verwendeten Printcap. Keine Angabe unterdrückt die
Erzeugung der Datei.
RequestRoot /var/spool/cups
- In
diesem Verzeichnis werden die Druckdateien
zwischen-gespeichert.
RemoteRoot remroot
- Der Name des
Benutzers, der ohne Autorisierung Zugriff von einem anderen
System erhalten kann.
ServerBin /usr/lib/cups
- Das
Verzeichnis für die benötigten Programme.
ServerRoot /etc/cups
- Das
Root-Verzeichnis für die Programme.
ServerCertificate
/etc/cups/ssl/server.crt
- Datei mit dem
Serverzertifikat.
ServerKey
/etc/cups/ssl/server.key
- Datei mit dem
Serverkey.
User lp
und Group sys
- Benutzer und Gruppe,
unter denen der Server bei einem externen Kommando läuft.
RIPCache 8m
- Speicher je RIP
(Raster Image Processor), der für das Zwischenspeichern von
Grafiken zur Verfügung steht. Der Wert kann jede ganze Zahl
sein, gefolgt von „k“, „m“ oder
„g“ für Kilo-, Mega- oder Gigabyte.
TempDir /var/spool/cups/tmp
- Das
Verzeichnis für temporäre Dateien. Dieses Verzeichnis muss für
den oben genannten Benutzer beschreibbar sein.
FilterLimit 0
- Maximale Anzahl
von Filtern je Druckauftrag. Ein gewöhnlicher Druckjob benötigt
mindestens einen Wert von 200; der Wert 0 bedeutet kein
Limit.
Port 631
- Port, auf dem der
Daemon horcht.
Listen hostname
- Adresse, auf
der der Daemon horcht.
HostNameLookups On
- Aktivieren
der Nameserver-Abfragen bei Zugriffen.
KeepAlive On
- Aufrechterhalten
der Verbindung.
KeepAliveTimeout 60
- Zeit, nach
der KeepAlive-Verbindungen beendet werden.
MaxClients 100
- Maximale Anzahl
der gleichzeitigen Client-Verbindungen.
MaxRequestSize 0
- Maximale Größe
der HTTP-Anfragen und der Druckdateien. 0 bedeutet kein
Limit.
Timeout 300
- Zeitintervall in
Sekunden, nach dessen Ablauf eine Anfrage ungültig wird.
Browsing On
- Aktiviert die
netzwerkweiten Druckerinformationen.
BrowseAddress x.y.z.255
- Die
Broadcast-Adresse für das Browsing.
BrowseShortNames Yes
- Benutzung
von Kurznamen für die Drucker, beispielsweise
„laserjet“ statt
„laserjet@host.domain.de“.
BrowseAllow
und BrowseDeny
- Definieren die
Zugriffsrechte für auf den Server zugreifende Browser. Erlaubt
sind folgende Notationen für die
Adressen:
All None *.domain.com .domain.com host.domain.com nnn.* nnn.nnn.* nnn.nnn.nnn.* nnn.nnn.nnn.nnn nnn.nnn.nnn.nnn/mm nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
BrowseInterval 30
- Zeit zwischen
zwei Aktualisierungen.
BrowseOrder allow,deny
oder BrowseOrder deny,allow
-
Reihenfolge der erlaubten/verweigerten Zugriffe.
BrowsePoll address:port
- Server,
die nach Druckern befragt werden sollen.
BrowsePort 631
- Port, auf dem
die Abfrage erfolgen soll.
BrowseRelay source-address
destination-address
- Weiterleiten von
Anfragen.
BrowseTimeout 300
- Wenn
innerhalb der angegebenen Zeit keine Antwort von einem Drucker
kommt, so wird dieser aus der Liste entfernt.
ImplicitClasses On
-
Druckaufträge, die an einen Drucker geschickt werden, unter
dessen Namen ebenfalls eine Druckergruppe vorhanden ist, werden
an die Gruppe gesendet.
SystemGroup lpadmin
- Gruppenname
für die administrativen Aufgaben.
AuthType Basic
- Die zu
verwendende Autorisation; diese kann auf die
Werte
None - Perform no authentication Basic - Perform authentication using the HTTP Basic method. Digest - Perform authentication using the HTTP Digest method.
eingestellt werden.
AuthClass System
-
Autorisationsgruppe; diese kann die Werte
„Anonymous“, „User“ oder
„System“ (für die Benutzer in der Gruppe
„SystemGroup“) annehmen.
AuthGroupName System
- Name der
Gruppe für die zu authentifizierende Gruppe.
Die Zugriffe auf die verschiedenen zur Administration von CUPS benötigten Verzeichnisse können (wiederum ähnlich der Apache-Konfiguration) beschränkt werden. Hierzu stehen folgende Direktiven zur Verfügung:
Allow
und Deny
- Mit diesen Direktiven
können Zugriffe erlaubt oder verboten werden. Die Reihenfolge
lässt sich durch die Direktive Order
beeinflussen.
Für beide Direktiven sind folgende Notationen erlaubt:
All None *.domain.com .domain.com host.domain.com nnn.* nnn.nnn.* nnn.nnn.nnn.* nnn.nnn.nnn.nnn nnn.nnn.nnn.nnn/mm nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
Um die Notationen, die host
oder domain
enthalten, benutzen zu
können, muss die Option HostNameLookups
aktiviert
sein.
Encryption
- Hierfür sind
folgende Werte
möglich:
Always - Always use encryption (SSL) Never - Never use encryption Required - Use TLS encryption upgrade IfRequested - Use encryption if the server requests it
Location /
- Für Location können
die verschiedenen Verzeichnisse angegeben werden. Zu jedem
Eintrag können die oben beschriebenen Werte benutzt
werden.
<Location /classes> # # You may wish to limit access to printers and classes, either with # Allow and Deny lines, or by requiring a username and password. # Order Deny,Allow Deny From All Allow From 127.0.0.1 </Location>
In diesem Beispiel werden die Zugriffe auf das Verzeichnis /classes
auf dem lokalen Rechner
beschränkt.
© 1999-2007 Frank Ronneburg - Dieser Inhalt ist unter einem Creative Commons Namensnennung - Nicht-kommerziell - Keine Bearbeitung Lizenzvertrag lizenziert (creativecommons.org/licenses/by-nc-nd/2.0/de/legalcode).