Dieses Kapitel wurde
freundlicherweise zur Verfügung gestellt von:
Helge Klug
9.0 Samba als Print-Server
Kurzfassung
In der Dokumentation 'Samba als Print-Server' wird auf die Druckerdienste
des SMB-Protokolls (Service Message Block) eingegangen.
Die Konfiguration wurde an allen gängigen Windows Versionen erfolgreich
getestet. Die Grundkonfiguration der 'global section' (vgl. Kapitel
6) wird beibehalten und wird hier nicht weiter behandelt. Auf
welche Weise der Drucker unter Linux bzw. Samba Konfiguriert wird, wird
nachfolgend erläutert.
9.1 Einleitung
Die Aufgabe, Dateien aus einem UNIX-Betriebssystem in ein Windowsnetzwerk
frei zu geben, stellt den größten Verwendungszweck von Samba da. Das SMB-Protokoll
ermöglicht es aber auch, Computern einen UNIX-Drucker zur Verfügung zu
stellen, auf denen ein Betriebssystem von Microsoft installiert ist. Im
Gegensatz zur Dateifreigabe ist die Kommunikation mit dem Drucker eine
'Einbahnstraße'. Information werden größtenteils nur in einer Richtung
des Druckers gesandt, wobei die Benutzerrechte vernachlässigbar sind.
Der Vorteil Samba auch als Print-Server zu verwenden kann leicht nachvollzogen
werden; Der Drucker ist im Netzwerk von jedem Client zu jeder Zeit ohne
zusätzlichen Print-Server verfügbar.
9.2 Drucker Einrichten unter Linux
Im Folgenden wird die Einbindung eines HP 690C unter Linux durchgeführt.
Bei der Auswahl eines Druckers ist zu beachten, dass der nötige Treiber
bzw. ein Ersatztreiber für das Betriebssystem zur Verfügung steht. Hersteller
wie z.B. Canon bieten direkt keine Treiber für Linux-Betriebsssteme an.
Es besteht aber die Möglichkeit einen passenden Treiber von einem Fremdanbieter
zu benutzen. Welcher Drucker mit welchem Treiber harmoniert kann auf http://www.linuxprinting.org
eruiert werden.
9.2.1 Mit 'YAST' (SUSE Linux)
Am sichersten und vor allem am einfachsten einen Drucker unter SUSE-Linux
(Software und System-Entwickelung) zu installieren,
ist der Gebrauch von 'Yast' (yet another setup tool).
Die Installation erfolgt komfortabel über eine graphische Benutzeroberfläche
(GUI (Graphical User Interface)). Sie gibt die passenden
Schritte der Konfiguration vor. 'Yast' steht auch im Textmodus zur Verfügung.
Letzterer unterscheidet sich lediglich in der Handhabung und den optischen
Aspekten. Im Folgenden wird die Konfiguration über KDE (KDesktop
Environment) erstellt. Über die Startmenüleiste wird 'Yast' gestartet.
Abbildung 1: Installation via 'Yast' 1/7
Abbildung 2: Installation via 'Yast' 2/7
Der Drucker wird unter 'Yast' erkannt. Damit dieser dem System auch zur
Verfügung stehen kann wird im Folgenden 'Konfigurieren..' ausgewählt.
Abbildung 3: Installation via 'Yast' 3/7
Abbildung 4: Installation via 'Yast' 4/7
'Yast' stellt dem Linux-System drei Konfigurationen zu Verfügung. Je
nach gewünschter Druckqualität kann ein Modus gewählt werde.
Abbildung 5: Installation via 'Yast' 5/7
Eine Testseite sollte erstellt werden, damit wird sichergestellt, dass
der Drucker funktionstüchtig ist.
Abbildung 6: Installation via 'Yast' 6/7
Abbildung 7: Installation via 'Yast' 7/7
Die Einstellungen werden gespeichert. Der Drucker steht dem System zur
Verfügung
9.2.2 Mit 'printtool' (z.B. Mandrake-Linux)
GUI-basierende Distributionen (wie z.B. Red Hat & Mandrake) bieten für
die Konfiguration eines Druckers das Konfigurationstool 'printtool' an.
Dieses tool unterscheidet sich in der Menüführung in den jeweiligen Distributionen.
Im Folgenden wird 'printtool' über KDE von Mandrake-Linux aufgerufen.
Das Programm wird mit dem Befehl
printtool
im Terminalfenster aufgerufen. Beim ersten Aufruf von 'printtool' müssen
noch einige Software-Pakete installiert werden. Die Auswahl der speziellen
Pakete erfolgt selbsttätig vom Konfigurationstool. Nachdem die benötigten
Ressourcen installiert sind, öffnet sich das in Abbildung 8 dargestellte
Hauptfenster.
Abbildung 8: Installation via 'printtool' 1/11
Klicken Sie auf 'Drucker hinzufügen'.
Abbildung 9: Installation via 'printtool' 2/11
Abbildung 10: Installation via 'printtool' 3/11
In Abbildung 10 wird der Standort des Druckers bestimmt. Da ein lokaler
Drucker installiert werden soll, brauch nur die erste Auswahl markiert
werden.
Abbildung 11: Installation via 'printtool' 4/11
'Printtool' hat den HP-Drucker am ersten Parallelport gefunden.
Abbildung 12: Installation via 'printtool' 5/11
Die bei 'Druckername' eingetragene Bezeichnung, wird später von Samba
übernommen und kann unter Swat (Samba web administration
tool) nicht geändert werden. Die Informationen dieser Eingabemaske
werden unter 'etc/printercap' abgespeichert.
Abbildung 13: Installation via 'printtool' 6/11
In den meisten Fällen kann 'printtool' den Druckertreiber selbst bestimmen.
Dies ist besonders bei häufig verwendeten Druckertypen der Fall. Wird
der Drucker nicht richtig erkannt, muss auf die manuelle Auswahl zurückgegriffen
werden. Da anscheinend kein direkter Treiber vorhanden ist, muss hier
der Ersatztreiber angegeben werden.
Abbildung 14: Installation via 'printtool' 7/11
Abbildung 15: Installation via 'printtool' 8/11
Um möglichen Fehlerursachen vorzubeugen sollte eine Testseite ausgedruckt
werden.
Abbildung 16: Installation via 'printtool' 9/11
Abbildung 17: Installation via 'printtool' 10/11
Abbildung 18: Installation via 'printtool' 11/11
9.3 Drucker Einrichten unter Samba
Die erfolgreiche Installation unter Linux ist beendet. Damit der Drucker
auch über das NeTBIOS-Protokoll (Network Basic Input/Output
System) erreichbar ist und so für Windows verwendet werden kann,
müssen einige Variablen neu deklariert werden.
9.3.1 Die 'global section'
Vergleichen Sie Ihre Einstellungen mit denen in der Auflistung in Tabelle
1. Es handelt sich um 'Default'-Einstellungen.
Tabelle 1: global section Einstellungen
Variable
Einstellung
load printers
Yes
printcap name
/etc/printcap
print command
lpr -r -P%p %s
lpq command
lpq -P%p
9.3.2 Das Share 'printer'
Linux kann über Parallel-, Com- oder USB-Ports viele Drucker verwalten.
Am Einfachsten die Drucker auch für Windows bereitzustellen liegt in der
Besonderheit des Shares 'printers'. Dieses Verzeichnis lässt alle installierten
Drucker aus der Datei '/etc/printercap' auslesen und erzeugt dementsprechend
viele Druckerfeigaben (Warteschlangen). Die erzeugten Druckerfreigaben
sind unter 'Swat' am Anfang mit einem '*' versehen und können nicht gelöscht
werden. Im Beispiel (vgl. Tabelle 2 und 3) wird ein HP-Drucker dem Netzwerk
zur Verfügung gestellt. Die Konfiguration wird wie eine Verzeichnisfreigabe
behandelt. Unter dem Administrationstool 'Swat' muss der Menüpunkt 'PRINTERS'
(vgl. Abbildung 19) angewählt werden, damit die druckerspezifischen Eingabemasken
zur Verfügung stehen. Es ist drauf zu achten, dass die Deklaration 'printable
= Yes' gesetzt ist. Die Variable wird für die Umsetzung einer Verzeichnis-
zu einer Druckerfreigabe benötigt.
Abbildung 19: Druckerverzeichnis auf 'Swat'
Damit die installierten Drucker aus der '/etc/printerscap' ausgelesen
werden können, muss als erstes das Verzeichnis 'printers' angelegt werden.
Bei einer Neuinstallation ist die Freigabe schon vorgegeben. Im müssen
die Variablen, wie in Tabelle 2 deklariert sein.
Tabelle 2: Die Grundfreigabe
[printers]
comment
Alle Drucker
path
/var/spool/samba
creat mask
0700
printable
Yes
browseable
No
Im Verzeichnis '/var/spool/samba' legt Samba die zu druckenden Dokumente
ab. Ein 'sticky bit' (t-bit) sollte für dieses Verzeichnis gesetzt werden.
So wird verhindert, dass anstehende Druckaufträge gelöscht werden, wenn
ein neuer Druckauftrag angenommen wird. Das Anlegen des 'sticky bit's'
wird über die Konsole mit
chmod 1777 /var/spool/samba
vorgenommen. Die 'printercap' muss im nächsten Schritt von Samba eingelesen
werden. Dies geschieht entweder über 'Swat' im Abschnitt 'Status' oder
über die Konsole mit:
/etc/init.d/smb restart
Nach dem Neustart des SMB-Dienstes (Service Message Block)
sollte eine neue Freigabe vorhanden sein. In diesem Beispiel wird die
Freigabe 'HP_690' (vgl. Tabelle 3) in der Konfigurationsdatei 'smb.conf'
von Samba automatisch erstellt.
Tabelle 3: HP_690
[HP_690]
comment
HP 690
path
/var/spool/samba
creat mask
0700
printable
Yes
Hiermit wäre auf Seiten von Samba die Konfiguration abgeschlossen. Der
SMB-Dienst kann neu gestartet werden. Dies erfolgt über die Konsole mit:
/etc/init.d/smb restart
oder über 'Swat' im Menüpunkt 'Status'.
9.4 Einbinden des Druckers unter Windows
Damit Windows den bereit gestellten Drucker verwenden kann, wird der
Drucker im folgenden Schritt lokal installiert. Hierzu melden Sie sich
als Administrator auf ihrem Clienten an und öffnen die 'Systemsteuerung'.
In der Auswahlmaske wird der Punkt 'Drucker' ausgewählt. Weitere Informationen
für die Druckerinstallation müssen angegeben werden (vgl. Abbildung 20
bis 30).
Abbildung 20: Installation Drucker 1/10
Abbildung 21: Installation Drucker 2/10
Abbildung 22: Installation Drucker 3/10
Abbildung 23: Installation Drucker 4/10
Abbildung 24: Installation Drucker 5/10
Hier wird der Computer ausgewählt, an dem der Drucker angeschlossen ist.
In diesem Beispiel ist der HP-Drucker in der Arbeitsgruppe 'Home' unter
'Server' erreichbar.
Abbildung 25: Installation Drucker 6/10
Obwohl der Drucker unter Linux konfiguriert ist, muss der Windows-Client
über einen installierten Druckertreiber verfügen. Bestätigen Sie mit 'OK'
und wählen in der folgenden Eingabemaske, Fabrikat und Druckertyp aus.
Abbildung 26: Installation Drucker 7/10
Abbildung 27: Installation Drucker 8/10
Abbildung 28: Installation Drucker 9/10
Abbildung 29: Installation Drucker 10/10
Der Drucker steht fortan den Netzwerk-Clienten zur Verfügung.
Zusammenfassung
Die Druckerbereitstellung unter Windows aus Linux-Netzwerken wurde anhand
eines Beispieles erläutert. Es konnte gezeigt, dass sich eine Druckerfreigabe
nur geringfügig von einer Verzeichnisfreigabe unterscheidet. Samba stellt
einen zuverlässigen Druckerdienst zu Verfügung, der es des Weiteren ermöglicht,
zahlreiche Drucker zu Verwalten. Der Drucker wird ohne Nachteile in ein
Microsoft-Netzwerk integriert, wobei es aber teilweise zu Engpässen bei
der Druckerkonfiguration von Linux kommt.
Literatur
Wehrle, Pählke, Ritter, Müller Bechler, 2002, D Addison-Wesley Verlag
- Linux Netzwerkarchitektur
Helmut Holz, Bernd Schmitt, Andreas Tikart, 2001, D Verlag moderne industrie
Buch AG & Co.KG - Linux-Server
Roderick W. Smith, 2001, D SYBEX-Verlag - Linux Samba Server Administration
Über eventuelle Schäden übernimmt der Autor keine Haftung.