Es hat einige Überredungskünste gekostet – doch nun ist es geschafft: Der Chef hat nachgegeben, und der Bürorechner darf neuerdings auch Linux fahren. Nun sitzt man mit seinem Linux-Kistchen zwischen all den Windows-Desktops und verzichtet freiwillig auf Outlook, weil sich sogar ein Microsoft-Exchange-Server seine Mails per POP3entlocken lässt. Unabdingbare Windows-Software erschlägt man mit VMware, dank StarOffice bereiten sogar die allgegenwärtigen MS-Office-Dokumente wenig Kopfschmerzen – nur: Wie druckt man den Krempel aus? Der Drucker nämlich steckt fest in der Microsoft-Netzwerkumgebung… Urplötzliche Begeisterung für das total papierlose Büro nimmt einer sowieso keine der Kolleg(inn)en ab, und so bleiben nur noch ein paar heimliche Überstunden, um von der druckerlosen Insel herunter zu kommen.
Der lange Weg zum Share
Dass ein Linux-Rechner mit Samba [1] zum Windows-Server wird, hat sich mittlerweile herum gesprochen – da muss es doch auch andersrum gehen. Und tatsächlich ergibt die einleitende Recherche, dass mit dem smbclient-Programm ein Kommandozeilenwerkzeug zur Verfügung steht, mit dem man auf freigegebene SMB-Shareszugreifen kann.
Wer tatsächlich kein Paket namens smbclient (Debian), samba (Red Hat), samba-client o. ä bei seiner Distribution findet, wird sich notfalls die gesamte Samba-Distribution im Sourcecode unter http://de.samba.org/samba/download.html/ herunter laden, bei der auch die Client-Programme dabei sind. Derartige Kanonen-auf-Spatzen-Kompiliererei ist jedoch nur in Ausnahmefällen nötig.
Doch was man an Kraft spart, muss man an Weg zusetzen, und so erschlägt das smbclient-Programm dann auch mit einer langen und breiten Manpage. Hier muss man schon mal einen Abend einkalkulieren, um aus dem Ganzen schlau zu werden.
So mühsam finden wir heraus, dass von uns erwartet wird, den Service-Namen des Dienstes anzugeben, den wir benutzen wollen. Hier hat gut daran getan, wer sich unter Windows den merkwürdigen \\server\druckername-"Pfad" aus den Eigenschaften des Druckericons abgeschrieben hat. Abbildung 1 zeigt das Beispiel eines Druckers namens \\FS-OEK-01\HP4P_5etg in einer Windows-98-Druckerkonfiguration.
Auf die einleitenden zwei Schrägstriche (genauer: Backslashs) folgt der NetBIOS-Name des Rechners (hier: FS-OEK-01), der ein Share frei gibt. Dieser ist nur in Ausnahmefällen derselbe wie der Internet-Rechnername – es handelt sich dabei um zwei voneinander völlig unabhängige Adressierungen. Durch einen weiteren Backslash getrennt folgt der Name des auf diesem Rechner freigegebenen Shares (im Beispiel der Drucker namens HP4P_5etg).
Sollten Sie hier partout eine Gedächtnis-(Zettel-)Lücke entdecken, wenden Sie sich an Ihren Systemadministrator… oder den Kasten "Auf der Suche nach den Diensten".
Auf der Suche nach den Diensten
Wer den Servicenamen nicht mehr ganz im Kopf hat, muss ihm zwar nicht nachlaufen, doch ohne Windows-Zweitrechner hat man lediglich die Wahl, im Kollegenkreis zu fragen oder Linux herunter und Windows herauf zu fahren um nachzusehen. Beides wäre recht schmählich – was also tun, um der Schmach zu entkommen?
Oft weiß man immerhin, in welchem IP-Adressbereich man suchen muss. Wer beispielsweise seinen Rechner im lokalen Netz mit der Netzmaske 255.255.255.0 konfiguriert hat, kann das eigene Subnetz von xxx.xxx.xxx.1 bis xxx.xxx.xxx.254 durch scannen, wobei xxx.xxx.xxx für die ersten drei Blöcke der eigenen numerischen IP-Adresse steht. Sowohl die Net-Mask als auch die "inet addr"-Nummer findet man mit dem Kommando /sbin/ifconfig im Abschnitt über das benutzte Ethernet-Device (in der Regel eth0) heraus.
Doch das Durchforsten des gewünschten IP-Bereichs ist leichter gesagt als getan – es sei denn, man hat gnomba (http://gnomba.darkcorner.net/) installiert. Mit diesem grafischen Werkzeug lassen sich unter Options/Preferences/Scan Method/IP Scan options (Abbildung 2) IP-Bereiche angeben, die sich bei angewählter IP Scan method mit File/(re)Scan auf mögliche Kandidaten hin durchforsten lassen.
Leider war das zur Drucklegung des Artikels die einzige absturzfreie Anwendungsmöglichkeit dieses Programms. Doch wer weiß? Mit dem Midnight Commander oder einem anderen, unter Options/Preferences/Command Settings/Default Command einstellbaren Dateimanager im Rücken gibt es vielleicht schon in Kürze eine Version, die den Zugriff auf SMB-Volumes ähnlich unkompliziert wie unter Windows selbst macht.
Wer bin ich?
Nun heißt es, sich an die Windows-Anmeldeprozedur für das entsprechende Share zu erinnern: Welchen Benutzernamen hatte man da? Und in welcher Arbeitsgruppe ("Workgroup") war man angemeldet?
Einmal aus der smbclient-Client-Manpage heraus gefischt, sind die benötigten Optionen leicht zu merken: -W für "Workgroup" und -U für "User". Damit hätten wir mit
smbclient \\server \sharename -W arbeitsgruppe -U SMB-benutzername
immerhin schon beinahe einen Befehl gefunden, der ausreicht, um im freigegebenen Verzeichnis namens sharename ähnlich wie mit einem Kommandozeilen-FTP-Client (ftp u. a.) herum zu stöbern.



