Drucker einrichten mit CUPS: Difference between revisions
(→HP) Tag: visualeditor-switched |
|||
(20 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
= Ausgangssituation= |
= Ausgangssituation= |
||
OS: Debian |
OS: Debian >= buster<br> |
||
Drucker: |
Drucker: <br> |
||
Canon Pixma iP4300<br> |
|||
HP Deskjet 1000<br> |
|||
Server: Cups<br> |
Server: Cups<br> |
||
= Arbeitsschritte = |
= Arbeitsschritte = |
||
== Im Vorfeld == |
|||
Bevor man sich einen Drucker zulegt, will man vielleicht unter |
|||
http://www.openprinting.org/printers |
|||
überprüfen, ob das gute Stück auch von Linux unterstützt wird. |
|||
== Treiber holen == |
== Treiber holen == |
||
Canon bietet dankenswerterweise generische Treiber: <br> |
Canon bietet dankenswerterweise generische Treiber: <br> |
||
http://de.software.canon-europe.com/ <br> |
http://de.software.canon-europe.com/ <br> |
||
tar.gz runterladen und auspacken. |
tar.gz runterladen und auspacken. |
||
Für hp gibt es unter der Sammelbezeichnung '''hplip''' eine große Menge Treiber für alle gängigen Modelle |
|||
http://sourceforge.net/projects/hplip/files/hplip/ |
|||
== Treiber installieren == |
== Treiber installieren == |
||
=== Canon=== |
|||
Da es nur rpms gibt, müssen die Treiber erst in Debianpakete verwandelt werden. |
Da es nur rpms gibt, müssen die Treiber erst in Debianpakete verwandelt werden. |
||
Dafür gibt es das praktische Tool 'alien': |
Dafür gibt es das praktische Tool 'alien': |
||
Line 18: | Line 29: | ||
# dpkg -i cnijfilter-common-2.70-3.i386.deb |
# dpkg -i cnijfilter-common-2.70-3.i386.deb |
||
# dpkg -i cnijfilter-ip4300-2.70-3.i386.deb |
# dpkg -i cnijfilter-ip4300-2.70-3.i386.deb |
||
Cups (bzw. das Paket |
Cups (bzw. das Paket '''cups''') installieren und Daemon starten. Cups lauscht per |
||
default auf Port 631, also im Browser |
default auf Port 631, also im Browser |
||
http://localhost:631 |
http://localhost:631 |
||
eingeben. Unter "Administration -> add printer" bekommt man eine Auswahlmaske |
eingeben. Unter "Administration -> add printer" bekommt man eine Auswahlmaske (s.u.) |
||
===HP=== |
|||
Mittlerweile gibt es für hp das Debianpaket '''hplip'''. Dort sich alle gängigen Modelle enthalten. |
|||
# apt install hplip |
|||
(Wer sich im o.g. Link die neueste Version heruntergeladen hat, muss diese mittels |
|||
hplip-<version>.run installieren.) |
|||
Falls im laufenden Betrieb Schwierigkeiten entstehen sollten, sollte man überprüfen, ob folgende Pakete vorhanden sind. |
|||
* libcups2-dev |
|||
* libcupsimage2-dev |
|||
Für Debugging / manuelle Einstellungen gibt es eine Reihe hp-* commands, auf die hier aber nicht näher eingegangen wird, da wir den Drucker direkt im CUPS einrichten. |
|||
Für das Auswählen von weiteren Optionen (scan, fax,...) sollten auch folgende Pakete installiert sein: |
|||
* xsane |
|||
* libsane-dev |
|||
* python-imaging |
|||
* python3-pyqt4 |
|||
* python-notify |
|||
Drucker im CUPS einrichten. Die Web-GUI lauscht auf Port 631, also in Browser http://localhost:631 eingeben. |
|||
Unter "Administration" Add Printer auswählen. |
|||
== Cups konfigurieren == |
== Cups konfigurieren == |
||
Line 34: | Line 69: | ||
den richtigen Treiber erwischt hat! |
den richtigen Treiber erwischt hat! |
||
Continue -> Model (oder Make): |
Continue -> Model (oder Make): |
||
Dort sollte 'Canon' erscheinen<br> |
Dort sollte 'Canon', 'HP' usw. erscheinen<br> |
||
Alternativ den Punkt 'Provide a PPD File' wählen:<br> |
Alternativ den Punkt 'Provide a PPD File' wählen:<br> |
||
Diese Dateien befinden sich unter /usr/share/cups/model |
Diese Dateien befinden sich bei Canon unter /usr/share/cups/model |
||
Fertig. Unter "Printers" kann man sich den Drucker anschauen u. gegebenenfalls |
Fertig. Unter "Printers" kann man sich den Drucker anschauen u. gegebenenfalls |
||
Line 44: | Line 79: | ||
erscheint: |
erscheint: |
||
"Unable to start filter "pstocanonij" - No such file or directory." |
"Unable to start filter "pstocanonij" - No such file or directory." |
||
muss diese im Verzeichnis |
|||
muss diese Datei separat erzeugt werden. Dazu öffnet man mit dem midnight |
|||
⚫ | |||
commander das cnijfilter-common-rpm und kopiert die Datei pstocanonij nach |
|||
⚫ | |||
einer Testseite davon überzeugen, dass alles geklappt hat. |
einer Testseite davon überzeugen, dass alles geklappt hat. |
||
Es besteht auch die Möglichkeit, das ppd File manuell nachzubearbeiten, z.B. Default Size von letter auf A4 umstellen. |
|||
Die vorhin von CUPS generierte Datei befindet sich unter |
|||
/etc/cups/ppd/ |
|||
==Debugging== |
==Debugging== |
||
Line 54: | Line 92: | ||
==Known Bugs== |
==Known Bugs== |
||
=== Drucker stoppt selbständig === |
|||
Manchmal "hängt" ein Drucker einfach bzw. liefert keinen Output. In der Übersicht im Webfrontend sieht man dann |
|||
''Paused - "File "/usr/lib/cups/filter/hpcups" not available: No such file or directory"'' |
|||
In diesem Fall geht man auf die Printer-Übersicht und klickt bei Maintenance den Punkt "Resume Printer" an. |
|||
=== Fehlende Library === |
|||
Wenn im Debug Output (s.o.) das Fehlen einer Datei libpng.so.3 angemeckert wird oder ein Output erscheint wie |
Wenn im Debug Output (s.o.) das Fehlen einer Datei libpng.so.3 angemeckert wird oder ein Output erscheint wie |
||
/usr/local/bin/cifip4300: error while loading shared libraries: /usr/lib/libpng.so.3: invalid ELF header |
''/usr/local/bin/cifip4300: error while loading shared libraries: /usr/lib/libpng.so.3: invalid ELF header'' |
||
muss diese Datei richtig verlinkt werden -> Mit dpkg ermitteln, welche libpng gerade installiert ist und den entsprechenden Link ins /lib-Verzeichnis setzen: |
muss diese Datei richtig verlinkt werden -> Mit dpkg ermitteln, welche libpng gerade installiert ist und den entsprechenden Link ins /lib-Verzeichnis setzen: |
||
ln -s /lib/libpng12.so.0 libpng.so.3 |
# ln -s /lib/libpng12.so.0 libpng.so.3 |
||
== Alternative Gutenprint == |
== Alternative Gutenprint == |
||
Line 63: | Line 110: | ||
== Alternative Turpoprint == |
== Alternative Turpoprint == |
||
Dieses ist ein kommerzielles Programm für Linux-Druckertreiber. Kostenpunkt: ca. 30 |
|||
€ (Stand März 2011): (http://www.turboprint.de/) |
€ (Stand März 2011): (http://www.turboprint.de/) |
||
Latest revision as of 21:44, 22 July 2023
Ausgangssituation
OS: Debian >= buster
Drucker:
Canon Pixma iP4300
HP Deskjet 1000
Server: Cups
Arbeitsschritte
Im Vorfeld
Bevor man sich einen Drucker zulegt, will man vielleicht unter http://www.openprinting.org/printers überprüfen, ob das gute Stück auch von Linux unterstützt wird.
Treiber holen
Canon bietet dankenswerterweise generische Treiber:
http://de.software.canon-europe.com/
tar.gz runterladen und auspacken.
Für hp gibt es unter der Sammelbezeichnung hplip eine große Menge Treiber für alle gängigen Modelle
http://sourceforge.net/projects/hplip/files/hplip/
Treiber installieren
Canon
Da es nur rpms gibt, müssen die Treiber erst in Debianpakete verwandelt werden. Dafür gibt es das praktische Tool 'alien':
# alien --script cnijfilter-common-2.70-2.i386.rpm # alien --script cnijfilter-ip4300-2.70-2.i386.rpm
Nun die Treiber nach altbekannter Manier installieren:
# dpkg -i cnijfilter-common-2.70-3.i386.deb # dpkg -i cnijfilter-ip4300-2.70-3.i386.deb
Cups (bzw. das Paket cups) installieren und Daemon starten. Cups lauscht per default auf Port 631, also im Browser
http://localhost:631
eingeben. Unter "Administration -> add printer" bekommt man eine Auswahlmaske (s.u.)
HP
Mittlerweile gibt es für hp das Debianpaket hplip. Dort sich alle gängigen Modelle enthalten.
# apt install hplip
(Wer sich im o.g. Link die neueste Version heruntergeladen hat, muss diese mittels
hplip-<version>.run installieren.)
Falls im laufenden Betrieb Schwierigkeiten entstehen sollten, sollte man überprüfen, ob folgende Pakete vorhanden sind.
- libcups2-dev
- libcupsimage2-dev
Für Debugging / manuelle Einstellungen gibt es eine Reihe hp-* commands, auf die hier aber nicht näher eingegangen wird, da wir den Drucker direkt im CUPS einrichten.
Für das Auswählen von weiteren Optionen (scan, fax,...) sollten auch folgende Pakete installiert sein:
- xsane
- libsane-dev
- python-imaging
- python3-pyqt4
- python-notify
Drucker im CUPS einrichten. Die Web-GUI lauscht auf Port 631, also in Browser http://localhost:631 eingeben. Unter "Administration" Add Printer auswählen.
Cups konfigurieren
Name: Location: Description:
Hier ist es ziemlich egal, was man einträgt, ich würde aber keinen zu langen Namen wählen.
Continue -> Device:
Hier sollte im Drop-Down-Menü bereits der richtige Name erscheinen, in dem Fall "Canon iP4300 USB #1 (Canon iP4300)" Ist das nicht der Fall, überprüfen, ob man den richtigen Treiber erwischt hat!
Continue -> Model (oder Make):
Dort sollte 'Canon', 'HP' usw. erscheinen
Alternativ den Punkt 'Provide a PPD File' wählen:
Diese Dateien befinden sich bei Canon unter /usr/share/cups/model
Fertig. Unter "Printers" kann man sich den Drucker anschauen u. gegebenenfalls per "modify" Änderungen vornehmen. Der Punkt "Set default printer" ermöglicht ein Drucken per 'lpr' ohne Setzen einer -P-Option. Achtung: Falls z.B. nach einem versuchten Probedruck folgende Meldung erscheint:
"Unable to start filter "pstocanonij" - No such file or directory."
muss diese im Verzeichnis /usr/lib/cups/filter hinterlegt werden. Danach den Drucker nochmal neu einrichten und sich mit einer Testseite davon überzeugen, dass alles geklappt hat.
Es besteht auch die Möglichkeit, das ppd File manuell nachzubearbeiten, z.B. Default Size von letter auf A4 umstellen. Die vorhin von CUPS generierte Datei befindet sich unter
/etc/cups/ppd/
Debugging
Wenn nicht alles so läuft, wie es soll, kann man über die Web-GUI Debugging einschalten (Administration -> server -> Save debugging information for troubleshooting) Dann nochmal drucken und in die Logfiles schauen. Nicht vergessen, diese Option später wieder rauszunehmen, da diese ein Vielfaches an Output erzeugt.
Known Bugs
Drucker stoppt selbständig
Manchmal "hängt" ein Drucker einfach bzw. liefert keinen Output. In der Übersicht im Webfrontend sieht man dann
Paused - "File "/usr/lib/cups/filter/hpcups" not available: No such file or directory"
In diesem Fall geht man auf die Printer-Übersicht und klickt bei Maintenance den Punkt "Resume Printer" an.
Fehlende Library
Wenn im Debug Output (s.o.) das Fehlen einer Datei libpng.so.3 angemeckert wird oder ein Output erscheint wie
/usr/local/bin/cifip4300: error while loading shared libraries: /usr/lib/libpng.so.3: invalid ELF header
muss diese Datei richtig verlinkt werden -> Mit dpkg ermitteln, welche libpng gerade installiert ist und den entsprechenden Link ins /lib-Verzeichnis setzen:
# ln -s /lib/libpng12.so.0 libpng.so.3
Alternative Gutenprint
Falls die Treiber des Herstellers Probleme machen, kann man auch (den in cups enthaltenen) Gutenprint-Treiber verwenden. Dazu im Webfrontend (localhost:631) den Drucker anwählen und unter "Administration->modify" das Modell des Herstellers + gutenprint wählen, also z.B. "Canon Pixma iP4300 - CUPS+Gutenprint v5.2.9"
Alternative Turpoprint
Dieses ist ein kommerzielles Programm für Linux-Druckertreiber. Kostenpunkt: ca. 30 € (Stand März 2011): (http://www.turboprint.de/)
Hier ist nur die Demoversion beschrieben. Diese hat den Nachteil, dass auf jedem
Ausdruck ein hässliches Turboprint-Label erscheint.
turboprint herunterladen, auspacken, installieren (./setup-Befehl ausführen),
danach gibt es die Möglichkeit, eine Testseite zu drucken.
In den Ordner /usr/share/turboprint/ppd wechseln, dort das zum Drucker passende
file auswählen und in den Cups-Ordner kopieren, also in meinem Fall:
# cd /usr/share/turboprint/ppd # cp Canon_PIXMA_iP4300.ppd /usr/share/cups/model/
Dann im Cups ebendiese Datei auswählen
-> Add printer
Das ist natürlich ein sehr spezifisches Beispiel, aber das Funktionsprinzip ist ähnlich für fast alle Drucker.
Zuguterletzt noch ein paar Tipps zum Finetuning des Druckers:
http://wiki.ubuntuusers.de/Canon-Drucker