SuSE Linux: Versionen bis einschließlich 7.3
Praktisch alle derzeit erhältlichen Lexmark Tintenstrahldrucker - insbesondere die Z Serie (Z11, Z31) - können nicht unter Linux betrieben werden. Ausnahmen bilden Drucker, die eine der üblichen Druckersprachen ( HP PCL , ESC/P2 , PostScript ) direkt "verstehen" - d.h. nicht nur durch die mitgelieferten (Windows)-Treiber emuliert. Bitte erkundigen Sie sich dazu direkt bei Lexmark.
Der Grund ist, daß diese Drucker nur durch die mitgelieferten (Windows)-Treiber über Lexmark-eigene Steuersequenzen angesprochen werden können (sog. GDI-Drucker) und daß die neueren Modelle nicht mit den Steuersequenzen früherer Modelle arbeiten können. Daher funktionieren bestehende Treiber (etwa für den Lexmark 7000 bzw. 5700) höchstwahrscheinlich nicht mehr.
Lexmark ist nicht bereit, die nötigen Informationen über diese Steuersequenzen anderen zur Verfügung zu stellen, sondern sie bleiben Lexmarks Betriebsgeheimnis.
Daher ist es - wenn überhaupt - nur unter größten Schwierigkeiten möglich, Linux-Treiber für die aktuellen Lexmark-Drucker zu programmieren.
Welche Lexmark-Drucker in der jeweiligen SuSE LInux Version unterstützt werden sollten, finden Sie im Artikel "GDI-Drucker" (http://sdb.suse.de/de/sdb/html/ke_printer-gdi.html).
Im allgemeinen aber funktionieren insbesondere die Lexmark Tintenstrahldrucker nicht unter Linux, da es sich um sog. GDI-Drucker handelt, die nur durch die mitgelieferten (Windows)-Treiber angesprochen werden können.
Da die Linux-Unterstützung von Lexmark ungewiß ist, sollte man vor dem Kauf eines Lexmark-Druckers direkt mit Lexmark Kontakt aufnehmen, um die Frage der Verwendbarkeit unter Linux zu klären.
pbm2l7k unterstützt wird und
möchten mit Hilfe dieses Treibers drucken.
Die folgende Anleitung ist aus der verfügbaren Dokumentation und unter
der Mithilfe unseres Kunden Alexander Newald entstanden, wofür
wir uns herzlich bedanken möchten.
I)
Einrichten des Druckers mit YaST:
1.
Beachten Sie die Voraussetzungen im Artikel "Drucker einrichten",
den Sie unter dem Stichwort "einrichten" in unserer
Supportdatenbank `http://sdb.suse.de/sdb/de/html' finden.
2.
Installieren Sie das Paket pbm2l7k Serie ap mit YaST.
3.
Starten Sie YaST und wählen Sie
- Administration des Systems
- Hardware in System integrieren
- Drucker konfigurieren
Falls eine Rückfrage kommt, ob Sie die bereits vorhandene
Druckerkonfiguration überschreiben wollen, antworten Sie mit
"Überschreiben" falls Sie Ihren Drucker neu einrichten wollen,
ansonsten mit "Anfügen".
In der Maske INSTALLATION DES APSFILTERS tragen Sie folgendes ein:
Drucker farbig ansteuern [ ]
Typ des Druckers [Anderer Drucker ]
Name des Druckers <Benutzerdefiniert>
Im erscheinenden Untermenü WERT EINGEBEN geben Sie ein:
lexmark oder lex5700
(je nachdem, ob Sie einen Lexmark 7000 oder 5700 haben, bzw. zu
welchem der beiden Drucker Ihr Modell kompatibel ist)
Wählen Sie <Weiter>.
Wenn eine INFORMATION erscheint, daß der eingegebene Druckername
nicht von Ghostscript unterstützt wird, ignorieren Sie diese
mit <Weiter>.
Art des Papiers [a4 ]
Angeschlossen über Schnittstelle [Parallele Schnittstelle ]
Name der Device [/dev/lp0 ]
Auflösung in dpi :600x600:
und wählen Sie "Install".
Wenn das Untermenü WERT EINGEBEN nochmals erscheint, wählen
Sie <Weiter>, sofern der bereits eingegebene Druckername
korrekt ist.
Wenn wieder die INFORMATION erscheint, daß der eingegebene Druckername
nicht von Ghostscript unterstützt wird, ignorieren Sie auch diese
mit <Weiter>.
Sie erhalten eine Ausgabe, welche logischen Drucker bei der
Apsfilter-Konfiguration auf Ihrem System angelegt wurden, etwa:
(A) ascii|lp1| ... a4 ascii mono
lp|lp2| ... a4 auto mono
raw|lp3| ... a4 raw
Notieren Sie sich analog zu dieser Ausgabe, welche logischen Drucker
bei Ihnen angelegt wurden.
4.
Beenden Sie YaST
Wenn Sie eine Ausgabe wie (A) hatten, sollten Sie nun mit den Befehlen
lpr Dateiname
bzw.
lpr -Plp2 Dateiname
drucken können.
Testen Sie es z.B. mit
lpr /etc/fstab
bzw.
lpr -Plp2 /etc/fstab
II)
Falls der Drucker nach dem Einrichten mit YaST nicht
funktioniert, hier eine alternative Anleitung:
Installieren Sie das Paket pbm2l7k Serie ap mit YaST.
Sie brauchen den Treiber pbm2l7k nicht selbst zu compiliern.
Also sind make-Aufrufe unnötig.
Da Sie das Paket pbm2l7k installiert haben, haben Sie den
Treiber fertig compiliert unter
/usr/bin/pbm2l7k
Rufen Sie z.B.
pbm2l7k -h
auf und Sie erhalten etwa folgende Ausgabe:
-------------------------------------------------------------------------
Lexmark 7000 printer driver for Linux
Usage: pbm2l7k [ -h ] [ -m mode ] < input.pbmraw > output.prn
-h this help text
-m mode specifies printer driver:
-m 0 Lexmark 7000
-m 1 Lexmark 5700
default mode is: [0] Lexmark 7000
--------------------------------------------------------------------------
Der Treiber pbm2l7k wandelt also Dateien im pbmraw-Format
in das Lexmark spezifische Druckformat um.
Also ist zuerst mit Ghostscript das zu druckende Dokument
in das pbmraw-Format umzuwandeln.
Ghostscript erwartet seinerseits die Eingabe im Postscript-Format.
Lesen Sie dazu im Installationshandbuch im Kapitel "Druckerbetrieb"
den Abschnitt "Etwas über Ghostscript".
Beispiel zum Ausdruck der ASCII-Textdatei
/etc/fstab
auf dem Lexmark 5700 :
1. Umwandlung vom ASCII-Format in das Postscript-Format:
a2ps -o fstab.ps /etc/fstab
Für weitere Informationen zu a2ps siehe
man a2ps
Anzeigen von fstab.ps bei laufendem X-Window-System z.B. mit:
ghostview fstab.ps
(sofern das Paket gsview aus der Serie gra installiert ist)
2. Umwandlung vom Postscript-Format in das pbmraw-Format:
(Der folgende Aufruf muß in einer einzigen Zeile stehen!)
gs -q -dNOPAUSE -dSAFER -sDEVICE=pbmraw -r600x600
-sOutputFile=fstab.pbmraw fstab.ps -c quit
Mit der Auflösung -r600x600 müssen Sie evtl. experimentieren,
bis Sie ein zufriedenstellendes Ergebnis erhalten.
Anzeigen von fstab.pbmraw bei laufendem X-Window-System z.B. mit:
faxedit fstab.pbmraw
(sofern das Paket faxedit aus der Serie gra installiert ist)
3. Umwandlung vom pbmraw-Format in das Lexmark 5700 Druckformat:
pbm2l7k -m 1 < fstab.pbmraw > fstab.prn
Für den Lexmark 7000 lautet der Aufruf:
pbm2l7k < fstab.pbmraw > fstab.prn
4. Direkte Ausgabe auf dem Drucker:
cat fstab.prn > /dev/lp0
Vorher evtl. mit dem Kommando su zum Benutzer root wechseln
oder einmal als root mit dem Kommando
chmod a=rw /dev/lp0
den Zugriff auf /dev/lp0 für alle Benutzer freigeben.
Beachten Sie die Voraussetzungen im Artikel "Drucker einrichten",
den Sie unter dem Stichwort "einrichten" in unserer
Supportdatenbank `http://sdb.suse.de/sdb/de/html' finden.
Zum Ausdruck aus Anwendungsprogrammen sollten Sie das Dokument
im Postscript-Format abspeichern und Schritt 1. weglassen.
Bemerkung:
Die vielen Umwandlungen sind Unix-typisch und sind nicht
speziell nur wegen Ihres Druckers nötig.
Der normalerweise verwendete apsfilter arbeitet ähnlich,
indem zuerst alles in das Postscript-Format und danach
mit Ghostscript in das spezielle Druckformat umgewandelt
wird, welches dann durch den Druckerdämon lpd an den Drucker
geschickt wird.
Zur Automatisierung obiger Schritte sollten Sie ein
Shell-Script schreiben.
Ein Shell-Script zum Ausdruck von Dateien, die im
PostScript-Format vorliegen, auf dem Lexmark 5700
könnte etwa wie folgt angelegt werden:
1.
Legen Sie mit einem Editor eine ASCII-Datei z.B. mit dem Namen
ps2l5700
und mit folgendem Inhalt an:
-------------------------------------------------------------------------------
#!/bin/bash
gs -q -dNOPAUSE -dSAFER -sDEVICE=pbmraw -r600x600 -sOutputFile=-
$1 -c quit | pbm2l7k -m 1 1>/dev/lp0 2>/dev/null
-------------------------------------------------------------------------------
Dabei muß der Aufruf, der hier in Zeile 2 und 3 steht, in einer
einzigen Zeile stehen.
2.
Machen Sie das Shell-Script für jeden ausführbar mit dem Befehl
chmod a+x ps2l5700
3.
Nun sollte jeder Benutzer, sofern er auf das Druckerdevice /dev/lp0
zugreifen darf, durch Eingabe von
ps2l5700 Dateiname.ps
eine PostScript-Datei mit dem Namen "Dateiname.ps" direkt auf
dem Lexmark 5700 ausgeben können.
Achtung:
Zwei solche Ausgaben, die zur gleichen Zeit laufen, überlagern
sich und es gibt Chaos am Drucker.
Daher sollte als nächster Schritt der Druckerspooler lpd
konfiguriert werden, der dafür sorgt, daß mehrere Druckaufträge
getrennt nacheinander ausgegeben werden.
Obiges Shell-Script sollte wie folgt geändert werden, damit
Ghostscript die Eingabe nicht von einer Datei, sondern von
"stdin" erwartet und die Ausgabe von pbm2l7k auf "stdout" erfolgt.
-------------------------------------------------------------------------------
#!/bin/bash
gs -q -dNOPAUSE -dSAFER -sDEVICE=pbmraw -r600x600
-sOutputFile=- - -c quit | pbm2l7k -m 1 2>/dev/null
-------------------------------------------------------------------------------
Dabei muß wiederum der Aufruf, der hier in Zeile 2 und 3 steht, in
einer einzigen Zeile stehen.
Das so geänderte Shell-Script sollte dann als Input-Filter für
den lpd verwendet weren. Informationen dazu können Sie sich z.B. mit
less /usr/doc/howto/de/DE-Drucker-HOWTO.txt.gz
bzw. ab SuSE Linux 7.0 mit
less /usr/share/doc/howto/de/DE-Drucker-HOWTO.txt.gz
anzeigen lassen (Taste [Q] um less zu beenden) und ab SuSE Linux 7.0
finden Sie im Handbuch einen Abschnitt zu eigenen Druckerfiltern.
Bitte beachten Sie, daß Fragen zu Shell-Scripten und zur manuellen
Konfiguration des Druckerspoolers lpd über den Umfang des
Installationssupport hinausgehen, so daß wir solche Fragen im
Rahmen des Installationssupports nicht beantworten können.
GDI-Drucker
Drucker einrichtenSDB-jsmeix_print-gdi-lexmark)