12.5. Konfiguration des Druckers

Nachdem der Drucker mit dem Computer verbunden und die Software installiert ist, gilt es, diesen im System zu konfigurieren. Dabei sollten möglichst die mit SUSE LINUX gelieferten Werkzeuge verwendet werden. Da bei SUSE LINUX hoher Wert auf Sicherheit gelegt wird, kommen die Werkzeuge von Drittanbietern mit den Sicherheitseinschränkungen nicht immer zurecht und führen so manchmal zu Komplikationen.

12.5.1. Lokaler Drucker

Wurde bei der Systemanmeldung ein noch nicht konfigurierter lokaler Drucker erkannt, so wird ein YaST-Modul zu dessen Konfiguration gestartet. Das gleiche Modul wird zur Änderung einer existierenden Druckerkonfiguration benutzt.

Zur Druckereinrichtung wählen Sie im YaST-Kontrollzentrum unter Hardware den Punkt Drucker. Es erscheint das Hauptfenster der Druckereinrichtung. Hier sehen Sie im oberen Bereich die erkannten Drucker, im unteren Bereich die eingerichteten Warteschlangen. Wurde ein Drucker nicht automatisch erkannt, können Sie den Drucker manuell einrichten.

[Important]Wichtig

Falls der Eintrag Drucker im YaST-Kontrollzentrum nicht angezeigt wird, so ist das Paket yast2-printer wahrscheinlich nicht installiert. Installieren Sie in diesem Fall das Paket yast2-printer und starten Sie YaST neu.

12.5.1.1. Automatische Konfiguration

YaST ermöglicht eine automatische Konfiguration des Druckers, wenn der parallele bzw. der USB-Anschluss automatisch korrekt eingerichtet und der daran angeschlossene Drucker automatisch erkannt wurde. In der Druckerdatenbank findet sich die Identifikation des Druckermodells, die YaST bei der automatischen Hardwareerkennung erhalten hat. Diese Hardware-Identifikation unterscheidet sich bei manchen Druckern von der Modellbezeichnung. In diesem Fall kann das Modell unter Umständen nur manuell ausgewählt werden.

Für jede Konfiguration sollte grundsätzlich mit dem YaST-Testdruck ausprobiert werden, ob sie tatsächlich funktioniert. Die YaST-Testseite liefert zusätzlich wichtige Informationen zur jeweiligen Konfiguration.

12.5.1.2. Manuelle Konfiguration

Wenn eine der Bedingungen für die automatische Konfiguration nicht erfüllt ist oder eine spezielle Konfiguration gewünscht wird, muss die Einrichtung manuell erfolgen. Sofern YaST die Hardware automatisch erkennen kann und die Druckerdatenbank Informationen zu dem jeweiligen Druckermodell enthält, kann YaST die benötigten Daten automatisch ermitteln oder eine sinnvolle Vorauswahl anbieten.

Insgesamt müssen folgende Werte konfiguriert werden:

Hardwareanschluss (Schnittstelle)

Wie der Hardwareanschluss zu konfigurieren ist, hängt davon ab, ob YaST den Drucker bei der Hardware-Erkennung finden konnte. Kann YaST das Druckermodell automatisch erkennen, ist davon auszugehen, dass der Druckeranschluss auf Hardwareebene funktioniert und es müssen hier keine Einstellungen vorgenommen werden. Kann YaST das Druckermodell nicht automatisch erkennen, deutet dies darauf hin, dass der Druckeranschluss auf Hardware-Ebene nicht ohne manuelle Konfiguration funktioniert.

Name der Warteschlange

Da der Warteschlangenname beim Drucken oft eingegeben werden muss, sollten nur kurze Namen aus Kleinbuchstaben und eventuell Zahlen verwendet werden.

Druckermodell und PPD-Datei

Die druckerspezifischen Einstellungen (z. B. Ghostscript-Treiber und zugehörige treiberspezifische Parameter für den Druckerfilter) sind in einer PPD-Datei (engl. PostScript Printer Description) gespeichert; zu PPD-Dateien vgl. auch Abschnitt 12.4, „Installation der Software“.

Für viele Druckermodelle stehen mehrere PPD-Dateien zur Verfügung (z. B. wenn mehrere Ghostscript-Treiber funktionieren). Durch die Wahl von Hersteller und Modell werden somit zunächst nur die passenden PPD-Dateien ausgewählt. Wenn mehrere PPD-Dateien zur Verfügung stehen, wählt YaST aus diesen eine PPD-Datei aus (normalerweise diejenige, die durch den Eintrag „recommended“ gekennzeichnet ist). Bei Bedarf kann via Ändern eine andere PPD-Datei gewählt werden.

Da bei Nicht-PostScript-Druckern der Druckerfilter mit einem Ghostscript-Treiber die druckerspezifischen Daten erzeugt, ist die Konfiguration des Ghostscript-Treibers die entscheidende Stelle, an der die Art des Ausdrucks festgelegt wird. Die Wahl des Ghostscript-Treibers (via PPD-Datei) und entsprechende treiberspezifische Einstellungen bestimmen das Druckbild. Bei Bedarf können via Ändern andere druckerspezifische Einstellungen für den Druckerfilter in der PPD-Datei gewählt werden.

Abbildung 12.1. Wahl des Druckers

Wahl des Druckers

Das Drucken der YaST-Testseite ist unerlässlich. Wenn beim Drucken der Testseite Unsinn gedruckt wird (zum Beispiel viele fast leere Seiten), können Sie den Druck sofort am Drucker stoppen, indem Sie alles Papier entnehmen und dann den Testdruck abbrechen.

Ist das Druckermodell nicht in der Druckerdatenbank eingetragen, können Sie mit PPD-Datei zur Datenbank hinzufügen eine neue PPD-Datei hinzufügen oder die Auswahl an generischen PPD-Dateien für die Standarddruckersprachen benutzen. Wählen Sie dazu als „HerstellerUNKNOWN MANUFACTURER.

Weitere Einstellungen

Im Normalfall müssen Sie keine weiteren Einstellungen vornehmen.

12.5.1.3. Konfiguration mit Kommandozeilen-Tools

Zur manuellen Konfiguration mit Kommandozeilen-Tools (siehe Abschnitt 12.5.3.2, „Konfiguration mit Kommandozeilen-Tools“) ist eine Device-URI („Uniform Resource Identifier“) bestehend aus Backend (z. B. usb) und Parameterangabe (z. B. /dev/usb/lp1) notwendig. Komplett lautet diese beispielsweise: parallel:/dev/lp0 (Drucker an der ersten parallelen Schnittstelle) oder usb:/dev/usb/lp0 (erster erkannter Drucker am USB-Port).

12.5.2. Netzwerkdrucker

Ein Netzwerkdrucker kann verschiedene Protokolle unterstützen und manche davon sogar gleichzeitig. Die meisten der unterstützten Protokolle sind standardisiert. Trotzdem kann es vorkommen, dass Hersteller den Standard erweitern (abändern), weil sie entweder mit Systemen testen, die den Standard nicht korrekt implementiert haben, oder weil sie bestimmte Funktionen haben möchten, die es laut Standard gar nicht gibt. Derartige Treiber bieten sie nur für einige wenige Betriebssysteme an, zu denen Linux leider nur in seltenen Fällen gehört. Es kann also im Moment nicht davon ausgegangen werden, dass jedes Protokoll unter Linux problemlos funktioniert. Daher sollte durchaus mit den verschiedenen Möglichkeiten experimentiert werden, um zu einer funktionstüchtigen Konfiguration zu gelangen.

Unter CUPS werden die Protokolle socket, LPD, IPP und smb unterstützt. Im Folgenden einige Detailinformationen zu diesen Protokollen:

socket

socket bezeichnet eine Verbindung, bei der die Daten auf ein Internet-Socket geschickt werden, ohne dass vorher ein Daten-Handshake ausgeführt wird. Typisch verwendete Socket-Port-Nummern sind 9100 oder 35. Beispiel für eine Device-URI: socket://host-printer:9100/

LPD (Line Printer Daemon)

Das altbewährte LPD-Protokoll wird im RFC 1179 beschrieben. Dieses Protokoll beinhaltet, dass vor den eigentlich Druckdaten noch ein paar wenige auftragsbezogene Daten verschickt werden, z. B. die ID der Druckerwarteschlange. Daher ist es notwendig, dass bei der Konfiguration des LPD-Protokolls zur Datenübertragung auch eine Druckerwarteschlange angegeben wird. Implementierungen diverser Druckerhersteller sind so flexibel geschrieben, dass sie jeden Namen als Druckerwarteschlange akzeptieren. Den zu verwendenden Namen findet man im Bedarfsfall im Handbuch zum Drucker. Häufig lauten sie LPT, LPT1, LP1 oder so ähnlich. Natürlich kann man auf diese Weise auch eine LPD-Warteschlange an einem anderen Linux- oder Unix-artigen Rechner im CUPS-System konfigurieren. Die Port-Nummer für einen LPD-Dienst lautet 515. Beispiel für eine Device-URI: lpd://host-printer/LPT1

IPP (Internet Printing Protokoll)

IPP ist noch relativ jung (1999) und basiert auf dem Protokoll HTTP. Es werden im IPP deutlich mehr auftragsbezogene Daten verschickt als in den anderen Protokollen. CUPS verwendet zur internen Datenübertragung das IPP. Sollte eine Forwarding-Warteschlange zwischen zwei CUPS-Servern eingerichtet werden, so ist dieses Protokoll zu bevorzugen. Auch hier wird wieder der Name der Druckerwarteschlange benötigt, um IPP korrekt konfigurieren zu können. Die Port-Nummer für IPP lautet 631. Beispiel für eine Device-URI: ipp://host-printer/ps oder: ipp://host-cupsserver/printers/ps

SMB (Windows-Share)

Schließlich unterstützt CUPS auch noch das Drucken auf Drucker am Windows-Share. Das Protokoll hierfür lautet SMB und es werden die Port-Nummer 137, 138 und 139 verwendet. Beispiel für eine Device-URI: smb://user:password@workgroup/server/printer oder: smb://user:password@host/printer oder: smb://server/printer

Das vom Drucker unterstützte Protokoll ist also vor der Konfiguration herauszufinden. Sollte sich der Hersteller darüber ausschweigen, so kann es mit Hilfe des Befehls nmap aus dem Paket nmap erraten werden. nmap prüft einen Host nach offenen Ports; Beispiel:

nmap -p 35,137-139,515,631,9100-10000 printer-IP

12.5.3. Konfigurationsarbeiten

Konfigurationsarbeiten können mit YaST oder Kommandozeilen-Tools durchgeführt werden.

12.5.3.1. CUPS im Netzwerk mit YaST konfigurieren

Netzwerkdrucker sind mit YaST einzurichten. YaST erleichtert die Konfiguration und es kann am besten mit den Sicherheitseinschränkungen bei CUPS umgehen; vgl. auch Abschnitt 12.7.2, „Administrator für das CUPS Web-Frontend“.

Als Leitfaden zur Konfiguration von „CUPS im Netzwerk“ siehe den SDB-Artikel CUPS in aller Kürze unter http://portal.suse.com.

12.5.3.2. Konfiguration mit Kommandozeilen-Tools

Alternativ ist es auch möglich, CUPS mit Kommandozeilen-Tools wie lpadmin und lpoptions zu konfigurieren. Wenn die Vorarbeit schon gemacht ist (PPD-Datei ist bekannt und der Name der Device-URI auch), sind nur noch die folgenden Schritte notwendig:

lpadmin -p Warteschlange -v Device-URI \
-P PPD-Datei -E

Dabei ist wichtig, dass das -E nicht die erste Option ist. Denn bei allen CUPS-Befehlen bedeutet -E als erstes Argument, dass eine verschlüsselte Verbindung benutzt werden soll (engl. encrypted) und nicht, wie oben beabsichtigt, der Drucker aktiviert werden soll (engl. enable). Ein konkretes Beispiel:

lpadmin -p ps -v parallel:/dev/lp0 \
  -P /usr/share/cups/model/Postscript.ppd.gz -E

Analoges Beispiel für einen Netzwerkdrucker:

lpadmin -p ps -v socket://192.168.1.0:9100/ \
  -P /usr/share/cups/model/Postscript-level1.ppd.gz -E

12.5.3.3. Optionen verändern

Während der Installation sind bestimmte Optionen als Vorgabe („per default“) aktiviert. Diese lassen sich je Printjob verändern (abhängig von dem verwendeten Druck-Tool). Diese Vorgaben können mit YaST oder mit den Kommandozeilen-Tools geändert werden. Mit den Kommandozeilen-Tools geht dies wie folgt:

  1. Zuerst lässt man sich alle Optionen ausgeben:

    lpoptions -p Warteschlange -l

    Beispiel:

    Resolution/Output Resolution: 150dpi *300dpi 600dpi
    

    Die aktivierte Default-Option erkennt man am vorgestellten Asterisk: *

  2. Eine Option dann mit lpadmin ändern:

    lpadmin -p Warteschlange -o Resolution=600dpi
  3. Überprüfen, ob alles funktioniert hat:

    lpoptions -p Warteschlange -l
    Resolution/Output Resolution: 150dpi 300dpi *600dpi
    

SUSE LINUX Administrationshandbuch 9.3