Drucker-Dienst mit lpd
Linux
pk-applets
 

Drucker-Einrichtung

Bei der Installation von SuSE-Linux wird i.A. eine Gerätedatei /dev/lp0, /dev/lp1 oder /dev/lp2  mit der parallelen Schnittstelle
verbunden. Der Druckerdeamon lpd ist bei älteren Versionen installiert.

Wir testen die Gerätedatei, indem wir eine Textdatei, hier /etc/hosts,  dorthin senden. Der Drucker sollte dann reagieren.
Befehl
cat  /etc/hosts > /dev/lp0  bzw
cat  /etc/hosts > /dev/lp1

Mit Yast wird nun der Drucker installiert. I.A. sollte man unter Linux PostScript-Drucker benutzen. Als Netzwerk-Drucker eignen sich aber andere auch:

Yast, Administration des Systems, Hardware integrieren , Drucker konfigurieren:
Das genaue Druckermodell ist nur wichtig, wenn man Graphikdruck unter Linux  möchte.
Nach erfolgreicher Einrichtung sind nun die Spool-Verzeichnisse eingerichtet
und zwar in  /var/spool/lpd

Hier sind die Verzeichnisse ascii , lp , raw zu finden:
'ascii' :  Textausdruck.
'lp' :  (oft primitiver) Druckertreiber für Ausdruck unter Linux
'raw'  :  dient dem Ausdruck im Netz
 

Test:


Ausdruck übers Netz

ist nun ein einfacher Vorgang: Ergänze im Global-Teil durch   printing = bsd  und als share:

[HP-Netz]
      path = /tmp
      printable = yes

In path steht wertneutral /tmp.
Fehlgeleitete Druckaufträge findet man dann dort!

Damit nun Samba die eingehenden Druckeraufträge richtig zuordnet, ist die share-Bezeichnung hier wichtig:
- Entweder man benützt hier eine Bezeichnung aus der betreffenden Zeile  von etc/printcap
- oder man fügt eine entsprechende Bezeichnung hinzu

Auszug aus /etc/printcap:
 
raw|HP-Netz|lp3|laserjet-a4-raw|laserjet a4 raw:\
:lp=/dev/lp0:\
:sd=/var/spool/lpd/laserjet-a4-raw:\
:lf=/var/spool/lpd/laserjet-a4-raw/log:\
:af=/var/spool/lpd/laserjet-a4-raw/acct:\
:if=/var/lib/apsfilter/bin/laserjet-a4-raw:\
:la@:mx#0:\
:tr=:cl:sh:sf:

Die erste Zeile enthält die Bezeichnungen, die für das share benutzt werden können. Sie sind durch '|' getrennt. HP-Netz wurde von Hand eingefügt.

Eine weitere Konfiguration am Serversystem ist i.A. nicht nötig. Wenn wirklich noch etwas einszustellen ist, so studiert man die
apsfilterrc-Dateien:
Unser Drucker erzeugte zu jedem Ausdruck eine zusätzliche Leerseite. Ein Befehl FORMFEED kommt von Winndows-Programm, das schließlich die Seite draußen haben will. Der Zweite Befehl von Linux, das den Inhalt vom RAW-Spooler mit FORMFEED-Befehl abschickt.
Dies wird in der apsfilterrc.XXX (XXX=Druckerbezeichnung) durch Auskommentieren der Anweisung PRINT_RAW_SUPPRESS_FORMFEED="yes" unterdrückt.
 

Einstellungen am Client
Die übrige Arbeit erfolgt am Client: Der Drucker sollte nun als share des Linux-Servers mit Druckersymbol nach dem Samba-Restart in der Netzwerkumgebung von einem Clients aus zu sehen sein. Doppelklick darauf, und die Aufforderung zur Einrichtung erscheint.
Ist am Client lokal ein Drucker angeschlossen, so wähle als Schnittstelle  nicht die besetzte aus, also statt LPT1 besser  LPT2
Ansonsten wird der Druckertreiber wie unter Windows 95/98 üblich installiert. Bei einem Ausdruck am Client erstellt nun der Druckertreiber des Clients die Daten, die direkt an den Drucker gehen. Diese gehen übers Netz und landen im Spooler 'raw'. Der lpd-Deamon schickt sie dann an den Drucker.

Drucker-Befehle:
 
lpd Druckerspooler-Deamon
lpc Druckerspooler-Deamon control erwartet Befehle.
lpc status
lpr Einreihen in den Spooler. 
z.B.:   lpr -Pascii  Datei
Datei wird in ascii Warteschlange eingereiht.
lpq Anzeigen einer Warteschlange
z.B. lpq -Pascii
lprm Aus Warteschlange entfernen
z.B. lprm  -Pascii 2  löscht den  2. Eintrag