Druckereinrichtung

Es gibt zwei grundlegende Philosophien beim Drucken: entweder kümmert sich die Anwendung um alle Druckerspezifika oder das Betriebssystem. Bei DOS ist es normalerweise die Anwendung. Bei Linux/Unix das Betriebssystem. Um aus einer DOS-Applikation heraus zu drucken, ist es normalerweise erforderlich, im DOS-Programm die Drucker-Escape-Sequenzen zu konfigurieren. Das DOS-Programm schickte dann den Druckauftrag mit den Escape-Sequenzen an den parallelen Port. D.h., dass aus DOS-Programmen heraus nur die alten Drucker aus DOS-Zeiten angesteuert werden können. Moderne Laserdrucker können nur mit einigem Aufwand angesteuert werden.

Um den Ausdruck eines DOS-Programms auf den Drucker am parallelen Port drucken zu können, richtet man in CUPS (wird heute standardmäßig als Druckerserver in Linux-Distributionen mitgeliefert) einen Rohdatendrucker ein. Geben Sie dem Rohdatendrucker als Beispiel den Namen "raw". Wenn die Escape- Sequenzen des Druckers bekannt sind, kann dieser Drucker auch an einer USB-Schnittstelle angeschlossen sein. Nun geben Sie den Rohdatendrucker in der Datei /home/user/.dosemurc mit

$_printer = "raw"

an.

Damit klappt der Ausdruck normalerweise ohne Probleme. Falls dies nicht klappt, sollte man alle Printer-Einstellungen in der /home/user/.dosemurc-Datei weglassen und in der Datei /etc/dosemu/dosemu.conf die Zeilen mit "lpt*" und folgende editieren:

$_lpt1 = "lpr -l -Praw"
$_lpt2 = "lpr -l -P[weiterer Druckername]"

ohne Leerzeichen zwischen "-P" und Druckername.

Um den Druck zu beschleunigen, kann probiert werden:

$_printer_timeout = (1)

Dies kann allerdings zu unvorhergesehen Ausdrucken führen. Damit muss also experimentiert werden.

Drucken über das Netzwerk mit CUPS

Problem: in der Anmeldung einer Arztpraxis stehen der Linux-Server (Hostname Server, IP-Adresse 192.168.1.10), an dem ein Laserdrucker für die Arztbriefe angeschlossen ist. An einem Linux-Client (Hostname Anmeldung1, IP-Adresse 192.168.1.11) ist ein OKI 390 FB-Drucker für den Formulardruck angeschlossen. Ein weiterer Linux-Client (Hostname Anmeldung2, IP-Adresse 192.168.1.12) soll ebenso wie der Linux-Server von APW-DOS aus auf den OKI-Drucker Formulare ausdrucken können. Auf allen PCs läuft CUPS.

Eine schöne Anleitung zu diesem Thema finden Sie auch auf der Webseite Drucker-Freigabe mit CUPS.

Zunächst richten wir CUPS auf dem Linux-Client Anmeldung1 als Drucker-Server ein: loggen Sie sich als root ein. Wie im obigen Abschnitt beschrieben, legen Sie einen Drucker "Oki" mit Treiber "raw" an. Kopieren Sie die entstandene Datei /etc/printcap.cups nach /etc/printcap und tragen Sie den Druckernamen in der DOSemu-Konfigurationsdatei /home/praxis/.dosemurc mit

$_printer = "Oki"
$_printer_timeout = (1)

ein. Jetzt sollte der Druck am Linux-Client Anmeldung1 aus DOSemu/APW-DOS auf den Drucker funktionieren.

Nun editieren Sie die Datei /etc/cups/cupsd.conf im Abschnitt "Browsing Options". Die entsprechenden Optionen müssen folgendermaßen geändert werden:

Browsing On
BrowseProtocols cups
BrowseAddress 192.168.1.255
BrowseAllow 192.168.1.*
BrowseInterval 30
BrowsePort 631

Den Abschnitt "<Location />" ändern Sie wie folgt:


<Location />
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 192.168.1.*
</Location>

Danach CUPS neu starten, damit die Konfiguration eingelesen wird. Eventuell müssen Sie den Server und Anmeldung2 in der Datei /etc/hosts.allow eintragen mit

cupsd: 192.168.1.10 , 192.168.1.11

damit die beiden Rechner auf CUPS zugreifen dürfen.

Nun meldet man sich auf Anmeldung2 als root an. In der Datei /etc/hosts muss der Rechner Anmeldung1 mit

192.168.1.11      Anmeldung1

bekannt gemacht werden. Die Datei /etc/cups/cupsd.conf wird im Abschnitt "Browsing Options" folgendermaßen geändert.

Browsing On
BrowseProtocols cups
BrowseAddress 192.168.1.255
BrowseShortNames No
BrowseInterval 30
BrowsePort 631

Auch hier CUPS neu starten. Sie sollten jetzt über die CUPS-Konfigurations-Webseite http://localhost:631/ den Drucker "Oki@Anmeldung1" angezeigt bekommen. Ein Testausdruck funktioniert bei einem Rohdatendrucker nicht. Suchen Sie sich stattdessen eine kurze Shellskript-Datei aus und lassen diese versuchsweise mit:

lpr -POki@Anmeldung1 <Skriptdatei>

auf dem Oki-Drucker ausdrucken. Die Datei /etc/printcap.cups kopieren Sie wieder nach /etc/printcap.

In der Datei /home/praxis/.dosemurc muss jetzt noch der Drucker "NetzOki" unter

$_printer = "Oki@Anmeldung1"
$_printer_timeout = (1)

eingetragen werden. Der Druck aus APW-DOS auf Anmeldung2 auf den Oki-Drucker an Anmeldung1 sollte jetzt funktionieren.

CUPS am Server muss ebenso eingerichtet werden. Sie können am Server einen weiteren Drucker "Laser" einrichten, auf den Sie dann z.B. mit OpenOffice drucken können. Wenn Sie am Server CUPS als Druckerserver einrichten, können Sie entsprechend von Anmeldung1 aus auf den Laser-Drucker ausdrucken.