Berkeley Printing System

Aus Mikiwiki
(Weitergeleitet von Line Printer Remote Protocol)
Zur Navigation springen Zur Suche springen

Das Drucksystem Berkeley Printing System (auch: Berkeley lpd, BSD-System, Line Printer Daemon Protocol / LPD, Line Printer Remote Protocol / LPR) besteht aus Netzwerkprotokollen und Software, um Druckaufträge im Rechnernetz verschicken zu können. Dieses Drucksystem wurde bereits in andere Betriebssysteme als Unix (z. B. Linux, Mac OS X) übernommen und hat sich zu einem Quasi-Standard für TCP/IP-Drucker entwickelt.

Der Daemon lpd (line printer daemon) nimmt über eine TCP-Verbindung Befehle entgegen, um einen lokal angeschlossenen Drucker zu steuern. Das Line Printer Daemon Protocol / LPDP (RFC 1179) verwendet standardmässig den Port 515.

Im Betriebssystem Microsoft Windows heisst die Implementation "Druckdienste für UNIX". Entfernte Drucker werden als LPR-Port (Line Printer Remote) eingebunden und wie lokale Drucker behandelt.

Befehle

Befehl Beschreibung
lpr Schickt einen Auftrag an den Drucker.
lprm Löscht einen Auftrag aus der Druckerwarteschlange.
lpq Zeigt Drucker und ihre Druckerwarteschlange.
lpd Der Drucker-Daemon, der die Druckanforderungen behandelt.
lpc Steuert den Drucker-Daemon lpd.
lpmove verschiebt einen Druckauftrag zu einem anderen Drucker.

Konfiguration

Die Konfiguration findet in der Datei "/etc/printcap" statt.

Starten des Druckauftrags

Der Server-Daemon des Druckdienstes heisst lpd. Um als Anwender Dateien in das Spoolverzeichnis des Dienstes zu schreiben, wird das Frontendprogramm lpr verwendet. Der Druckername ist in der Druckerkonfigurationsdatei "/etc/printcap" hinterlegt. Dort steht auch, ob der Drucker direkt am lokalen Rechner angeschlossen ist oder ob er über das Rechnernetz erreichbar ist.

Ausgabe der Datei "file" auf den Standarddrucker, der der Umgebungsvariable "PRINTER" entnommen wird.

$ lpr file

Ausdruck der Druckkonfigurationsdatei "/etc/printcap" mit einer Titelzeile.

$ pr -h "/etc/printcap vom 18.04.2003" /etc/printcap | lpr

Erzeugung der Prozessliste mit ps, Formatierung mit pr und anschliessender Ausdruck.

$ ps -alx | pr -h "ps um 13:27" | lpr

Ausdruck der mittels a2ps veränderten Datei "file" auf dem Drucker "drucker1".

$ a2ps file | lpr -Pdrucker1

Druckkontrolle

Anzeige der laufenden Druckaufträge für den Standarddrucker.

$ lpq

Anzeige der laufenden Druckaufträge für den Drucker "drucker1".

$ lpq -Pdrucker1

Löschen in der Warteschlange eingestellter Druckaufträge mittels der Druckauftragsnummer. Das funktioniert nur, solange der Druckdämon den Auftrag noch nicht in Bearbeitung hat.

$ lprm

FAQ

Entfernen einer "banner page"

Problem: Es gibt einen Drucker, der trotz gesetztem Schalter "-h" im Druckskript weiterhin eine zusätzliche Seite ausdruckt. Darauf steht jeweils:

User: sieraak1
Host: sun2000
Class: sun2000
Job: 4386-1

Lösung: Es gibt zwei "banner pages"; eine wird vom Spooler erzeugt (diese kann über lpadmin und die Option "-h" in lpr weggeschaltet werden); eine weitere wird vom Drucker erzeugt, wenn als Protokoll LPD verwendet wird und wenn diese Eigenschaft im Drucker aktiviert ist; es lässt sich am Drucker über die Menüführung abschalten oder (bei HP Laserjet) über einen Telnet-Zigriff auf Port 23 konfigurieren.

$ telnet 172.16.11.3
Connected to 172.16.11.3.
HP JetDirect
Please type "?" for HELP, or "/" for current settings
> /
===JetDirect Telnet Configuration===
Firmware Rev.   : H.07.17
MAC Address     : 00:10:83:56:07:14
Config By       : USER SPECIFIED

IP Address      : 172.16.11.3
Subnet Mask     : 255.255.0.0
Default Gateway : 172.16.1.1
Syslog Server   : Not Specified
Idle Timeout    : 90 Seconds
Set Cmnty Name  : Not Specified
Host Name       : NPI560714

DHCP Config     : Disabled
Passwd          : Disabled
IPX/SPX         : Enabled
DLC/LLC         : Disabled
Ethertalk       : Disabled
Banner page     : Enabled

> banner: 0
> /
> quit
User Quitting
Connection closed by foreign host.

Weblinks

Herausgeber Sprache Webseitentitel Anmerkungen
Wikipedia eng Line Printer Daemon protocolwbm Enzyklopädischer Artikel