AA_123rf-54795604_Loopall-123RF.jpg

© Loopall, 123RF

Shell-Befehle für die Administration von Cups

Drucken auf Kommando

Ein Raspberry Pi eignet sich bestens als Druckserver für kleine Netze, zumal sich der Server-Dienst Cups auch abseits von Web- und GUI-Oberflächen via Terminal verwalten lässt.

Der Raspberry Pi bietet sich als kleiner Printserver geradezu an. Als klassische Softwarelösung dafür dient das Common Unix Printing System oder kurz Cups, das weniger komfortable Druckdienste aus dem Linux- und Unix-Umfeld wie Lpd oder Lprng ersetzt. Sie installieren Cups mit den Befehlen aus Listing 1.

Als Grundlage verwendet der Dienst PPD-Dateien (Postscript Printer Description), die die Eigenschaften eines Druckers enthalten. Dazu gehören unter anderem die mögliche Auflösung, die nutzbaren Farben sowie die Arten, Formate, Einzüge und Kassetten für das Papier. Für viele weit verbreitete Modelle bringt Cups solche PPD-Beschreibungen schon mit. Im Zweifelsfall verwenden Sie das PPD, das der Hersteller des Druckers dem jeweiligen Gerät beigelegt hat. Die meisten Anbieter stellen solche PPDs für Geräte bereit, die sich auch zum Einsatz unter Apple OS X eignen.

Das Funktionsprinzip von Cups gestaltet sich recht einfach. Die Anwendungen senden ihren Druckauftrag an den Cups-Scheduler. Der verwaltet die Warteschlangen und sorgt für deren sequenzielles Abarbeiten. Er leitet die Druckdaten an einen Konverter (Filter) weiter, der sie in das Postscript-Format (PS) umsetzt. Die erzeugten PS-Daten landen schließlich bei einem PS-Drucker, einem weiteren Cups-Server oder einem Backend. Letzteres wandelt die PS-Daten im Bedarfsfall in ein Format um, das ein Nicht-Postscript-Drucker verarbeiten kann.

Listing 1

$ sudo apt update
$ sudo apt dist-upgrade
$ sudo apt install cups printer-driver-gutenprint

Drucker und Warteschlangen

Das Verwalten von Cups außerhalb der grafischen Oberfläche unterscheidet sich durch verschiedene Einzelbefehle gegenüber den klassischen Werkzeugen. Dieser Artikel wechselt bei der Beschreibung zwischen Druckern und Warteschlangen – für Shell-Kommandos ist das meistens gleichbedeutend. Es gilt aber, zu beachten, dass Sie für einen Drucker mehrere Warteschlangen einrichten können. Das ist dann sinnvoll, wenn Sie Geräte etwa mit Erweiterungen wie zusätzlichen Papierkassetten ausstatten und diese mit verschiedenem Papier befüllen.

Grundsätzlich besteht die Druckerverwaltung aus einer Sammlung von kleinen Programmen, die jedes für sich einen bestimmten Zweck erfüllen. Die Tabelle "Cups-Verwaltung" listet sie zusammen mit den jeweiligen Aufgaben auf. Einstellungen am Printserver erfordern stets administrative Rechte. Melden Sie sich deshalb entweder als Benutzer root am System an, oder führen Sie die Kommandos mit vorangestelltem sudo aus.

Cups-Verwaltung

Kommando Aufgabe
lpadmin Druckerwarteschlangen konfigurieren
lpinfo unterstützte Geräte auflisten
lpoptions Druckeroptionen auflisten und setzen
lpstat Druckerstatus abfragen
lpc  Druckerstatus abfragen (Cups-Version)
cupsctl Optionen von Cupsd konfigurieren
cupsaccept Druckaufträge annehmen
cupsreject Druckaufträge ablehnen
cupsenable Druckerwarteschlange starten
cupsdisable Druckerwarteschlange beenden
cupsaddsmb Drucker über Samba für Windows-Clients anbieten

Vorarbeiten

Als Erstes kopieren Sie alle verfügbaren PPD-Dateien der anzusteuernden Drucker in das Verzeichnis /etc/cups/ppd. Ermitteln Sie alle notwendigen Daten der Drucker: Schnittstelle (USB/Seriell/Paralell) oder IP-Adresse, Hostname (falls verwendet), genaue Modellbezeichnung, installierte Erweiterungen (zweite Papierkassette, zusätzliche Ablagen, Speichererweiterungen, Schriften-ROMs, etc.). Bei Netzwerkdruckern müssen Sie zudem ermitteln, welche Protokolle und Ports der Drucker nutzt. Im Zweifelsfall hilft bei einem eingeschalteten Netzwerkdrucker ein Portscan via Nmap (Abbildung 1).

Abbildung 1: Um zu ermitteln, welche Ports und Protokolle ein Netzwerkdrucker verwendet, leistet der Portscanner Nmap wertvolle Dienste.

In unserem Beispiel handelt es sich um einen Kyocera FS-2000 älteren Baujahrs. Die Ausgabe zeigt, dass dieser das Internet Printing Protocol (IPP) auf Port 631 verwendet. Daneben kennt er das von HP entwickelte JetDirect-Protokoll, ersichtlich an den offenen Ports 9100 bis 9103. Daneben unterstützt er auch das von Lpd und Lprng genutzte Line Printer Daemon Protocol (Port 515).

Um einen Drucker über den USB-Port einzubinden, schließen Sie diesen an und führen nach dem Einschalten das Kommando lpinfo -v aus. Sie erhalten damit die für das spätere Vorgehen wichtige Geräte-URL (Abbildung 2). Damit Sie den Drucker beim Anlegen richtig ansprechen können, müssen Sie dessen URL entsprechend formulieren. Entsprechende Muster zeigt Ihnen die Tabelle "Drucker-URLs". Bei einem Raspberry Pi als Printserver geben Sie dessen Hostnamen oder IP-Adresse an.

Abbildung 2: Das Kommando lpinfo -v startet eine Abfrage aller physikalisch am Rechner angeschlossener Drucker – im Beispiel ein Kyocera FS-1370DN am USB-Port.

Drucker-URLs

Schnittstelle Angabe Beispiel
USB-Anschluss usb://Hersteller/Modell?Seriennummer usb://Kyocera/FS-1370DN?serial=Q660918195
  usb:/dev/usb/lpNummer usb:/dev/usb/lp0
Netzwerk LPD lpd://Hostname/Warteschlange lpd://fs2000/lp1
  lpd://IP-Adresse/Warteschlange lpd://192.168.0.53/lp1
Netzwerk Socket socket://Hostname/Port socket://fs2000:9100
  socket://IP-Adresse/Port socket://192.168.0.53:9100
Netzwerk IPP ipp://Hostname:631 ipp://fs2000:631
  ipp://IP-Adresse:631 ipp://192.168.0.53:631

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Schöner drucken
    Linux setzt beim Thema Drucken auf das Common Unix Printing System (CUPS) und auf das Dateiformat PostScript. Darüber mehr zu erfahren, kann nützlich sein und für mehr Komfort beim Drucken sorgen.
  • Handarbeit
    Die meisten Nutzer drucken Dokumente aus einer Anwendung mit grafischer Oberfläche heraus. In einigen Situationen erweist es sich aber als sinnvoller, den Printserver Cups per Kommandozeile zu bedienen.
  • Know-how für die Kommandozeile
    Erfahrene Linux-Nutzer schwören auf flexible Kommandozeilentools, mit denen sich manche Aufgabe schneller bewältigen lässt als in grafischen Programmen. Wir stellen die wichtigsten Anwendungen vor, um auch Einsteiger zu einem Ausflug in die Shell zu ermutigen.
  • CUPS als Printserver konfigurieren
    Einen Drucker mit anderen Benutzern zu teilen, schont den Geldbeutel und lastet die Hardware-Ressourcen besser aus. Hängt der Drucker an einem CUPS-Server lassen sich Dokumente sogar von Apple- oder Microsoft-Clients ausgeben.
  • Drucker von der Kommandozeile steuern
    In der Regel druckt es sich bequem über entsprechende Dialoge in den Anwendungen. Wer Dateien aber noch mit Filtern nachbearbeiten möchte, muss anschließend von Hand drucken: Wir geben eine Einführung in lpr & Co.
Kommentare

Infos zur Publikation

LU 10/2017: Daten retten & sichern

Digitale Ausgabe: Preis € 8,50
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Lieber Linux oder Windows- Betriebssystem?
Sina Kaul, 13.10.2017 16:17, 2 Antworten
Hallo, bis jetzt hatte ich immer nur mit
IT-Kurse
Alice Trader, 26.09.2017 11:35, 2 Antworten
Hallo liebe Community, ich brauche Hilfe und bin sehr verzweifelt. Ih bin noch sehr neu in eure...
Backup mit KUP unter Suse 42.3
Horst Schwarz, 24.09.2017 13:16, 3 Antworten
Ich möchte auch wieder unter Suse 42.3 mit Kup meine Backup durchführen. Eine Installationsmöglic...
kein foto, etc. upload möglich, wo liegt mein fehler?
kerstin brums, 17.09.2017 22:08, 5 Antworten
moin, zum erstellen einer einfachen wordpress website kann ich keine fotos uploaden. vom rechne...
Arch Linux Netzwerkkonfigurationen
Franziska Schley, 15.09.2017 18:04, 0 Antworten
Moin liebe Linux community, ich habe momentan Probleme mit der Einstellung des Lan/Wlan in Arc...