Drucker: Unterschied zwischen den Versionen
Mucki (Diskussion | Beiträge) Stil, Anordnung, teilweise die Absätze umgeschrieben |
Dirk (Diskussion | Beiträge) K typo, stil., format, wikif. |
||
Zeile 8: | Zeile 8: | ||
Außerdem benötigt man eines der folgenden Treiber-Pakete je nach dem, was für Drucker konfiguriert werden. Im Zweifelsfall ist Gutenprint eine gute Wahl: | Außerdem benötigt man eines der folgenden Treiber-Pakete je nach dem, was für Drucker konfiguriert werden. Im Zweifelsfall ist Gutenprint eine gute Wahl: | ||
'''gutenprint''' - Eine Sammlung hochwertiger Treiber für Canon, Epson, Lexmark, Sony, Olympus und PCL Drucker, die mit Ghostscript, CUPS, Foomatic und GIMP verwendet werden können. | * '''gutenprint''' - Eine Sammlung hochwertiger Treiber für Canon, Epson, Lexmark, Sony, Olympus und PCL Drucker, die mit Ghostscript, CUPS, Foomatic und GIMP verwendet werden können. | ||
* '''foomatic''', '''foomatic-db''', '''foomatic-db-engine''', '''foomatic-db-ppd''' und '''foomatic-filters''' - Foomatic ist ein Datenbank-basiertes System, um freie Drucker-Treiber mit gewöhnlichen Spoolern unter Unix zu integrieren. | |||
'''foomatic''', '''foomatic-db''', '''foomatic-db-engine''', '''foomatic-db-ppd''' und '''foomatic-filters''' - Foomatic ist ein Datenbank-basiertes System, um freie Drucker-Treiber mit gewöhnlichen Spoolern unter Unix zu integrieren. | * '''foomatic-filters''' zu installieren sollte beim lösen verschiedener Probleme helfen können, wenn der CUPS-Server im error.log berichtet: "stopped with status 22!". | ||
'''foomatic-filters''' zu installieren sollte beim lösen verschiedener Probleme helfen können, wenn der CUPS-Server im error.log berichtet: "stopped with status 22!". | * '''hplip''' - Ein HP Linux Inkjet Treiber. Unterstützt DeskJet, OfficeJet, Photosmart, Business Inkjet und einige LaserJet Modelle. | ||
* '''splix''' - Eine Treibersammlung für Drucker, welche mit SPL (Samsung Printer Language) angesteuert werden, vornehmlich Samsung. | |||
'''hplip''' - Ein HP Linux Inkjet Treiber. Unterstützt DeskJet, OfficeJet, Photosmart, Business Inkjet und einige LaserJet Modelle. | * '''cups-pdf''' - Ein nettes Paket, das es erlaubt, einen virtuellen PDF-Drucker einzurichten, der alles, was an ihn geschickt wird, in eine PDF-Datei verwandelt. | ||
'''splix''' - Eine Treibersammlung für Drucker, welche mit SPL (Samsung Printer Language) angesteuert werden, vornehmlich Samsung. | |||
'''cups-pdf''' - Ein nettes Paket, das es erlaubt, einen virtuellen PDF-Drucker einzurichten, der alles, was an ihn geschickt wird, in eine PDF-Datei verwandelt. | |||
Wenn das System mit einem Netzwerk-Drucker verbunden ist, der das [[Samba]]-Protokoll verwendet, oder als Drucker-Server für Windows-Klienten dienen soll, sollte man Samba installieren: | Wenn das System mit einem Netzwerk-Drucker verbunden ist, der das [[Samba]]-Protokoll verwendet, oder als Drucker-Server für Windows-Klienten dienen soll, sollte man Samba installieren: | ||
Zeile 24: | Zeile 20: | ||
=== Die Drucker-PPD herunterladen === | === Die Drucker-PPD herunterladen === | ||
Eine PPD-Datei ist eine Informationsdatei für PostScript-Drucker (meist vom Hersteller des Druckers bereitgestellt), in der alle relevanten Informationen über den Drucker (Druckertyp, unterstützte Schriften, Auflösung, verwendeter PostScript-Level, Papierformat, etc.) verzeichnet sind. | |||
Abhängig vom Drucker, ist dieser Schritt vielleicht überflüssig und kann übersprungen werden, da die Basisinstallation von CUPS bereits eine ganze Reihe von PPD | Abhängig vom Drucker, ist dieser Schritt vielleicht überflüssig und kann übersprungen werden, da die Basisinstallation von CUPS bereits eine ganze Reihe von PPD-Dateien mit sich bringt. Darüber hinaus enthalten <code>foomatic-filters</code>, <code>gutenprint</code> und <code>hplip</code> weitere PPD-Dateien, die automatisch von CUPS erkannt werden. | ||
Falls die PPD-Datei des eigenen Drucker nicht in einem der vorgenannten Pakete zu finden sein sollte, so kann man auf [http://www.linuxprinting.org/printer_list.cgi linuxprinting.org] nachsehen. Dort wählt man den Hersteller und das Modell des Druckers aus. Dann muss man diese Datei in den CUPS-Ordner kopieren, so dass die Datei erkannt werden kann. | |||
cp your_printer.ppd /usr/share/cups/model/ | |||
Wenn das Druckermodell auf der Seite nicht zu finden ist, kann man es mit ähnlichen Modellen versuchen, oder generische Treiber verwenden. | Wenn das Druckermodell auf der Seite nicht zu finden ist, kann man es mit ähnlichen Modellen versuchen, oder generische Treiber verwenden. | ||
== Konfiguration == | == Konfiguration == | ||
Es gibt viele Möglichkeiten, den CUPS-Server einzurichten: Über die Kommandozeile, über | Es gibt viele Möglichkeiten, den CUPS-Server einzurichten: Über die Kommandozeile, über bereitgestellte Programme der Desktopumgebung oder über die mitgelieferte Webschnittstelle des Servers. Diese Anleitung bezieht sich auf letzteres. | ||
=== Module laden === | === Module laden === | ||
Zuerst müssen die Kernelmodule geladen werden. Je nachdem, ob man einen USB- oder einen Parallel-Drucker verwendet, sind diese unterschiedlich. | Zuerst müssen die Kernelmodule geladen werden. Je nachdem, ob man einen USB- oder einen Parallel-Drucker verwendet, sind diese unterschiedlich. | ||
Zeile 63: | Zeile 57: | ||
Wenn man einen Parallel-Drucker nutzen will, ist die Einrichtung fast genau die gleiche. Benutzer des Kernels 2.6.x müssen als erstes folgendes eintippen: | Wenn man einen Parallel-Drucker nutzen will, ist die Einrichtung fast genau die gleiche. Benutzer des Kernels 2.6.x müssen als erstes folgendes eintippen: | ||
modprobe lp | |||
Danach können sowohl die Nutzer eines 2.4.x-Kernels, als auch die eines 2.6.x-Kernels eingeben: | Danach können sowohl die Nutzer eines 2.4.x-Kernels, als auch die eines 2.6.x-Kernels eingeben: | ||
modprobe parport | |||
modprobe parport_pc | |||
Diese Module sollten ebenfalls in das MODULES-Array der <code>rc.conf</code> eingetragen werden | Diese Module sollten ebenfalls in das MODULES-Array der <code>rc.conf</code> eingetragen werden | ||
Nun überprüft man die Einstellungen. | Nun überprüft man die Einstellungen. | ||
tail /var/log/messages.log | |||
Es sollte folgendes zu sehen sein. | Es sollte folgendes zu sehen sein. | ||
# lp0: using parport0 (polling). | |||
=== Daemon starten === | === Daemon starten === | ||
Wenn die Kernel-Module installiert sind, wird der CUPS-Server als Daemon gestartet. | Wenn die Kernel-Module installiert sind, wird der CUPS-Server als Daemon gestartet. | ||
/etc/rc.d/cups start | |||
CUPS sollte außerdem in das DAEMON-Array der <code>rc.conf</code> eingetragen werden. | CUPS sollte außerdem in das DAEMON-Array der <code>rc.conf</code> eingetragen werden. | ||
DAEMONS=([…] cups […]) | |||
=== CUPS HTTP Schnittstelle für lokale Drucker === | === CUPS HTTP Schnittstelle für lokale Drucker === | ||
Sobald der Server gestartet ist, ruft man die Webschnittstelle auf: [http://localhost:631 http://localhost:631] Hier klickt auf | Sobald der Server gestartet ist, ruft man die Webschnittstelle auf: [http://localhost:631 http://localhost:631] Hier klickt man auf den Link, um Drucker hinzuzufügen. Der CUPS-Server sucht automatisch nach den angeschlossenen Druckern; den, der konfiguriert werden soll, klickt man an. Nun kann man dem Drucker einen Trivialnamen geben und eine Beschreibung hinzufügen. Zuletzt wählt man den Druckertreiber bzw. eine PPD-Datei aus und stellt die Standardeinstellungen ein. Der Drucker ist nun eingerichtet und bereit zum Drucken. Man sollte nun eine Testseite drucken, um zu überprüfen, ob alles funktioniert. Dies kann man über das nun offene Menü des Druckers tun oder über die Kommandozeile. | ||
lpr -P <Drucker> datei | lpr -P <Drucker> datei | ||
<Drucker> ist hierbei der gewählte Trivialname, <code>datei</code> eine zuvor erstelle Textdatei. | <code><Drucker></code> ist hierbei der gewählte Trivialname, <code>datei</code> eine zuvor erstelle Textdatei. Sofern man nur einen Drucker eingerichtet hat, kann <code>-P <Drucker></code> auch weggelassen werden. | ||
== CUPS-PDF als virtuellen Drucker einrichten == | |||
Zuerst muss das entsprechende Paket installiert werden. | Zuerst muss das entsprechende Paket installiert werden. | ||
pacman -S cups-pdf | pacman -S cups-pdf | ||
Über das Webinterface wird der neue Drucker als | Über das Webinterface wird der neue Drucker als ''CUPS-PDF (Virtual PDF Printer)'' angelegt. Dazu klickt man auf „Verwaltung“ und dort auf den Button „Drucker hinzufügen“ im Abschnitt „Drucker“. Im nächsten Dialog wählt man „Local Printers: CUPS-PDF (Virtual PDF Printer)“ aus. | ||
Klickt man auf | Klickt man auf „Fortsetzen“ sieht man im darauffolgenden Dialog als URI des Druckers die Angabe <code>cups-pdf:/</code>. Weiter geht es mit der Auswahl des Druckerherstellers. Hier wählt man „Generic“ aus der Herstellerliste. Als Model wählt man „Generic CUPS-PDF Printer (en)“. Um die neue Konfiguration zu aktivieren, muss der CUPS-Server neu gestartet werden. | ||
/etc/rc.d/cups restart | /etc/rc.d/cups restart | ||
Zuvor kann man in der Datei <code>/etc/cups/cups-pdf.conf</code> im Abschnitt | Zuvor kann man in der Datei <code>/etc/cups/cups-pdf.conf</code> im Abschnitt „CUPS-PDF output directory“ Einfluss darauf nehmen, in welches Verzeichnis die erzeugten PDF-Dateien später abgelegt werden sollen. | ||
== Problemlösungen == | == Problemlösungen == | ||
Um den Druck zum Laufen zu bringen, sollte man am besten den LogLevel in <code>/etc/cups/cupsd.conf</code> so einstellen: | |||
Um den Druck zum Laufen zu bringen, sollte man am besten den LogLevel in | |||
LogLevel debug2 | LogLevel debug2 | ||
Dann kann man die Ausgabe von | Dann kann man die Ausgabe von <code>/var/log/cups/error_log</code> mit diesem Befehl betrachten: | ||
tail -n 100 -f /var/log/cups/error_log | tail -n 100 -f /var/log/cups/error_log | ||
Zeile 121: | Zeile 116: | ||
Die Buchstaben auf der linken Seite der Ausgabe stehen für: | Die Buchstaben auf der linken Seite der Ausgabe stehen für: | ||
D = Debug | * D = Debug | ||
E = Error (Fehler) | * E = Error (Fehler) | ||
I = Information | * I = Information | ||
Die folgenden Dateien können sich ebenfalls als hilfreich erweisen: | Die folgenden Dateien können sich ebenfalls als hilfreich erweisen: | ||
/var/log/cups/page_log (spuckt jedes Mal einen neuen Eintrag aus, wenn ein Druckvorgang erfolgreich war) | |||
/var/log/cups/access_log (erstellt eine Liste aller cupsd http1.1. Server-Aktivitäten) | |||
Natürlich ist es wichtig zu wissen, wie CUPS funktioniert, wenn man ein Problem lösen will. CUPS arbeitet in etwa so: | Natürlich ist es wichtig zu wissen, wie CUPS funktioniert, wenn man ein Problem lösen will. CUPS arbeitet in etwa so: | ||
* Eine Anwendung schickt eine PostScript-Datei an den Server. | |||
* CUPS übersetzt diese Datei nun in | * Eine Anwendung schickt eine PostScript-Datei an den Server (im Regelfall ist dies <code>localhost</code>). | ||
* CUPS übersetzt diese Datei nun in ein Format, das vom druckerinternen Protokoll verarbeitet werden kann. Dies geschieht zum Beispiel mit Ghostscript, das über die Druckertreiber herausfindet, wie dies genau funktioniert. | |||
* Diese Datei wird dann an die Druckerschnittstelle gesandt. | * Diese Datei wird dann an die Druckerschnittstelle gesandt. | ||
Zeile 138: | Zeile 134: | ||
=== Textdateien werden nicht gedruckt === | === Textdateien werden nicht gedruckt === | ||
Obwohl der Drucker richtig eingerichtet wurde, kann es passieren, dass Textdateien nicht korrekt aus dem Terminal oder aus dem Texteditor gedruckt werden. Abhilfe kann hier | Obwohl der Drucker richtig eingerichtet wurde, kann es passieren, dass Textdateien nicht korrekt aus dem Terminal oder aus dem Texteditor gedruckt werden. Abhilfe kann hier <code>a2ps</code> verschaffen. Dieses Programm wandelt verschiedene Dateien in PostScript-Dateien um. | ||
pacman -S a2ps | |||
Nach der Installation muss der CUPS-Server neu gestartet werden. | Nach der Installation muss der CUPS-Server neu gestartet werden. | ||
/etc/rc.d/cups restart | |||
=== Der Auftrag wird verarbeitet, aber nicht gedruckt === | === Der Auftrag wird verarbeitet, aber nicht gedruckt === | ||
Zeile 147: | Zeile 146: | ||
Zunächst wird der CUPS-Server gestoppt. | Zunächst wird der CUPS-Server gestoppt. | ||
/etc/rc.d/cups stop | |||
Hiernach deinstalliert man ihn. Des Weiteren müssen alle Konfigurationsdateien entfernt oder gesichert werden. | Hiernach deinstalliert man ihn. Des Weiteren müssen alle Konfigurationsdateien entfernt oder gesichert werden. | ||
pacman -Rd cups | |||
mv /etc/cups /etc/cups.backup | |||
mv /var/cache/cups /var/cache/cups.backup | |||
Nun installiert man den CUPS-Server neu und startet ihn wieder. Danach muss der Drucker wieder neu eingerichtet werden. | Nun installiert man den CUPS-Server neu und startet ihn wieder. Danach muss der Drucker wieder neu eingerichtet werden. | ||
=== CUPS erkennt den Drucker nicht === | pacman -S cups | ||
/etc/rc.d/cups start | |||
Damit kann immerhin sichergestellt werden, dass keine Konfigurationsprobleme vorliegen. | |||
===CUPS erkennt den Drucker nicht=== | |||
Für den Fall, das CUPS den Drucker nicht erkennt, hilft oft das Paket '''hal-cups-utils'''. | Für den Fall, das CUPS den Drucker nicht erkennt, hilft oft das Paket '''hal-cups-utils'''. | ||
Zeile 166: | Zeile 170: | ||
* http://www.turboprint.de {{sprache|de}} | * http://www.turboprint.de {{sprache|de}} | ||
[[Kategorie:Hardware]] | [[Kategorie:Hardware]] | ||
[[Kategorie:Daemons]] | [[Kategorie:Daemons]] |
Version vom 6. Februar 2011, 11:08 Uhr
Direkt von der CUPS-Internetseite: "Das Common Unix Printing System (CUPS) ist eine plattformübergreifende Drucker-Lösung für alle UNIX-Umgebungen. Es basiert auf dem "Internet Printing Protocol" und stellt komplette Drucker-Dienste für die meisten Postscript- und Raster-Drucker bereit. CUPS steht unter der GNU GPL ...". [1] Obwohl es auch andere Drucker-Pakete wie LPRNG gibt, ist CUPS sehr beliebt und relativ einfach zu nutzen. Es ist das Standard-Drucksystem von Arch Linux und vieler anderer Linux-Distributionen.
Installation
Zuert installiert man den CUPS-Server und Ghostcript. Letzteres ist ein Compiler für PostScript.
pacman -S cups ghostscript
Außerdem benötigt man eines der folgenden Treiber-Pakete je nach dem, was für Drucker konfiguriert werden. Im Zweifelsfall ist Gutenprint eine gute Wahl:
- gutenprint - Eine Sammlung hochwertiger Treiber für Canon, Epson, Lexmark, Sony, Olympus und PCL Drucker, die mit Ghostscript, CUPS, Foomatic und GIMP verwendet werden können.
- foomatic, foomatic-db, foomatic-db-engine, foomatic-db-ppd und foomatic-filters - Foomatic ist ein Datenbank-basiertes System, um freie Drucker-Treiber mit gewöhnlichen Spoolern unter Unix zu integrieren.
- foomatic-filters zu installieren sollte beim lösen verschiedener Probleme helfen können, wenn der CUPS-Server im error.log berichtet: "stopped with status 22!".
- hplip - Ein HP Linux Inkjet Treiber. Unterstützt DeskJet, OfficeJet, Photosmart, Business Inkjet und einige LaserJet Modelle.
- splix - Eine Treibersammlung für Drucker, welche mit SPL (Samsung Printer Language) angesteuert werden, vornehmlich Samsung.
- cups-pdf - Ein nettes Paket, das es erlaubt, einen virtuellen PDF-Drucker einzurichten, der alles, was an ihn geschickt wird, in eine PDF-Datei verwandelt.
Wenn das System mit einem Netzwerk-Drucker verbunden ist, der das Samba-Protokoll verwendet, oder als Drucker-Server für Windows-Klienten dienen soll, sollte man Samba installieren:
pacman -S samba
Die Drucker-PPD herunterladen
Eine PPD-Datei ist eine Informationsdatei für PostScript-Drucker (meist vom Hersteller des Druckers bereitgestellt), in der alle relevanten Informationen über den Drucker (Druckertyp, unterstützte Schriften, Auflösung, verwendeter PostScript-Level, Papierformat, etc.) verzeichnet sind.
Abhängig vom Drucker, ist dieser Schritt vielleicht überflüssig und kann übersprungen werden, da die Basisinstallation von CUPS bereits eine ganze Reihe von PPD-Dateien mit sich bringt. Darüber hinaus enthalten foomatic-filters
, gutenprint
und hplip
weitere PPD-Dateien, die automatisch von CUPS erkannt werden.
Falls die PPD-Datei des eigenen Drucker nicht in einem der vorgenannten Pakete zu finden sein sollte, so kann man auf linuxprinting.org nachsehen. Dort wählt man den Hersteller und das Modell des Druckers aus. Dann muss man diese Datei in den CUPS-Ordner kopieren, so dass die Datei erkannt werden kann.
cp your_printer.ppd /usr/share/cups/model/
Wenn das Druckermodell auf der Seite nicht zu finden ist, kann man es mit ähnlichen Modellen versuchen, oder generische Treiber verwenden.
Konfiguration
Es gibt viele Möglichkeiten, den CUPS-Server einzurichten: Über die Kommandozeile, über bereitgestellte Programme der Desktopumgebung oder über die mitgelieferte Webschnittstelle des Servers. Diese Anleitung bezieht sich auf letzteres.
Module laden
Zuerst müssen die Kernelmodule geladen werden. Je nachdem, ob man einen USB- oder einen Parallel-Drucker verwendet, sind diese unterschiedlich.
Seit Version 1.4.x verwendet CUPS ein neues USB-Backend. Das Modul usblp
muss für die Verwendung dieses Backends explizit entladen werden. Damit dies gleich beim Start passiert, muss in der Datei /etc/rc.conf
im MODULES-Array der Eintrag !usblp
hinzugefügt werden.
Sollte hingegen eine CUPS-Version vor 1.4.x oder der Kernel 2.4.x verwendet werden, so sind Module zu laden. Bei Verwendung einer älteren CUPS-Version mit Kernel 2.6.x ist das Modul usblp
zu laden. Bei Verwendung des Kernels 2.4.x muss das Modul printer
geladen werden.
modprobe usblp # bei Kernel 2.6.x modprobe printer # bei Kernel 2.4.x
Dies sollte man auch in das MODULES-Array in der rc.conf schreiben.
MODULES="[…] usblp […]" # bei Kernel 2.6.x MODULES="[…] printer […]" # bei Kernel 2.4.x
Falls man einen selbstkompilierten Kernel verwendet, muss man zuvor gegebenenfalls das Modul usbcore
laden. Wenn alle Module geladen wurden, kann man den Drucker anschließen. Es sollte dann etwa Folgendes ausgegeben werden, wenn man sich das Logfile ansieht.
$ tail /var/log/messages.log Feb 19 20:17:11 kernel: printer.c: usblp0: USB Bidirectional printer dev 2 if 0 alt 0 proto 2 vid 0x04E8 pid 0x300E Feb 19 20:17:11 kernel: usb.c: usblp driver claimed interface cfef3920 Feb 19 20:17:11 kernel: printer.c: v0.13: USB Printer Device Class driver
Wenn man einen Parallel-Drucker nutzen will, ist die Einrichtung fast genau die gleiche. Benutzer des Kernels 2.6.x müssen als erstes folgendes eintippen:
modprobe lp
Danach können sowohl die Nutzer eines 2.4.x-Kernels, als auch die eines 2.6.x-Kernels eingeben:
modprobe parport modprobe parport_pc
Diese Module sollten ebenfalls in das MODULES-Array der rc.conf
eingetragen werden
Nun überprüft man die Einstellungen.
tail /var/log/messages.log
Es sollte folgendes zu sehen sein.
# lp0: using parport0 (polling).
Daemon starten
Wenn die Kernel-Module installiert sind, wird der CUPS-Server als Daemon gestartet.
/etc/rc.d/cups start
CUPS sollte außerdem in das DAEMON-Array der rc.conf
eingetragen werden.
DAEMONS=([…] cups […])
CUPS HTTP Schnittstelle für lokale Drucker
Sobald der Server gestartet ist, ruft man die Webschnittstelle auf: http://localhost:631 Hier klickt man auf den Link, um Drucker hinzuzufügen. Der CUPS-Server sucht automatisch nach den angeschlossenen Druckern; den, der konfiguriert werden soll, klickt man an. Nun kann man dem Drucker einen Trivialnamen geben und eine Beschreibung hinzufügen. Zuletzt wählt man den Druckertreiber bzw. eine PPD-Datei aus und stellt die Standardeinstellungen ein. Der Drucker ist nun eingerichtet und bereit zum Drucken. Man sollte nun eine Testseite drucken, um zu überprüfen, ob alles funktioniert. Dies kann man über das nun offene Menü des Druckers tun oder über die Kommandozeile.
lpr -P <Drucker> datei
<Drucker>
ist hierbei der gewählte Trivialname, datei
eine zuvor erstelle Textdatei. Sofern man nur einen Drucker eingerichtet hat, kann -P <Drucker>
auch weggelassen werden.
CUPS-PDF als virtuellen Drucker einrichten
Zuerst muss das entsprechende Paket installiert werden.
pacman -S cups-pdf
Über das Webinterface wird der neue Drucker als CUPS-PDF (Virtual PDF Printer) angelegt. Dazu klickt man auf „Verwaltung“ und dort auf den Button „Drucker hinzufügen“ im Abschnitt „Drucker“. Im nächsten Dialog wählt man „Local Printers: CUPS-PDF (Virtual PDF Printer)“ aus.
Klickt man auf „Fortsetzen“ sieht man im darauffolgenden Dialog als URI des Druckers die Angabe cups-pdf:/
. Weiter geht es mit der Auswahl des Druckerherstellers. Hier wählt man „Generic“ aus der Herstellerliste. Als Model wählt man „Generic CUPS-PDF Printer (en)“. Um die neue Konfiguration zu aktivieren, muss der CUPS-Server neu gestartet werden.
/etc/rc.d/cups restart
Zuvor kann man in der Datei /etc/cups/cups-pdf.conf
im Abschnitt „CUPS-PDF output directory“ Einfluss darauf nehmen, in welches Verzeichnis die erzeugten PDF-Dateien später abgelegt werden sollen.
Problemlösungen
Um den Druck zum Laufen zu bringen, sollte man am besten den LogLevel in /etc/cups/cupsd.conf
so einstellen:
LogLevel debug2
Dann kann man die Ausgabe von /var/log/cups/error_log
mit diesem Befehl betrachten:
tail -n 100 -f /var/log/cups/error_log
Die Buchstaben auf der linken Seite der Ausgabe stehen für:
- D = Debug
- E = Error (Fehler)
- I = Information
Die folgenden Dateien können sich ebenfalls als hilfreich erweisen:
/var/log/cups/page_log (spuckt jedes Mal einen neuen Eintrag aus, wenn ein Druckvorgang erfolgreich war) /var/log/cups/access_log (erstellt eine Liste aller cupsd http1.1. Server-Aktivitäten)
Natürlich ist es wichtig zu wissen, wie CUPS funktioniert, wenn man ein Problem lösen will. CUPS arbeitet in etwa so:
* Eine Anwendung schickt eine PostScript-Datei an den Server (im Regelfall ist dies localhost
).
* CUPS übersetzt diese Datei nun in ein Format, das vom druckerinternen Protokoll verarbeitet werden kann. Dies geschieht zum Beispiel mit Ghostscript, das über die Druckertreiber herausfindet, wie dies genau funktioniert.
* Diese Datei wird dann an die Druckerschnittstelle gesandt.
In der Datei error.log
wird dies dokumentiert.
Textdateien werden nicht gedruckt
Obwohl der Drucker richtig eingerichtet wurde, kann es passieren, dass Textdateien nicht korrekt aus dem Terminal oder aus dem Texteditor gedruckt werden. Abhilfe kann hier a2ps
verschaffen. Dieses Programm wandelt verschiedene Dateien in PostScript-Dateien um.
pacman -S a2ps
Nach der Installation muss der CUPS-Server neu gestartet werden.
/etc/rc.d/cups restart
Der Auftrag wird verarbeitet, aber nicht gedruckt
Obwohl der Drucker korrekt konfiguriert wurde und Aufträge annimmt und diese auch als verarbeitet angezeigt werden, erhält man keinen Ausdruck. Die Lösung für dieses Problem ist folgende:
Zunächst wird der CUPS-Server gestoppt.
/etc/rc.d/cups stop
Hiernach deinstalliert man ihn. Des Weiteren müssen alle Konfigurationsdateien entfernt oder gesichert werden.
pacman -Rd cups mv /etc/cups /etc/cups.backup mv /var/cache/cups /var/cache/cups.backup
Nun installiert man den CUPS-Server neu und startet ihn wieder. Danach muss der Drucker wieder neu eingerichtet werden.
pacman -S cups /etc/rc.d/cups start
Damit kann immerhin sichergestellt werden, dass keine Konfigurationsprobleme vorliegen.
CUPS erkennt den Drucker nicht
Für den Fall, das CUPS den Drucker nicht erkennt, hilft oft das Paket hal-cups-utils.