Unterabschnitte

1.1 SAMBA_LPD - Unterstützung von Windows-Druck-Klienten in einem Fli4l-Netzwerk

Das Package SAMBA_LPD besteht aus den einzelnen OPT-Paketen

Obwohl die 4 OPT-Pakete zu einem Installations-Package zusammengefasst sind, ist es möglich, sie einzeln zu aktivieren oder deaktivieren. Beim Deaktivieren verliert man natürlich die Funktionalität des entsprechenden OPT-Paketes. Eine Ausnahme ist OPT_NMBD, welches nicht ohne OPT_SAMBA läuft.


Wichtig: Bei Aktivierung von OPT_LPD ist unbedingt OPT_LPDSRV='no' zu setzen!

Die einzelnen Opt-Pakete sind in den folgenden Abschnitten beschrieben.


1.1.1 OPT_SAMBA - Samba als Druckerserver

Mit OPT_SAMBA='yes' können Windows-Clients direkt über das SMB-Protokoll drucken. Es ist dann keine weitere Client-Software (bis auf den Druckertreiber) notwendig.

Wichtigste Voraussetzung zum Drucken über Samba ist aber immer die Einstellung von OPT_LPD='yes' !

Dieses optionale Paket ermöglichte ehemals rudimentäre Fileserverfunktionen. Diese Funktionen wurden entfernt, da aus Platzgründen eine sehr alte Samba-Version mit bekannten Sicherheitslücken verwendet wird, die nicht alle Funktionen der aktuellen Version unterstützt und aufgrund der eingeschränkten Nutzer- und Rechteverwaltung von fli4l sowieso nur simple Funktionen ermöglichte. Diese alte Samba-Version hatte weitere Einschränkungen, z.B. wurden Partitionen grösser als 4 GB nicht korrekt erkannt. Das spielt nun alles keine Rolle mehr, da die entsprechenden Funktionen entfernt wurden und fli4l sowieso als Router konzipiert wurde und nicht als Server mit gigabyte-grossen Festplatten. Wer einen ausgewachsenen File-Server benötigt, sollte dafür besser

http://www.eisfair.org/

verwenden. Die für dieses System intergrierte Samba-Version ist immer auf dem aktuellen Stand und hat weder Probleme mit grossen Partitionen noch mit dem Einsatz als Primary Domain Controller (PDC). Die Konfiguration lehnt sich an fli4l an und ist daher ähnlich einfach. Samba für fli4l ist vorrangig dafür gedacht, eine einfachere Druckerkonfiguration unter Windows zu ermöglichen.

Es ist möglich, Samba ohne Nmbd (NetBios NameServer, siehe OPT_NMBD) zu installieren, da beide zusammen so viel Platz verbrauchen, dass in der Regel keine 1,44 MB-Disketten mehr benutzt oder keine anderen optionalen Programme mehr verwendet werden können.

Deshalb wurden die an sich zusammengehörigen Programme auf einzelne OPT- Pakete verteilt - OPT_SAMBA und OPT_NMBD. Auch wenn diese OPT-Pakete zusammen mit OPT_LPD in einem grossen Paket stecken, können sie so einzeln aktiviert werden. Eine Ausnahme ist OPT_NMBD, welches nicht ohne OPT_SAMBA läuft.

Wer auf die Anzeige in der Netzwerkumgebung unter Windows verzichten will, setzt OPT_SAMBA='yes' und OPT_NMBD='no'. Trotzdem die Druckerfreigaben dann unter Windows nicht angezeigt werden, ist ein Zugriff darauf möglich, wenn man den genauen Pfad kennt. Dazu gibt es weiter unten unter ``Einrichtung eines Windows-SMB-Clients bei aktiviertem Samba (OPT_SAMBA='yes')'' eine genauere Beschreibung.

Wer auf die Anzeige in der Netzwerkumgebung nicht verzichten möchte, setzt

    OPT_SAMBA='yes' und OPT_NMBD='yes'.

SAMBA_WORKGROUP

Damit die Druckerfreigaben in der unter Windows definierten Arbeitsgruppe sichtbar werden, muss die Arbeitsgruppe für Samba mit der unter Windows definierten Arbeitsgruppe übereinstimmen. Wenn also unter Windows die Arbeitsgruppe ``workgroup'' heisst, muss diese Variable folgendermassen definiert werden:

    SAMBA_WORKGROUP='workgroup'

Dies ist auch die Standard-Einstellung.

SAMBA_TRUSTED_NETS

Von welchen Netzen aus ist der Zugriff auf Samba gestattet?

Mit diesem Parameter wird eingestellt, welche Netze auf Samba zugreifen dürfen. Samba ermittelt und berücksichtigt beim Erstellen einer neuen Konfiguration die internen Netze aus den Grundeinstellungen von fli4l. Aus Sicherheitsgründen wird nur Rechnern aus diesen Netzen ein Zugriff gestattet. Sollen Rechner aus anderen Netzen zugreifen dürfen, müssen diese hier gesondert konfiguriert werden. Es reicht dabei aus, nur die zusätzlichen Netze anzugeben. Die Angabe hat dabei in der Form

    NETZWERKNUMMER/ANZAHL-DER-GESETZTEN-BITS-IN-NETMASK

zu erfolgen, also z.B. fuer Netze der Form 192.168.x.0:

     SAMBA_TRUSTED_NETS='192.168.6.0/24'

Standard-Einstellung: SAMBA_TRUSTED_NETS=''

SAMBA_LOG
Logging von Fehlern in /var/log/log.smb und /var/log/log.nmb: 'yes' oder 'no'

Mit dieser Variable kann eingestellt werden, ob Aktionen in den Dateien /var/log/log.smb und /var/log/log.nmb aufgezeichnet werden sollen. Die Variable sollte nur für die Fehlersuche auf 'yes' gesetzt werden, da die Log-Dateien in die RAM-Disk geschrieben werden und deshalb die Gefahr besteht, dass diese irgendwann überläuft. SAMBA_LOG gilt gleichermassen für OPT_SAMBA und OPT_NMBD, da OPT_NMBD ohne OPT_SAMBA nicht läuft.

Standard-Einstellung: SAMBA_LOG='no'

SAMBA_LPD_PARPORT_x_NAME

Hier kann der fli4l-Druckername des Druckers am x'ten parallelen Druckerport (LPD_PARPORT_x_IO) in der Netzwerkumgebung eingestellt werden. Dazu muss selbstverständlich

    OPT_NMBD='yes'

gesetzt sein, da sonst in der Netzwerkumgebung nichts angezeigt wird. Es dürfen hier Namen hinterlegt werden, die maximal 8 Zeichen lang sind und aus Buchstaben oder Zahlen bestehen. Umlaute und Sonderzeichen wie ä, ö, ü, ß, _, @, usw. sind nicht erlaubt!

Wenn die Variable leer bleibt, wird als Druckername der voreingestellte Name verwendet. Der voreingestellte Name für lokale Drucker an parallelen Ports ist prx, wobei das x für 1, 2, 3 usw., also für den ersten, zweiten, dritten Anschluss usw. steht.

Standard-Einstellung: SAMBA_LPD_PARPORT_1_NAME=''

SAMBA_LPD_PARPORT_x_NET

Mit dieser Variable kann gesteuert werden, welche Rechner den lokalen Drucker am x'ten parallelen Port von fli4l nutzen dürfen. Man kann damit den Zugriff auf einzelne Rechner oder einzelne Subnetze beschränken. In der Standardeinstellung bleibt die Variable leer. Hiermit können alle Rechner des internen Netzwerkes (inclusive aller Subnetze) auf den x'ten Drucker drucken (siehe LPD_PARPORT_x_IO). Bei zwei an fli4l angeschlossenen lokalen Druckern an parallelen Ports müssen SAMBA_LPD_PARPORT_1_NET und SAMBA_LPD_PARPORT_2_NET vorhanden sein.

Die Variable kann so gefüllt werden:

Standard-Einstellung: SAMBA_LPD_PARPORT_1_NET=''

SAMBA_LPD_USBPORT_x_NAME

Hier kann der fli4l-Druckername des Druckers am x'ten USB-Druckerport in der Netzwerkumgebung eingestellt werden. Dazu muss selbstverständlich

    OPT_NMBD='yes'

gesetzt sein, da sonst in der Netzwerkumgebung nichts angezeigt wird. Es dürfen hier Namen hinterlegt werden, die maximal 8 Zeichen lang sind und aus Buchstaben oder Zahlen bestehen. Umlaute und Sonderzeichen wie ä, ö, ü, ß, _, @, usw. sind nicht erlaubt!

Wenn die Variable leer bleibt, wird als Druckername der voreingestellte Name verwendet. Der voreingestellte Name für lokale Drucker an USB-Ports ist usbprx, wobei das x für 1, 2, 3 usw., also für den ersten, zweiten, dritten Anschluss usw. steht.

Standard-Einstellung: SAMBA_LPD_USBPORT_1_NAME=''

SAMBA_LPD_USBPORT_x_NET

Mit dieser Variable kann gesteuert werden, welche Rechner den lokalen Drucker am x'ten USB-Port von fli4l nutzen dürfen. Man kann damit den Zugriff auf einzelne Rechner oder einzelne Subnetze beschränken. In der Standardeinstellung bleibt die Variable leer. Hiermit können alle Rechner des internen Netzwerkes (inclusive aller Subnetze) auf den x'ten USB-Drucker drucken. Möchte man explizit Hosts oder Netze für die Ausgabe auf diese Drucker eintragen, gilt das unter SAMBA_LPD_PARPORT_x_NET beschriebene.

Standard-Einstellung: SAMBA_LPD_USBPORT_1_NET=''

SAMBA_LPD_REMOTE_x_NAME

Hier kann der fli4l-Druckername des Druckers an der x'ten LPD_REMOTE_x_IP in der Netzwerkumgebung eingestellt werden. Dazu muss selbstverständlich

    OPT_NMBD='yes'

gesetzt sein, da sonst in der Netzwerkumgebung nichts angezeigt wird. Es dürfen hier Namen hinterlegt werden, die maximal 8 Zeichen lang sind und aus Buchstaben oder Zahlen bestehen. Umlaute und Sonderzeichen wie ä, ö, ü, ß, _, @, usw. sind nicht erlaubt!

Wenn die Variable leer bleibt, wird als Druckername der voreingestellte Name verwendet. Der voreingestellte Name für Remote-Drucker ist reprx, wobei das x für 1, 2, 3 usw., also für den ersten, zweiten, dritten Anschluss usw. steht.

Standard-Einstellung: SAMBA_LPD_REMOTE_1_NAME=''

SAMBA_LPD_REMOTE_x_NET

Mit dieser Variable kann gesteuert werden, welche Rechner den Remote-Drucker von fli4l nutzen dürfen. Man kann damit den Zugriff auf einzelne Rechner oder einzelne Subnetze beschränken. In der Standardeinstellung bleibt die Variable leer. Hiermit können alle Rechner des internen Netzwerkes (inclusive aller Subnetze) auf den x'ten Remote-Drucker an fli4l drucken (siehe LPD_REMOTE_x_IP). Möchte man explizit Hosts oder Netze für die Ausgabe auf diese Drucker eintragen, gilt das unter SAMBA_LPD_PARPORT_x_NET beschriebene.

Standard-Einstellung: SAMBA_LPD_REMOTE_1_NET=''

SAMBA_LPD_SMBREMOTE_x_NAME

Hier kann der fli4l-Druckername des Druckers am x'ten LPD_SMBREMOTE_x_SERVER in der Netzwerkumgebung eingestellt werden. Dazu muss selbstverständlich

    OPT_NMBD='yes'

gesetzt sein, da sonst in der Netzwerkumgebung nichts angezeigt wird. Es dürfen hier Namen hinterlegt werden, die maximal 8 Zeichen lang sind und aus Buchstaben oder Zahlen bestehen. Umlaute und Sonderzeichen wie ä, ö, ü, ß, _, @, usw. sind nicht erlaubt!

Wenn die Variable leer bleibt, wird als Druckername der voreingestellte Name verwendet. Der voreingestellte Name für SMB-Remote-Drucker ist smbreprx, wobei das x für 1, 2, 3 usw., also für den ersten, zweiten, dritten Anschluss usw. steht.

Standard-Einstellung: SAMBA_LPD_SMBREMOTE_1_NAME=''

SAMBA_LPD_SMBREMOTE_x_NET

Mit dieser Variable kann nun gesteuert werden, welche Rechner den SMB-Remote-Drucker von fli4l nutzen dürfen. Man kann damit den Zugriff auf einzelne Rechner oder einzelne Subnetze beschränken. In der Standardeinstellung bleibt die Variable leer. Hiermit können alle Rechner des internen Netzwerkes (inclusive aller Subnetze) auf den x'ten SMB-Remote-Drucker an fli4l drucken (siehe LPD_SMBREMOTE_x_SERVER). Möchte man explizit Hosts oder Netze für die Ausgabe auf diese Drucker eintragen, gilt das unter SAMBA_LPD_PARPORT_x_NET beschriebene.

Standard-Einstellung: SAMBA_LPD_SMBREMOTE_1_NET=''

Samba als Timeserver

Samba für fli4l ist als Timeserver konfiguriert. Wenn

        OPT_TIME='yes'

gesetzt wurde und auf dem Router die Uhrzeit mit Zeitservern aus dem Internet synchronisiert wird, kann man diese aktuelle Uhrzeit an die Clients weitergeben (auch wenn nicht auf jedem Client imonc installiert ist, der beim Start die Zeitsynchronisation übernehmen kann). Um die Zeit der Clients mit fli4l per Samba zu synchronisieren, reicht es aus in einer DOS-Box den Befehl

        net time \\fli4l /set /yes
einzugeben, wobei fli4l durch den Hostnamen des Routers zu ersetzen ist. Praktischer ist natürlich eine Batchdatei im Autostartordner oder eine Verknüpfung auf eine solche Batchdatei mit identischem Inhalt.


1.1.2 OPT_SAMBATOOLS - Spezielle Tools für Samba

Installiere zusätzliche Samba-Tools: 'yes' oder 'no'

Hiermit werden zusätzliche Tools für Samba installiert. Da immer wieder gefragt wurde, ob es möglich ist, Nachrichten an Windows-Clients zu senden oder Freigaben von Windows-Rechnern auf fli4l einzumounten, habe ich mich entschlossen, die entsprechenden Tools bereitzustellen.

Achtung: Diese Tools passen auf jeden Fall nicht auf eine normale Diskette. Eine Festplatten-Installation mit späterem Update ist daher Voraussetzung zur Nutzung.

Man kann bei Nutzung der Tools ohne weitergehende Kenntnisse Einiges falsch machen. Wer nicht weiss, welche Gefahren zum Beispiel beim Einmounten von Freigaben auf fli4l drohen, sollte die Finger davon lassen. Ich habe mich bemüht, einige Fehlerquellen mit Skripten auszuschliessen, die das Mounten und Dismounten von Freigaben erledigen oder Nachrichten an einen, mehrere oder alle erreichbaren Windows-Clients senden.

Weiteren Support wird es dafür von mir aber nicht geben, lest daher die Beschreibung hier genau!

Es werden folgende zusätzliche Dateien bereitgestellt:

    smbfs.o
    nls_iso8859-1.o
    nls_cp850.o
    nmblookup
    samba-dismount-smbfs
    samba-mount-smbfs
    samba-netsend
    smbclient
    smbmnt
    smbmount
    smbstatus
    smbumount
    stty

Die wichtigsten davon sind die Skripte, welche hier erklärt werden.

samba-mount-smbfs

Dieses Skript kann auf der Konsole aufgerufen werden und dient zum interaktiven Mounten von Freigaben anderer Rechner auf fli4l. Um das Skript benutzen zu können, muss Samba gestartet sein. Ist das nicht der Fall, erhaelt man eine entsprechende Warnung und das Skript wird beendet. Läuft Samba, wird zuerst der NETBIOS-Name des Rechners angegeben, dessen Freigabe man einbinden will. Diese Eingabe ist nicht case-sensitiv, was bedeutet, dass nicht auf die Gross- und Kleinschreibung geachtet werden muss. Wird der SMB-Server nicht gefunden, erhält man sofort eine entsprechende Fehlermeldung. Als nächstes ist der Name der Freigabe einzugeben. Auch diese Eingabe ist nicht case-sensitiv. Hier kann leider nicht geprüft werden, ob die Freigabe existiert, da je nach Einstellung ein Benutzername und ein Passwort fuer die Abfrage der Shares notwendig ist. Nun ist das Verzeichnis anzugeben, in welches man die Freigabe einmounten moechte. Hier ist ein absoluter Pfad im Dateisystem anzugeben. Solch ein Pfad muss immer mit einem '/', z.B.:

    /mountpoint

beginnen! Das Verzeichnis wird automatisch erstellt, wenn es nicht vorhanden ist. Wenn es schon vorhanden ist, kann es nur benutzt werden, wenn sich keinerlei Dateien oder Verzeichnisse darin befinden. Ist das Verzeichnis nicht leer, erhält man eine Fehlermeldung. Ist das Verzeichnis nicht leer, weil man hier schon eine Freigabe eingemountet hat, erhält man die Moeglichkeit, die schon gemountete Freigabe zu trennen, um die neue Freigabe statt dessen einmounten zu koennen. Das sollte man nur tun, wenn man sicher ist, dass niemand mehr auf diese Dateien zugreift! Nun müssen fuer den Zugriff noch Benutzername und Passwort angegeben werden, wenn diese fuer die Freigabe definiert wurden. Diese Angaben sind case-sensitiv! Das Passwort wird aus Sicherheitsgründen bei der Eingabe auf dem Bildschirm nicht angezeigt - man muss es also blind eintippen!

Wenn alle Angaben korrekt waren, kann man nun in dem Verzeichnis (Mountpoint) mit den Dateien arbeiten, als ob sie lokal auf dem Rechner liegen würden.

Achtung: Wurden die Dateien ohne Schreibschutz freigegeben, kann man sie natürlich auf dem entfernten Rechner löschen, indem man sie im Dateisystem auf fli4l löscht. Löscht man z.B. das Verzeichnis, in welches die Freigabe eingemountet wurde, werden ohne Schreibschutz sämtliche Dateien dieser Freigabe auf dem entfernten Rechner gelöscht!

samba-dismount-smbfs

Hierueber kann man die eingemounteten Freigaben wieder dismounten. Man hat die Wahl zwischen zwei Optionen:

1. Option

Alle Freigaben trennen. Dazu gibt man

         all
ein.

2. Option

Einzelne Freigaben trennen. Dazu gibt man die exakten Namen der Verzeichnisse an, in die sie gemountet wurden, getrennt durch ein Leerzeichen. Dazu ist es notwendig, auch das fuehrende '/' mit anzugeben. Die Eingabe ist case-sensitiv - Gross- und Kleinschreibung muss also beachtet werden, also z.B.:

         /mountpoint1 /MOUNTPOINT2

Anmerkung: Beim Herunterfahren werden die eingemounteten Filesysteme automatisch dismountet.

samba-netsend

Mit diesem Skript kann man interaktiv Nachrichten an SMB-Hosts versenden. Bei der Eingabe auf der Konsole erscheint folgende Ausgabe:

Send Message to SMB Hosts

To which SMB Hosts the message should be send?

Choice 1
--------
All SMB Hosts on configured Subnets on fli4l - type 'all'.

Choice 2
--------
fli4l Samba Clients with active connections - type 'active'.

Choice 3
--------
One ore more active SMB Hosts, type NETBIOS Names
separated with a blank, for instance 'client1 client2':

Wie man hier sieht, gibt es im ersten Schritt 3 Auswahlmoeglickeiten:

  1. Das Versenden von Nachrichten an alle SMB-Rechner an den konfigurierten Netzen des fli4l-Rechners. Da Samba bei Erstellung seiner Konfiguration auf die Datei

       /config/base.txt
    

    zugreift, werden alle Netzwerkkarten, die hier konfiguriert sind, auch in die Samba-Konfiguration eingetragen. Hieraus wird nun die Information gewonnen, in welchen Netzen nach SMB-Rechnern gesucht werden muss und an alle diese Rechner (bis auf den fli4l-Rechner selbst) die noch zu definierende Nachricht verschickt. Dabei werden die ermittelten Broadcast-Adressen und die NETBIOS-Namen der Rechner ausgegeben, an die die Nachricht verschickt wurde.

    Um diese Option zu waehlen, ist

       all
    

    einzugeben.

  2. Das Versenden von Nachrichten an alle fli4l-Samba-Clients mit aktiven Verbindungen zu fli4l - damit sind nur die gemeint, die wirklich noch Verbindungen zu fli4l-Samba offen halten.

    Hierzu ist

       active
    

    einzugeben.

  3. Das Versenden von Nachrichten an einen oder mehrere aktive SMB-Hosts. Die Rechner sind mit ihren NETBIOS-Namen anzugeben. Mehrere Rechner muessen durch ein Leerzeichen getrennt angegeben werden.

    Wurden die erforderlichen Angaben gemacht, kommen wir zum 2. Schritt:

    Send Message to SMB Hosts

    Which Message should be send? For instance 'fli4l-Samba-Server is going down in 3 Minutes ...':

    Hier gibt man nun die Nachricht ein, die gesendet werden soll. Diese Nachricht wird nur auf Clients mit aktiviertem Nachrichtendienst ausgegeben. Der Nachrichtendienst ist auf Windows-NT, Windows-2000 und Windows XP normalerweise aktiviert und muss anderenfalls nachinstalliert/aktiviert werden. Unter Windows-9x-Clients wie Windows 98 oder Windows ME muss dazu das Programm WinPopUp laufen.

Standard-Einstellung: OPT_SAMBATOOLS='no'


1.1.3 OPT_NMBD - NETBIOS Nameserver

Das ist das Programm zur Anzeige von Freigaben in der Netzwerkumgebung von Windows (benötigt OPT_SAMBA='yes'). Um die in OPT_SAMBA freigegebene Ramdisk, die fli4l-Drucker oder eigene Freigaben sichtbar zu machen, ist OPT_NMBD='yes' zu setzen.

Der SMB-Nameserver benötigt auf der fli4l-Diskette weitere 100 KB. Wenn der Platz auf der Diskette knapp wird, sollte man versuchen, ohne ihn auszukommen und die Drucker über direkte Eingabe des Netzwerkpfades einbinden, z.B. als \\fli4l\pr1.

Eine genauere Beschreibung des Zusammenspiels der beiden optionalen Programme findet sich unter OPT_SAMBA.

Standard-Einstellung: OPT_NMBD='no'

NMBD_MASTERBROWSER

Samba als Masterbrowser: 'yes' oder 'no'

Da der fli4l-Rechner bei vielen durchgehend läuft, ist es mitunter sinnvoll, ihn auch als Masterbrowser einzusetzen. Ein Masterbrowser ist in Windows-Netzwerken der Rechner, der eine Liste aller verfügbaren SMB- Server (wozu alle Windows-Rechner mit aktivierter Datei- und Druckerfreigabe gehören) führt. Die Windows-Clients erfahren also vom Masterbrowser, welche Rechner mit aktivierter Datei- und Druckerfreigabe sich im Netzwerk befinden. In Netzwerken mit einem NT- Server sollte man lieber NT diese Aufgabe überlassen. In Netzwerken mit ein paar WIN9x-Rechnern kann fli4l diese Aufgabe problemlos übernehmen.

Bei NMBD_MASTERBROWSER='yes' gewinnt fli4l die Wahl zum Masterbrowser gegen alle anderen Windowsmaschinen.

Standard-Einstellung: NMBD_MASTERBROWSER='no'

NMBD_DOMAIN_MASTERBROWSER
(benötigt NMBD_MASTERBROWSER='yes')

Samba als Domänen-Masterbrowser: 'yes' oder 'no'

Ich habe mich lange gesträubt, diese Variable mit in die Konfiguration aufzunehmen, da sie bei unsachgemässer Anwendung gefährlich ist. Aktiviert man diese Option nämlich in einem Netzwerk mit einem Domänen-Controler, der gleichzeitig immer auch Domänen-Masterbrowser ist, so ist das ein zuverlässiges Mittel, diesen Domänen-Controler zu sabotieren. In diesem Fall können die seltsamsten Effekte auftreten. Andererseits ist ein Domänen-Masterbrowser das sicherste Mittel, um netzübergreifendes Browsing zu realisieren (siehe cipe-HowTo).

Wann es notwendig wird, einen Domänen-Masterbrowser zu konfigurieren, ist nicht mit ein oder zwei Worten zu erklären. Zum Glück haben sich aber schon andere die Mühe gemacht, das verständlich darzustellen:

http://samba.sernet.de/browsing-2.html


Wichtig: Es ist ein konfigurierter WINS-Server notwendig, der allen beteiligten Rechnern bekannt sein muss, damit das Ganze funktioniert!.

Bei NMBD_DOMAIN_MASTERBROWSER='yes' versucht fli4l die Wahl zum Domänen-Masterbrowser zu gewinnen, was aber nur gelingt, wenn kein anderer Domänen-Masterbrowser existiert. Existiert ein anderer Domänen-Masterbrowser und diese Einstellung wurde gesetzt, werden definitiv Störungen im Netzwerk durch sogenannte Browse-Wars auftreten, bei denen beide Rechner versuchen, die Oberhand zu gewinnen. Wer also nicht genau weiss, ob in den beteiligten Netzen schon ein Domänen-Masterbrowser läuft, sollte die Finger von der Standardeinstellung lassen!

Standard-Einstellung: NMBD_DOMAIN_MASTERBROWSER='no'

NMBD_WINSSERVER

Samba als WINS-Server: 'yes' oder 'no'

Um NETBIOS-Namen in Windows-Netzen aufzulösen, gibt es zwei Möglichkeiten. Die erste benutzt eine statische Auflösung mit der Datei lmhosts und ist wie die DNS-Namensauflösung mit der Datei hosts schwer zu pflegen. Deshalb wurde von Microsoft WINS entwickelt: Windows Internet Name Service

WINS hat den Vorteil, dass die NETBIOS-Namensauflösung per gerichteter Anfrage an einen WINS-Server passiert und nicht durch Broadcasts. Die WINS-Datenbank wird vom Server dynamisch aufgebaut, hat aber den Nachteil, dass der Server in den TCP/IP-Protokolleigenschaften auf jedem Client eingetragen werden muss. Samba hat diesen Server teilweise implementiert und damit steht er fli4l auch zur Verfügung.

Um fli4l als WINS-Server zu betreiben, ist OPT_SAMBA, OPT_NMBD und NMBD_WINSSERVER auf yes zu setzen und in den TCP/IP- Protokolleigenschaften der Netzwerkkarte auf der Lasche WINS-Konfiguration ``WINS-Auflösung aktivieren'' auszuwählen.

Unter WINS-Server Suchreihenfolge ist dabei die IP-Adresse des fli4- Rechners zu hinterlegen, welche mit ``Hinzufügen'' übernommen werden muss.

Obwohl man hier nur die Wahl zwischen WINS ODER DHCP hat, entbindet die Angabe der IP-Adresse des fli4l-WINS-Servers nicht von einer korrekten TCP/IP-Konfiguration, entweder über Angabe der IP-Adresse jedes Clients oder über DHCP.

In Netzwerken mit einem NT-Server, auf dem der WINS-Serverdienst aktiviert ist, sollte man lieber NT diese Aufgabe überlassen. Aber in Netzwerken mit ein paar WIN9x-Rechnern kann auch fli4l diese Aufgabe problemlos übernehmen.

    NMBD_WINSSERVER='yes'

aktiviert diese Funktion. Bei installierten und aktiviertem OPT_DHCP wird bei

    NMBD_WINSSERVER='yes'

die IP-Adresse des fli4l-Rechners als IP-Adresse des Wins-Servers an die Clients übergeben.

Standard-Einstellung: NMBD_WINSSERVER='no'

NMBD_EXTWINSIP
(benötigt NMBD_WINSSERVER='no')

Die IP-Adresse des externen WINS-Servers für Samba

Wenn man, wie oben bereits erwähnt, in Netzwerken mit einem NT-Server arbeitet, sollte man diesem die Aufgabe überlassen, die WINS-Datenbank zu verwalten. Dabei kann man fli4l als WINS-Client konfigurieren. Der fli4l-Rechner versucht dann, sich bei dem konfigurierten WINS-Server zu registrieren. Hierbei ist darauf zu achten, dass fli4l nicht gleichzeitig als Server und Client konfiguriert werden kann - die Optionen

     NMBD_WINSSERVER='yes'

und

    NMBD_EXTWINSIP='IP-Adresse'

schliessen einander also aus. Eine Diskettenerstellung funktioniert sicherheitshalber bei einer solchen Konfiguration nicht. In diesem Modus arbeitet Samba ausserdem als WINS-Proxy. Das ist von Vorteil, wenn sich nicht nur WINS-Clients im Netzwerk befinden, der WINS-Server in einem anderen Netzwerk liegt und nicht per Broadcast erreichbar ist und die Nicht-WINS-Clients aber eine NETBIOS-Namensauflösung benötigen. Hierbei fängt der fli4l-Rechner Broadcasts der Nicht-WINS-Clients auf, fragt den eingetragenen WINS-Server ab und schickt die Antwort per Broadcast an den anfragenden Rechner.

Wenn man den fli4l-Rechner als WINS-Client betreiben möchte, muss man ihm die IP-Adresse des externen WINS-Servers bekanntmachen, bei dem er sich registrieren soll. Voraussetzung dafür ist NMBD_WINSSERVER='no'.

Hier ein Beispiel mit der IP-Adresse 192.168.6.11:

    NMBD_EXTWINSIP='192.168.6.11'

Bei installierten und aktiviertem OPT_DHCP wird die hier konfigurierte IP-Adresse als IP-Adresse des Wins-Servers an die Clients übergeben.

Standard-Einstellung: NMBD_EXTWINSIP=''


1.1.4 OPT_LPD - Druckerserver für lpr/lpd-Protokoll

Mit OPT_LPD='yes' kann man fli4l auch als Druckerserver verwenden. Dabei werden lpd und eine oder mehrere Druckerqueues (je nach Anzahl der an fli4l angeschlossenen Drucker) in der Ramdisk des root-Filesystems oder auf die Festplatte installiert.


Wichtig: WICHTIG: Alle Clients, die fli4l als Drucker-Server verwenden sollen, müssen in der fli4l-Konfigurationsdatei als HOST_x eingetragen sein, da aus diesen Einträgen eine Datei /etc/hosts.lpd gewonnen wird, welche der lpd konsultiert, um die druckberechtigten Clients zu ermitteln!

Damit das Drucken auch in einer Multi-User-Umgebung reibungslos funktioniert, wird der lpd-Spooler verwendet. Dabei werden die zu druckenden Daten in einem Spool-Verzeichnis zwischengelagert. Es wird für jeden Drucker ein gesondertes Spool-Verzeichnis erstellt. Diese Spoolverzeichnisse befinden sich im Hauptspeicher zusammen in der Ramdisk des root-Filesystems oder, wenn vorhanden, auf einer eingebauten Festplatte. Wenn beim Start von fli4l keine beschreibbare minix-, ext2- oder ext3-Partition gefunden wird, welche nach /data gemountet wurde, benutzt jeder konfigurierte Drucker also die Ramdisk des root-Filesystems. Bei gleichzeitigem Druck über 3 an fli4l hängende Drucker werden die Spooldateien für alle 3 Drucker in dieser Ramdisk angelegt. Man sollte dabei beachten, dass selbst bei kleinen Textdateien schon grosse Druckjobs unter Windows entstehen und diese kurzzeitig programmbedingt 2 mal in der Ramdisk liegen, wenn über Samba gedruckt wird. Damit das Drucken beim Spoolen in der Ramdisk reibungslos funktioniert, sollte man also genug Speicher im fli4l-Rechner haben - je mehr, desto besser. Wer oft grosse Dokumente drucken muss oder nicht wenigstens 4 MB Speicher allein für das Drucken übrig hat, sollte unbedingt eine Festplatteninstallation benutzen, um die Funktion des Routers nicht durch eine überlaufende Ramdisk zu beeinträchtigen. Ja, Ihr habt richtig gelesen. Passt ein Druckjob nicht in die Ramdisk, kann das dazu führen, dass der Router nicht mehr routet...

Beim Spoolen auf die Festplatte wird die Verarbeitung der Druckjobs durch den auf der Festplatte verfügbaren Speicherplatz limitiert. Dazu muss aber bei der Festplatteninstallation die Variante B ausgewählt worden sein, bei der eine ext3-Datenpartition angelegt und diese nach /data gemountet wird.

Sollten Probleme beim Druck grosser Dateien auftreten und benutzt Ihr keine Festplatteninstallation, so habt Ihr zu wenig Speicher im Router.

Daumenregel: fli4l als Standard-Router benötigt ca. 10 MB Speicherplatz (8 - 12, je nach Konfiguration). Bei 32 MB Arbeitsspeicher im Router steht der Rest für das Drucken zur Verfügung - also 32 - 10 = 22 MB. Beim Druck über Samba verringert sich der zur Verfügung stehende Platz noch einmal um die Hälfte, da die Jobs zur Druckzeit 2 mal in der Ramdisk liegen: Damit darf ein Job maximal 11 MB gross sein und bei 2 Jobs zur selben Zeit hört der Router auf zu routen... Ich empfehle für den Druck also dringend eine Festplatteninstallation.

Standard-Einstellung: OPT_LPD='no'

OPT_LPD_PARPORT

Mit OPT_LPD_PARPORT='yes' wird bestimmt, dass lokale parallele Druckerports genutzt werden sollen. Wenn man nur USB-Drucker oder Remote-Drucker betreiben möchte, kann man die Variable auf ihrer Voreinstellung belassen:

Standard-Einstellung: OPT_LPD_PARPORT='no'

LPD_PARPORT_N
(benötigt OPT_LPD_PARPORT='yes')

Über LPD_PARPORT_N wird die Anzahl der zu benutzenden lokalen parallelen Druckerports eingestellt. Bei einem Drucker an der ersten parallelen in der samba_lpd.txt konfigurierten Schnittstelle ist

    LPD_PARPORT_N='1'

einzutragen. Bei 2 Druckerports ist LPD_PARPORT_N zu inkrementieren, also

    LPD_PARPORT_N='2'

Weiterhin müssen dann auch die korrespondierenden Einstellungen LPD_PARPORT_1_IO, LPD_PARPORT_1_IRQ LPD_PARPORT_1_DMA und LPD_PARPORT_2_IO, LPD_PARPORT_2_IRQ LPD_PARPORT_2_DMA

und, wenn zusätzlich Samba genutzt wird, auch

SAMBA_LPD_PARPORT_1_NET, SAMBA_LPD_PARPORT_2_NET,

und, wenn Samba-Druckernamen vergeben werden sollen, auch

SAMBA_LPD_PARPORT_1_NAME, SAMBA_LPD_PARPORT_2_NAME,

vorhanden sein.

Standard-Einstellung: LPD_PARPORT_N='1'

LPD_PARPORT_x_IO

Mit LPD_PARPORT_x_IO wird der x'te lokale parallele Druckerport eingestellt. Bei 2 Druckern an 2 parallelen Schnittstellen von fli4l müssen 2 Einträge mit den möglichen Werten

existieren, also z.B.

    LPD_PARPORT_1_IO='0x378'

und

    LPD_PARPORT_2_IO='0x278'


Wichtig: Bisher wurden nur parallele Schnittstellen auf dem Mainboard oder auf ISA-Schnittstellenkarten mit den oben beschriebenen möglichen Werten unterstützt. PCI-Karten mit parallelen Schnittstellen konnten nicht verwendet werden.

Diese Version hier erlaubt auch die Konfiguration von parallelen Schnittstellen auf bestimmten PCI-Karten mit NETMOS-Chips. Hierzu muss man sich mittels

        cat /proc/pci
die erkannten PCI-Geräte anzeigen lassen. Hier sucht man das Gerät mit der passenden Vendor-ID und Device-ID und wählt als io-Adresse den oder die folgenden Einträge aus:

Die Konfigurationsmöglichkeit wurde eingebaut, ohne entsprechende Hardware zum Testen zur Verfügung zu haben. Daher ist das als experimentelles Feature zu betrachten. Bei Fehlern bitte ausführliche Informationen in die Newsgroup posten!

Man sollte sich vor der Konfiguration unbedingt vergewissern, auf welche io-Adressen die eingebauten Schnittstellen eingestellt sind, da der Druck sonst nicht funktioniert. Die io-Adressen kann man entweder im BIOS seines Rechners einstellen oder sie sind bei sehr alten Rechnern nicht konfigurierbar, werden aber beim Booten angezeigt. Zusätzlich verbaute Ports lassen sich meist über Jumper auf der io- Karte einstellen und werden in der (hoffentlich noch vorhandenen Dokumentation) zur Einstellung der Druckerports beschrieben.

Ausserdem ist darauf zu achten, dass bei OPT_LCD='yes' die hier eingestellten Adressen in der samba_lpd.txt nicht mit der dort eingestellten io-Adresse in LCD_ADDRESS kollidieren. Dieser Konflikt verhindert eine Diskettenerstellung!

Standard-Einstellung: LPD_PARPORT_1_IO='0x378'

LPD_PARPORT_x_IRQ

Über LPD_PARPORT_x_IRQ wird eingestellt, ob im Interruptbetrieb gedruckt werden soll, was den Prozessor entlastet. Dazu muss bei Schnittstellen auf dem Mainboard oder auf ISA-Karten aber im Rechnerbios oder per Jumperbelegung in jedem Fall der ECP/EPP-Modus konfiguriert werden. Der Interruptbetrieb wird so aktiviert:

        LPD_PARPORT_1_IRQ='yes'

Will man diesen Modus nicht nutzen, so ist

        LPD_PARPORT_1_IRQ='no'

zu setzen und bei Schnittstellen auf dem Mainboard oder auf ISA-Karten im Rechnerbios oder per Jumperbelegung in jedem Fall der Normal- oder SPP-Modus zu konfigurieren. Wenn etwas nicht funktioniert, sollte auf jeden Fall erst einmal mit

        LPD_PARPORT_1_IRQ='no'

getestet werden!

Standard-Einstellung: LPD_PARPORT_1_IRQ='no'

LPD_PARPORT_x_DMA

Über LPD_PARPORT_x_DMA wird eingestellt, ob im DMA-Betrieb gedruckt werden soll, was den Prozessor entlastet. Dazu muss bei Schnittstellen auf dem Mainboard oder auf ISA-Karten aber im Rechnerbios oder per Jumperbelegung in jedem Fall der ECP/EPP-Modus konfiguriert werden. Der Interruptbetrieb wird so aktiviert:

        LPD_PARPORT_1_DMA='yes'

Voraussetzung dafür ist

        LPD_PARPORT_1_IRQ='yes'

Will man diesen Modus nicht nutzen, so ist

        LPD_PARPORT_1_DMA='no'

zu setzen und bei Schnittstellen auf dem Mainboard oder auf ISA-Karten im Rechnerbios oder per Jumperbelegung in jedem Fall der Normal- oder SPP-Modus zu konfigurieren. Wenn etwas nicht funktioniert, sollte auf jeden Fall erst einmal mit

        LPD_PARPORT_1_DMA='no'

getestet werden!

Standard-Einstellung: LPD_PARPORT_1_DMA='no'

OPT_LPD_USBPORT

Mit OPT_LPD_USBPORT='yes' wird bestimmt, dass lokale USB-Druckerports genutzt werden sollen.

Ausserdem muss die generelle Unterstützung für USB-Drucker im separaten Paket OPT_USB eingeschaltet werden. Je nach Treiber sieht das so aus:

    OPT_USB='yes'
    USB_LOWLEVEL='uhci'
    USB_PRINTER='yes'

oder so:

    OPT_USB='yes'
    USB_LOWLEVEL='usb-ohci'
    USB_PRINTER='yes'


Wichtig: Die Konfigurationsmöglichkeit für USB-Drucker wurde eingebaut, ohne entsprechende Hardware zum Testen zur Verfügung zu haben. Daher ist das als experimentelles Feature zu betrachten. Bei Fehlern bitte ausführliche Informationen in die Newsgroup posten! Viele USB-Drucker sind GDI-Drucker. GDI-Drucker können nicht angesprochen werden. Ich werde nur Fragen zu Problemen mit USB-Druckern beantworten, aus denen hervorgeht, dass Ihr ausgeschlossen habt, dass der betroffene Drucker ein GDI-Drucker ist!

Wenn man nur Drucker an parallelen Schnittstellen oder Remote-Drucker betreiben möchte, kann man die Variable auf ihrer Voreinstellung belassen:

Standard-Einstellung: OPT_LPD_USBPORT='no'

LPD_USBPORT_N
(benötigt OPT_LPD_USBPORT='yes')

Über LPD_USBPORT_N wird die Anzahl der zu benutzenden lokalen USB-Druckerports eingestellt. Bei einem Drucker an der ersten USB-Schnittstelle ist

    LPD_USBPORT_N='1'

einzutragen. Bei 2 USB-Druckerports ist LPD_USBPORT_N zu inkrementieren, also

    LPD_USBPORT_N='2'

Weiterhin müssen bei Nutzung von Samba die korrespondierenden Einstellungen SAMBA_LPD_USBPORT_1_NET und SAMBA_LPD_USBPORT_2_NET und, wenn Samba-Druckernamen vergeben werden sollen, auch SAMBA_LPD_USBPORT_1_NAME und SAMBA_LPD_USBPORT_2_NAME vorhanden sein.


Wichtig: Wenn mehr als ein USB-Drucker verwendet wird, ist darauf zu achten, dass durch die Reihenfolge des Einschaltens der Drucker bestimmt wird, welcher Drucker der erste und welcher Drucker der zweite USB-Drucker wird. Der zweite USB-Drucker wird ausserdem automatisch zum ersten Drucker, wenn der erste USB-Drucker überhaupt nicht eingeschaltet wird. Wenn es sich um unterschiedliche Drucker-Modelle handelt, die unterschiedliche Treiber auf dem Client benötigen, kann es dadurch passieren, dass auf dem gewählten Drucker nur Zeichensalat ausgegeben wird, da der Druckjob in der Druckersprache des anderen Druckers formatiert wurde.

Standard-Einstellung: LPD_USBPORT_N='1'

OPT_LPD_REMOTE

Mit OPT_LPD_REMOTE='yes' wird bestimmt, dass Remote-Drucker (entfernte Drucker) genutzt werden sollen. Wenn man nur Drucker an lokalen parallelen oder an lokalen USB-Schnittstellen betreiben möchte, kann man die Variable auf ihrer Voreinstellung belassen:

Standard-Einstellung: OPT_LPD_REMOTE='no'

LPD_REMOTE_N
(benötigt OPT_LPD_REMOTE='yes')

Über LPD_REMOTE_N wird die Anzahl der zu konfigurierenden Remote-Drucker eingestellt. Damit ist es möglich, einen Druckauftrag von einem Client an fli4l zu schicken, der diesen Druckauftrag seinerseits an einen entfernten LPD-kompatiblen Printserver weiterleitet.

Das Ganze funktioniert auch im Zusammenspiel mit Samba. Wenn man einen Remote-Drucker über einen entfernten Printserver über fli4l ansprechen möchte, ist

    LPD_REMOTE_N='1'

einzutragen. Bei 2 entfernten Printservern oder einem entfernten Printserver mit 2 Druckerwarteschlangen ist LPD_REMOTE_N zu inkrementieren, also

    LPD_REMOTE_N='2'

Weiterhin müssen dann auch die korrespondierenden Einstellungen

und, wenn zusätzlich Samba genutzt wird, auch

vorhanden sein.

Standard-Einstellung: LPD_REMOTE_N='0'

LPD_REMOTE_x_IP

Mit LPD_REMOTE_x_IP wird die IP des x'ten Remote-Printservers eingestellt.

In der Standardeinstellung wird von einem zweiten fli4-Rechner ausgegangen, der unter der IP 192.168.6.99 erreichbar ist.

Standard-Einstellung: LPD_REMOTE_1_IP='192.168.6.99'

LPD_REMOTE_x_QUEUENAME

Mit LPD_REMOTE_x_QUEUENAME wird der Warteschlangenname des x'ten Remote-Druckers eingestellt.

In der Standardeinstellung wird von einem zweiten fli4-Rechner ausgegangen, dessen Warteschlangenname des ersten Druckers pr1 lautet.

Standard-Einstellung: LPD_REMOTE_1_QUEUENAME='pr1'

OPT_LPD_SMBREMOTE

Mit OPT_LPD_SMBREMOTE='yes' wird bestimmt, dass SMB-Remote-Drucker (entfernte SMB-Drucker) genutzt werden sollen. Das können freigegebene Drucker an Windows- oder Samba-Rechnern sein.


Wichtig: Die Konfiguration dieser Drucker macht nur einen Sinn, wenn diese entfernten SMB-Drucker zum Druckzeitpunkt eingeschaltet sind - ein Spoolen und Abspeichern der Druckjobs bis zur Wiederinbetriebname der entfernten Rechner mit diesen Druckfreigaben ist bedingt durch die Realisierung als Vorfilterskript für den lpd leider nicht möglich.

Wenn man nur Drucker an lokalen parallelen, lokalen USB-Schnittstellen oder an Remote-LPD-Printern betreiben möchte, kann man die Variable auf ihrer Voreinstellung belassen:

Standard-Einstellung: OPT_LPD_SMBREMOTE='no'

LPD_SMBREMOTE_DEBUGLEVEL
(benötigt OPT_LPD_SMBREMOTE='yes')

Über LPD_SMBREMOTE_DEBUGLEVEL wird die Anzahl von Debugmeldungen eingestellt, die beim Druck auf SMB-Remote-Printer geloggt werden sollen. Es wird immer nur der Druck einer Datei geloggt, die Logdatei /tmp/smb-print.log wird bei jedem Job neu überschrieben. Bei LPD_SMBREMOTE_DEBUGLEVEL='0' wird nicht geloggt. Wenn Probleme auftreten, sollte ein höherer Wert eingestellt werden, um anhand der Meldungen in /tmp/smb-print.log den Fehler eingrenzen zu können.

Standard-Einstellung: LPD_SMBREMOTE_DEBUGLEVEL='0'

LPD_SMBREMOTE_N
(benötigt OPT_LPD_SMBREMOTE='yes')

Über LPD_SMBREMOTE_N wird die Anzahl der zu konfigurierenden SMB-Remote-Drucker eingestellt. Damit ist es möglich, einen Druckauftrag von einem Client an fli4l zu schicken, der diesen Druckauftrag seinerseits an eine entfernten SMB-Druckerfreigabe weiterleitet.

Das Ganze funktioniert auch im Zusammenspiel mit Samba. Wenn man einen SMB-Remote-Drucker über einen entfernten Windows- oder Samba-Rechner über fli4l ansprechen möchte, ist

    LPD_SMBREMOTE_N='1'

einzutragen. Bei 2 entfernten Windows- oder Samba-Rechnern oder einem entfernten Windows- oder Samba-Rechner mit 2 Druckerfreigaben ist LPD_SMBREMOTE_N zu inkrementieren, also

    LPD_SMBREMOTE_N='2'

Weiterhin müssen dann auch die korrespondierenden Einstellungen

und, wenn zusätzlich Samba genutzt wird, auch

vorhanden und korrekt gefüllt sein.

Standard-Einstellung: LPD_SMBREMOTE_N='0'

LPD_SMBREMOTE_x_SERVER

Mit LPD_SMBREMOTE_x_SERVER wird der NETBIOS-Name des Rechners mit der x'ten Druckerfreigabe eingestellt. Dieser Name ist notwendig, da per smbclient gedruckt wird.

In der Standardeinstellung wird von einem NT-Rechner mit dem NETBIOS-Namen ``ente'' ausgegangen.

Standard-Einstellung: LPD_SMBREMOTE_1_SERVER='ente'

LPD_SMBREMOTE_x_SERVICE

Mit LPD_SMBREMOTE_x_SERVICE wird der Name der x'ten Druckerfreigabe des SMB-Remote-Druckers eingestellt. In der Standardeinstellung wird von dem Drucker-Freigabenamen ``pr2'' ausgegangen.

Standard-Einstellung: LPD_SMBREMOTE_1_SERVICE='pr2'

LPD_SMBREMOTE_x_USER

Mit LPD_SMBREMOTE_x_USER wird der Username mit Zugriff auf die x'te Druckerfreigabe eingestellt. In der Standardeinstellung wird von dem Usernamen ``king'' ausgegangen.

Standard-Einstellung: LPD_SMBREMOTE_1_USER='king'

LPD_SMBREMOTE_x_PASSWORD

Mit LPD_SMBREMOTE_x_PASSWORD wird das Passwort des x'ten Users mit Zugriff auf die Druckerfreigabe eingestellt. In der Standardeinstellung wird von dem Passwort ``kong'' ausgegangen.

Standard-Einstellung: LPD_SMBREMOTE_1_PASSWORD='kong'

LPD_SMBREMOTE_x_IP

Mit LPD_SMBREMOTE_x_IP wird die IP des Windows- oder Samba-Rechners mit der x'ten Druckerfreigabe eingestellt. In der Standardeinstellung wird von einem NT-Rechner ausgegangen, der unter der IP 192.168.0.6 erreichbar ist.

Standard-Einstellung: LPD_SMBREMOTE_1_IP='192.168.0.6'


1.1.5 Druckereinrichtung auf den Clients

Die Einrichtung der fli4l-Drucker auf den Clients richtet sich erheblich danach, ob OPT_SAMBA aktiviert wurde oder nicht und ob bei aktiviertem OPT_SAMBA auch noch OPT_NMBD aktiviert wurde oder nicht. Ausserdem gibt es auch noch Unterschiede der Client-Betriebssysteme und ihrer Möglichkeiten zu beachten. Daher gibt es für jede Konfigurationsmöglichkeit einen eigenen Abschnitt.

1.1.5.1 Einrichtung OPT_SAMBA deaktiviert

  1. Einrichtung NT

    Wenn Samba nicht genutzt wird, ist unter Windows NT 4.0/2000/XP für den Zugriff auf den LPD von fli4l die Installation der Druckdienste für Unix notwendig, da beim Drucken über den Standard-TCP/IP-Port von Windows ungeeignete Ports benutzt werden.

    Die Druckdienste für Unix können über

    Start/Einstellungen/Systemsteuerung/Software/Windows-Komponenten hinzufügen/Weitere Datei- und Druckdienste für das Netzwerk/Details/ Druckdienste für UNIX

    hinzugefügt werden.

    Damit ist ein neuer Druckerport mit dem Namen ``LPR Port'' verfügbar. Nun richtet man mit dem Druckerassistenten unter Windows NT 4.0/2000/XP einen neuen Drucker mit dem Treiber des an fli4l hängenden Druckers ein. Dazu geht man auf

    Start/Einstellungen/Drucker

    und macht einen Doppelklick auf ``Neuer Drucker''. Hier bestätigt man die Einleitung mit ``Weiter'', wählt ``Lokaler Drucker'' aus, deaktiviert ``Automatische Druckererkennung und Installation von Plug & Play-Druckern'' und bestätigt mit ``Weiter''. Unter ``Druckeranschluss auswählen'' aktiviert man ``Einen neuen Anschluss erstellen'' und wählt unter ``Typ'' den oben erstellten ``LPR Port''. Nachdem man diese Einstellungen mit dem Drücken von ``Weiter'' bestätigt hat, trägt man in das Feld ``Name oder Adresse des Servers für LPD'' die richtige IP-Adresse des fli4l-Rechners ein und schreibt in das Feld ``Name des Druckers oder der Druckerwarteschlange auf dem Server'' den Namen der richtigen Druckerqueue. Dabei ist ``prx'' für lokale Drucker an parallelen Ports, ``usbprx'' für lokale Drucker an USB-Ports, ``reprx'' für Remote-Drucker und ``smbprx'' für SMB-Remote-Drucker anzugeben, wobei das ``x'' für 1, 2, 3 für den ersten, zweiten, dritten Anschluss usw. steht. Auf dem nächsten Konfigurationsbildschirm wählt man auf der linken Seite den Hersteller des an fli4l hängenden Druckers und auf der rechten Seite den entsprechenden Typ aus und bestätigt abermals mit ``Weiter''. Im Feld ``Druckername'' kann man nun einen Namen für den Drucker festlegen. Unter Druckerfreigabe wählt man ``Diesen Drucker nicht freigeben'', da der Drucker am fli4l-Rechner freigegeben ist. Nach dem Klick auf ``Weiter'' verneint man die Frage, ob eine Testseite gedruckt werden soll, da noch nicht alle Einstellungen vorgenommen worden sind und bestätigt wieder mit ``Weiter''. Nun erscheint ein Fenster mit der Zusammenfassung der bisherigen Konfiguration. Wenn alles korrekt eingegeben wurde, drückt man ``Fertig stellen''. Nach dem Kopieren des Druckertreibers erscheint ein neues Icon für diesen Drucker im Druckerordner. Das Icon für den fli4l-Drucker klickt man mit der rechten Maustaste an und wählt aus dem Kontextmenü ``Eigenschaften''. Auf der Lasche ``Anschlüsse'' deaktiviert man ``Bidirektionale Unterstützung aktivieren''. Auf der Lasche ``Erweitert'' betätigt man die Schaltfläche ``Druckprozessor'' und stellt unter ``Druckprozessor'' ``WinPrint'', unter ``Standarddatentyp'' ``RAW'' ein und verlässt diese Dialogbox mit ``OK'' (bei Windows NT 4.0 ist hier noch ein Häckchen bei ``Raw-Datentyp immer spoolen'' zu setzen). Wieder auf der Lasche ``Erweitert'' aktiviert man ``Über Spooler drucken, um Druckvorgänge schneller abzuschliessen'' und ``Drucken beginnen, nachdem letzte Seite gespoolt wurde''. Bei ``Erweiterte Druckfunktionen aktivieren'' entfernt man den Haken, damit diese Funktionen nicht genutzt werden. Jetzt übernimmt man alle bisher gemachten Einstellungen mit der Schaltfläche ``Übernehmen'' und verlässt das komplette Konfigurationsfenster über ``OK'', da Windows NT 4.0/2000 die Einstellungen sonst nicht korrekt abspeichert.

  2. Einrichtung 9x

    Wenn nicht über Samba gedruckt werden soll, kann mit OPT_LPD lediglich ein Druckerserver für Unix-, Linux- und Windows-NT-Clients eingerichtet werden, da nur diese Betriebssysteme geeignete Client-Software mitbringen.

    Inzwischen ist es aber auch von Windows9x/Me aus möglich, mit der Freeware- Version eines LPR-Clients zu drucken, ohne das den Diskettenplatz arg strapazierende SAMBA installieren zu müssen.

    Download der LPR-Clients für Windows (es kann nicht garantiert werden, dass die Seiten noch erreichbar sind):

    http://utep.el.utwente.nl/diensten/ftd/pdf/instlpr.exe

    Dies ist die letzte freie (kostenlose) Version 3.4f des lpr-Clients für Privatanwender. Die aktuelle Version kostet Geld und findet man hier:

    http://www.utexas.edu/academic/otl/software/lpr/

    Die Installation und Konfiguration dieser Software wird für Windows 9x/Me und Windows NT 4.0/2000/XP in der Dokumentation zu OPT_LPDSRV beschrieben und wird hier nicht thematisiert. In diesem Abschnitt beschränken wir uns auf Betriebssysteme, die die LPR-Client-Funktionalität schon beinhalten.

1.1.5.2 Einrichtung OPT_SAMBA aktiviert

Die Einrichtung eines Windows-Clients für den Druck über Samba läuft unterschiedlich ab, je nachdem, ob OPT_NMBD='no' oder OPT_NMBD='yes' gewählt wurde.

  1. OPT_NMBD='no'

    Bei OPT_NMBD='no' sind die fli4l-Drucker in der Netzwerkumgebung eines Windows-PCs nicht zu sehen. Trotzdem kann man sie über ihren UNC-Pfad anmelden.

    Dazu ist es notwendig, einen Eintrag für den Router in der Datei hosts vorzunehmen. Für diese Datei findet sich bei Windows 95, Windows 98 und Windows Me ein Beispiel als host.sam im Windows-Verzeichnis, bei Standard-Installationen also in C:\WINDOWS, wobei die Endung sam für Sample wie Beispiel steht. Unter Windows NT 4.0/2000/XP befindet sich die Datei im Verzeichnis von Windows und dort im Verzeichnis SYSTEM32\DRIVERS\ETC, bei Standard-Installationen also in C:\WINNT\SYSTEM32\DRIVERS\ETC.

    Hier der Inhalt der Datei von Windows 2000:

        # Copyright (c) 1993-1999 Microsoft Corp.
        #
        # Dies ist eine HOSTS-Beispieldatei, die von Microsoft TCP/IP
        # für Windows 2000 verwendet wird.
        #
        # Diese Datei enthält die Zuordnungen der IP-Adressen zu Hostnamen.
        # Jeder Eintrag muss in einer eigenen Zeile stehen. Die IP-
        # Adresse sollte in der ersten Spalte gefolgt vom zugehörigen
        # Hostnamen stehen.
        # Die IP-Adresse und der Hostname müssen durch mindestens ein
        # Leerzeichen getrennt sein.
        #
        # Zusätzliche Kommentare (so wie in dieser Datei) können in
        # einzelnen Zeilen oder hinter dem Computernamen eingefügt werden,
        # aber müssen mit dem Zeichen '#' eingegeben werden.
        #
        # Zum Beispiel:
        #
        #      102.54.94.97     rhino.acme.com          # Quellserver
        #       38.25.63.10     x.acme.com              # x-Clienthost
    
        127.0.0.1       localhost
    

    Hier setzt man unter der letzten Zeile den Eintrag für den Router dazu. Wenn in der base.txt die IP-Adresse der Netzwerkkarte für das interne Netzwerk von fli4l z.B. so konfiguriert wurde

        IP_NET_1='192.168.6.1/24'
    

    und als Name des fli4l-Routers in

        HOST_1='192.168.6.1 fli4l'
    

    fli4l hinterlegt wurde, dann muss folgender Eintrag für die IP-Adresse und den Namen von fli4l vorgenommen werden:

    192.168.6.1 fli4l

    Nun speichert man die Datei unter dem Namen hosts ab. Dabei wird bei Benutzung von Notepad die Datei hosts.txt erzeugt. (Zur Kontrolle ist es notwendig, die Option ``Dateinamenserweiterung bei bekannten Dateitypen ausblenden'' unter Windows abzuschalten, da man diese nervige Eigenart von Notepad sonst nicht mitbekommt.) Damit die Datei wie erforderlich ``hosts'' heisst, muss man sie in ``hosts'' umbenennen. Nach einem Neustart von Windows sind die Vorbereitungen abgeschlossen.

    Bei Erstellung eines neuen Druckers (Start/Einstellungen/Drucker/ Neuer Drucker) ist ``Netzwerkdrucker'' auszuwählen. Bei ``Netzwerkpfad oder Warteschlangenname'' gibt man \\FLI4LNAME\DRUCKERNAME an. Dabei ist ``FLI4LNAME'' durch den Namen des fli4l-Routers zu ersetzen und DRUCKERNAME durch den Damen des Druckers. DRUCKERNAME ist dabei je nach Art des Anschlusses (parallel, USB, Remote) unterschiedlich. Hierbei gilt generell: ``prx'' steht für lokale Drucker an parallelen Ports, ``usbprx'' steht für lokale Drucker an USB-Ports, ``reprx'' für Remote-Drucker und ``smbreprx'' für SMB-Remote-Drucker, wobei das x für 1, 2, 3, also für den ersten, zweiten, dritten Anschluss usw. steht. Um den ersten lokalen Drucker an einem parallelen Port auszuwählen, wäre also \\fli4l\pr1 einzugeben, wenn Euer fli4l wirklich fli4l heisst. Möglicherweise habt Ihr aber auch mittels SAMBA_LPD_PARPORT_x_NAME, SAMBA_LPD_USBPORT_x_NAME, SAMBA_LPD_REMOTE_x_NAME und SAMBA_LPD_SMBREMOTE_x_NAME eigene Windows-Druckernamen vergeben, dann sind diese Namen für DRUCKERNAME einzugeben. Bei bereits installierten Druckern kann man in den Druckereigenschaften auf der Lasche ``Details'' analog zur vorher beschriebenen Vorgehensweise den neuen Anschluss eintragen, der hinterher unter ``Anschluss für die Druckausgabe'' zuzuordnen ist. Die weiteren Einstellungen sind vom Betriebssystem abhängig:

    Weiter für Windows 9x/Me:

    Auf der Lasche ``Details'' sind ausserdem die ``Spool-Einstellungen'' zu bearbeiten, man setzt dort ``Druckaufträge in Warteschlange stellen ( Druckvorgang schneller )'' und ``Druck nach letzter Seite beginnen''. Unter Datenformat wählt man ``RAW'' und setzt ausserdem ``Bidirektionale Unterstützung deaktivieren''.

    Weiter für Windows NT 4.0/2000/XP:

    Auf der Lasche ``Anschlüsse'' deaktiviert man ``Bidirektionale Unterstützung aktivieren''. Auf der Lasche ``Erweitert'' betätigt man die Schaltfläche ``Druckprozessor'' und stellt unter ``Druckprozessor'' ``WinPrint'', unter ``Standarddatentyp'' ``RAW'' ein und verlässt diese Dialogbox mit ``OK'' (bei Windows NT 4.0 ist hier noch ein Häckchen bei ``Raw-Datentyp immer spoolen'' zu setzen). Wieder auf der Lasche ``Erweitert'' aktiviert man ``Über Spooler drucken, um Druckvorgänge schneller abzuschliessen'' und ``Drucken beginnen, nachdem letzte Seite gespoolt wurde''. Bei ``Erweiterte Druckfunktionen aktivieren'' entfernt man den Haken, damit diese Funktionen nicht genutzt werden. Jetzt übernimmt man alle bisher gemachten Einstellungen mit der Schaltfläche ``Übernehmen'' und verlässt das komplette Konfigurationsfenster über ``OK'', da Windows NT 4.0/2000/XP die Einstellungen sonst nicht korrekt abspeichert.

  2. OPT_NMBD='yes'

    Bei OPT_NMBD='yes' sind die fli4l-Drucker in der Netzwerkumgebung des Windows-PCs sichtbar.

    Bei Erstellung eines neuen Druckers (Start/Einstellungen/Drucker/ Neuer Drucker) ist ``Netzwerkdrucker'' auszuwählen. Bei ``Netzwerkpfad oder Warteschlangenname'' kann man den ``Durchsuchen''-Button benutzen. Hier findet man unter dem in der base.txt definierten Namen für den fli4l- Router (HOSTNAME='fli4l') Freigaben wie ``prx'', ``usbprx'', ``reprx'' oder ``smbreprx''. prx steht für lokale Drucker an parallelen Ports, usbprx steht für lokale Drucker an USB-Ports, reprx für Remote-Drucker und smbreprx für SMB-Remote-Drucker, wobei das x für 1, 2, 3, also für den ersten, zweiten, dritten Anschluss usw. steht. Möglicherweise habt Ihr aber auch mittels SAMBA_LPD_PARPORT_x_NAME, SAMBA_LPD_USBPORT_x_NAME und SAMBA_LPD_REMOTE_x_NAME eigene Windows-Druckernamen vergeben, dann sind diese Namen hier zu sehen. Bei bereits installierten Druckern kann man in den Druckereigenschaften auf der Lasche ``Details'' analog zur vorher beschriebenen Vorgehensweise den neuen Anschluss auswählen, der hinterher unter ``Anschluss für die Druckausgabe'' zuzuordnen ist.

    Weiter für Windows 9x/Me:

    Auf der Lasche ``Details'' sind ausserdem die ``Spool-Einstellungen'' zu bearbeiten, man setzt dort ``Druckaufträge in Warteschlange stellen (Druckvorgang schneller)'' und ``Druck nach letzter Seite beginnen''. Unter Datenformat wählt man ``RAW'' und setzt ausserdem ``Bidirektionale Unterstützung deaktivieren''.

    Weiter für Windows NT 4.0/2000/XP:

    Auf der Lasche ``Anschlüsse'' deaktiviert man ``Bidirektionale Unterstützung aktivieren''. Auf der Lasche ``Erweitert'' betätigt man die Schaltfläche ``Druckprozessor'' und stellt unter ``Druckprozessor'' ``WinPrint'', unter ``Standarddatentyp'' ``RAW'' ein und verlässt diese Dialogbox mit ``OK'' (bei Windows NT 4.0 ist hier noch ein Häckchen bei ``Raw-Datentyp immer spoolen'' zu setzen). Wieder auf der Lasche ``Erweitert'' aktiviert man ``Über Spooler drucken, um Druckvorgänge schneller abzuschliessen'' und ``Drucken beginnen, nachdem letzte Seite gespoolt wurde''. Bei ``Erweiterte Druckfunktionen aktivieren'' entfernt man den Haken, damit diese Funktionen nicht genutzt werden. Jetzt übernimmt man alle bisher gemachten Einstellungen mit der Schaltfläche ``Übernehmen'' und verlässt das komplette Konfigurationsfenster über ``OK'', da Windows NT 4.0/2000/XP die Einstellungen sonst nicht korrekt abspeichert.

    Noch ein Hinweis dazu:

    Auf dem Windows-Rechner muss das Netzwerkprotokoll TCP/IP installiert und konfiguriert sein. Als Standardeinstellung muss unter Windows ``NETBIOS over TCP/IP'' aktiviert sein, das Protokoll, welches Samba benutzt.

1.1.5.3 Einrichtung eines Linux-LPR-Clients

Auf einem Linux-Rechner kann der fli4l-Netzwerkdrucker in der Datei /etc/printcap eingetragen werden.

Beispiel (Name des Druckers: ``drucker''):

    drucker:\
            :lp=:\
            :rm=fli4l:\
            :rp=pr1:\
            :sd=/var/spool/lpd/drucker:\ 
            :sh:mx#0:

Dabei wird mit ``rm=fli4l'' der Rechnername des fli4l-Routers angegeben. Dieser ist gegebenenfalls anzupassen. Soll die Linux-Drucker-Queue anders heissen, ist ``drucker'' ebenfalls anzupassen.

Der Remote-Warteschlangenname in ``rp=pr1'' lautet wie folgt:

:rp=pr1:
für den ersten an fli4l parallel angeschlossenen Drucker
:rp=pr2:
für den zweiten an fli4l parallel angeschlossenen Drucker

:rp=usbpr1:
für den ersten an fli4l per USB angeschlossenen Drucker
:rp=usbpr2:
für den zweiten an fli4l per USB angeschlossenen Drucker

:rp=repr1: bzw. :rp=repr2:
für die konfigurierten Remote- Printerserveranschlüsse

:rp=smbrepr1: bzw. :rp=smbrepr2:
für die konfigurierten SMB- Remote-Printerserveranschlüsse


Wichtig: Nach Einfügen des Eintrages in der Datei /etc/printcap muss das Verzeichnis /var/spool/lpd/drucker mit dem mkdir-Kommando selbst eingerichtet werden.

Mit dem Kommando ``lpr -P drucker DATEINAME'' kann man nun Dateien vom Linux-Rechner über fli4l ausdrucken.

Viele neuere Distributionen verwenden alternative Drucksysteme und eigene Konfigurationstools, bei denen die oben beschriebene Konfiguration misslingt. Peter Schöne hat aus diesem Grund eine Beschreibung für die in Deutschland weit verbreitete Distribution SuSE (in der Version 8.1) beigesteuert:

Unter Suse 8.1 mit dem Standarddrucksystem CUPS ist die Einrichtung sehr viel komfortabler.

Unter YAST2 wählt man aus der Rubrik Hardware die Druckerkonfiguration. Falls man die lokalen Drucker bereits eingerichtet hat, kann man die automatische Erkennung getrost überspringen ;-) Im Fenster ``Druckereinrichtung'' wählt man den Button ``Konfigurieren...'', im darauffolgenden die Rubrik ``Mehr Anschlussmöglichkeiten zeigen...'' und bestätigt durch ``Weiter''. Es werden nun verschiedene Druckertypen angezeigt. Da es sich hier um ein LPD-kompatibles Paket handelt, wählt man gleich den ersten Eintrag ``LPD-Vorfilter- und -Weiterleitungs-Warteschlange''. Nach einer erneuten Bestätigung mit ``Weiter'' gelangt man zur eigentlichen Konfiguration: Man kann sich hier, wenn man unsicher ist, den Namen des Routers durch den Button ``Lookup''-``LPD-Servers'' automatisch eintragen lassen, oder die IP-Adresse des Routers direkt eingeben. In das zweite Feld kommt der Name der Druckerwarteschlange. Dabei ist beim ersten parallel an fli4l angeschlossenen Drucker ``pr1'', beim zweiten ``pr2'', beim dritten ``pr3'', bei per USB an fli4l angeschlossenen Druckern ``usbpr1'', ``usbpr2'' usw., bzw. für die remote von fli4l angesteuerten Drucker ``repr1'', ``repr2'' usw. bzw. ``smbrepr1'', ``smbrepr2'' für die SMB-Remote-Drucker einzutragen. Ein Klick auf den Button ``Entfernten LPD-Zugang testen'' zeigt, ob die Einstellungen korrekt sind. Wird dies bestätigt, kann man im Dialog mit ``Weiter'' fortfahren. Im folgenden Fenster wird ein Namen, unter dem der Drucker aus Anwendungen heraus druckt, vergeben. Die Felder ``Beschreibung des Druckers'' und ``Standort des Druckers'' bleiben leer. Es geht noch ``Weiter'' ... Man wählt nun den am Router angeschlossenen Drucker aus, bestätigt die Auswahl, entscheidet sich für die richtigen Treiber und schließt die gesamte Konfiguration mit einem Klick auf den Button ``Beenden'' und einer Bestätigung mit ``Ja'' ab. Der Drucker ist nunmehr vollständig eigerichtet und sollte aus den meisten Anwendungen heraus drucken.

Für eine Installation unter StarOffice oder OpenOffice führt man das mitgelieferte Programm ``Drucker Verwaltung'' aus und installiert den neu hinzugekommenen Drucker als ``Generic Printer''.

1.1.5.4 Einrichtung eines Mac-Clients (MacOSX 10.3.2)

Hier öffnet man in den ``Systemeinstellungen'' das ``Drucker Dienstprogramm'' und drückt ``Hinzufügen''. Dann wird ``TCP/IP - Drucker'' ausgewählt und als Druckertyp ``LPD/LPR''. Unter ``Druckeradresse'' wird die IP-Adresse des Routers eingetragen. Nun ist der ``Name der Warteliste'' anzugeben. Dieser heisst beim ersten parallel an fli4l angeschlossenen Drucker ``pr1'', beim zweiten ``pr2'' und beim dritten ``pr3'' bzw. bei per USB an fli4l angeschlossenen Druckern ``usbpr1'', ``usbpr2'' usw., bzw. bei den Remote-Druckern ``repr1'', ``repr2'' usw. bzw. bei den SMB-Remote-Druckern ``smbrepr1'', ``smbrepr2'' usw. Dann wählt man das Druckermodell aus der Auswahlliste und klickt zum Schluss auf ``Hinzufügen''.


Das Fli4l-Team
30. Januar 2005