In Netzwerken mit Windows- und Linux-Rechnern gibt Samba den Rhythmus vor. Der Tanz beginnt, wenn Sie bequem Dateien tauschen möchten.
In Mehrpersonenhaushalten stehen heute oft gleich mehrere Computer. Meistens betreiben Vater, Mutter, Partner oder Mitbewohner einen eigenen Rechenknecht, und auf dem läuft nicht selten Windows. Um beim Austausch von Dateien nicht zu Fuß mit einem USB-Stick von Rechner zu Rechner zu eilen, gibt es Samba.
Die Software bietet nicht nur die Möglichkeit, Dateien bequem über das Netzwerk zu tauschen – die angehängten Rechner können sich sogar einen Drucker teilen (siehe Kasten Drucker teilen). Das Setting aus Abbildung 1 zeigt, wie so ein Netzwerk aussehen kann. Üblicherweise geben die Rechner einfach einen Tauschordner (auch Share genannt) im Netzwerk frei, auf den Sie – dank Samba – vom jeweils anderen System zugreifen. Sie selbst entscheiden, welche Nutzer auf den Ordner zugreifen dürfen und welche Rechte sie dabei haben.

Abbildung 1: So kann ein Netzwerk mit drei Rechnern aussehen, in dem Sie via Samba Dateien tauschen.
Drucker teilen
Mit Samba ist es prinzipiell auch möglich, einen Drucker zu teilen. Da es nicht für alle Drucker Linux-Treiber gibt, muss eine andere Lösung her. Die Kombination von Samba und Cups schafft hier Abhilfe, allerdings erfordert dieses Szenario etwas mehr Konfigurationsaufwand. Aus Platzgründen können wir diese Variante hier nicht behandeln, verweisen dafür aber auf einen im Internet zugänglichen Artikel [1], der mögliche Wege zum Drucker-Sharing erklärt. In der nächsten Ausgabe von EasyLinux wenden wir uns dem Thema zudem ausführlich zu.
Samba ist nicht die einzige Möglichkeit, um Dateien zu tauschen: Daneben gibt es noch SSH und NFS – Samba gilt in gemischten Windows-Linux-Umgebungen als Standard. Als stabil bezeichnen die Samba-Entwickler noch immer die Version 3 der Software, welche Sie bei den von EasyLinux unterstützten Distributionen einfach über den Paketmanager einspielen. Die Version 4 von Samba erscheint voraussichtlich im Jahr 2009.
Wichtig: Tanzstunden nehmen
Im Idealfall sehen sich zwei Rechner im Netz recht schnell, und der muntere Tauschreigen kann beginnen. In der Praxis lauern aber Fallstricke, daher müssen Sie im Tanzunterricht etwas Geduld zeigen. Da wären zunächst Firewalls: Windows XP hat eine an Bord, OpenSuse 10.2 und 10.3 bringen auch eine mit. Die Firewall abzuschalten, kann sich als Sicherheitsrisiko erweisen – wo es geht, passen Sie die Schutzmauer daher an die Bedürfnisse von Samba an (Abbildung 2).

Abbildung 2: Gewöhnlich richtet YaST beim Aufsetzen des Samba-Servers die Firewall automatisch ein – aber es geht auch manuell.
Als OpenSuse-Anwender müssen Sie die Firewall komplett abschalten, um fremde Samba-Freigaben zu sehen, sie kann indes weiterlaufen, wenn Sie von dort aus Samba-Freigaben anbieten. Unter Kubuntu kann unter Umständen ein installiertes iptables-Paket die Samba-Party sprengen: Schauen Sie also im Paketmanager nach der Software, die unbemerkt im Hintergrund Samba-Pakete blockiert, und deinstallieren Sie sie.
Einen weiteren Stolperstein brachte Windows XP im Test mit: Auf einem IBM-Thinkpad schwang sich eine externe WLAN-Software, die eigentlich nur den Rechner elegant mit dem Access-Point verbinden sollte, zum Netzwerk-Sheriff auf. Zwar ließen sich im Windows Explorer Ordner freigeben, die erschienen aber nie im Dateimanager des Linux-Rechners. Erst nach dem Abschalten der Netzwerksicherheit im Konfigurationsdialog der Software gab letztere den Weg für die Samba-Pakete frei – viele Köche verderben eben den Brei.
Ein zweites Problem: Dank langwieriger Verhandlungen der Samba-Rechner tauchen Tauschordner mitunter nicht sofort im Netzwerk auf – [F5] ist Ihr Freund. Mit dieser Taste aktualisieren Sie die Ansicht im Konqueror oder im Windows Explorer (Abbildung 3). Manchmal müssen Sie ein paar Mal [F5] drücken, bis der Rechner samt Freigabe erscheint.

F5 drücken, bevor eine Freigabe im Windows Explorer oder im Konqueror erscheint.” width=”300″ height=”196″ />
Abbildung 3: Mitunter müssen Sie mehrmalsF5 drücken, bevor eine Freigabe im Windows Explorer oder im Konqueror erscheint.Diese Punkte sollten Sie im Hinterkopf behalten, damit die Tanzstunde nicht zum Debakel wird. In den folgenden Beispielen gehen wir davon aus, dass Ihre Rechner an einem zentralen Router hängen, der sie per DHCP mit IP-Adressen versorgt. Andernfalls müssen Sie die IP-Adressen manuell an die einzelnen Rechner im Netzwerk vergeben. Wie das geht, lesen Sie in einem anderen EasyLinux-Artikel [2].
Darf ich bitten? Auf Freigaben zugreifen
Um von Linux aus auf einen Samba-Share im Netzwerk zuzugreifen, rufen Sie den KDE-Dateimanager Konqueror auf. In die Adressleiste geben Sie smb:/ ein und drücken [Eingabe].
In privaten Netzwerken erscheinen die Freigaben gewöhnlich nach ein paar Sekunden. Richten Sie die Freigabe in einem größeren Netzwerk mit konkurrierenden Samba-Servern ein – etwa in einer Firma, – tauchen die Shares womöglich erst nach mehreren Minuten auf. Es gibt aber auch eine Abkürzung, die der Kasten Samba-Schnellkurs zeigt.
Um von Windows XP aus auf Samba-Freigaben zuzugreifen, rufen Sie den Windows Explorer auf und wählen Netzwerkumgebung / Gesamtes Netzwerk / Microsoft Windows-Netzwerk. Nun sollten die Shares erscheinen – vorausgesetzt die Firewall spielt mit. Aufwändiger wird es, wenn Sie auf einem Rechner eine Freigabe einrichten wollen.
Samba-Schnellkurs
Um schnell zu prüfen, ob eine Samba-Freigabe funktioniert, geben Sie die IP-Adresse des Rechners, auf dem der Samba-Server läuft, direkt in die Adressleiste Ihres Dateimanagers ein (Abbildung 4). Im Konqueror tippen Sie dazu smb://IP-Adresse, im Internet-Explorer \\IP-Adresse. Dabei ersetzen Sie IP-Adresse durch die des Samba-Servers.

Abbildung 4: Um die Samba-Freigaben schnell zu erreichen, können Sie auch direkt die IP-Adresse des Samba-Servers in die Adressleiste eintragen.
OpenSuse im Tanzfieber
Glücklicherweise unterscheiden sich die Installationen eines Samba-Servers für OpenSuse 10.2 und 10.3 nur unwesentlich, weshalb die folgende Anleitung beide Distributionen abdeckt.
- Starten Sie YaST über das KDE-Startmenü (Computer / Systemeinstellungen) und rufen Sie dann über den Reiter Netzwerkdienste den Punkt Samba-Server auf.
- In der Regel teilt Ihnen OpenSuse mit, dass Sie die Pakete samba und samba-client brauchen, und installiert diese dann auch gleich (Abbildung 5). Abhängig von Ihrer Konfiguration kopiert YaST die Pakete von Ihrem Installationsmedium oder lädt sie aus dem Internet herunter.
- Anschließend will YaST den Namen für Arbeitsgruppe oder Domain wissen. Der muss für alle Rechner gleich lauten und besteht aus großen Buchstaben – beliebt ist etwa
TUXNET. -
Nach dem Klick auf Weiter wählen Sie einen Samba-Servertyp aus. Wenn Sie kein riesiges Netzwerk planen, wählen Sie hier Keinen Domänen-Controller.
Über die drei Reiter Start, Freigaben und Identität konfigurieren Sie nun den Server, wobei Sie im letzteren lediglich den Namen der Arbeitsgruppe ändern können. Im Register Start legen Sie fest, wann der Tanz beginnt: Wenn Sie es sagen (Manuell) oder einfach Beim Systemstart. Darunter konfigurieren Sie die Firewall. Klicken Sie auf Firewall-Port öffnen und wählen Sie die Netzwerkkarte aus, über die Sie ans lokale Netzwerk angeschlossen sind. Nutzen Sie ein Kabel, fällt die Wahl auf eth, eine WLAN-Karte trägt meist eine davon abweichende Bezeichnung, etwa wlan oder rausb.
Über den mittleren Reiter namens Freigaben legen Sie das Verzeichnis fest, auf das die anderen Rechner im Netz zugreifen sollen.
- Es gibt bereits eine Liste von Vorgaben. Die wählen Sie einzeln an und deaktivieren sie jeweils über Status wechseln. Für eine einfache Ordnerfreigabe brauchen Sie die Einträge nicht.
- Klicken Sie dann einfach auf Hinzufügen und geben Sie unter Freigabename einen Namen für die Freigabe ein.
- Wählen Sie den Eintrag Verzeichnis im Bereich Freigabetyp, um YaST mitzuteilen, dass Sie einen Ordner freigeben wollen.
- Unter Pfad für Freigabe geben Sie den Ordner an, den Sie im Netzwerk präsentieren wollen, etwa
/home/kkissling/freigabe, wobei Sie stattkkisslingIhren Benutzernamen verwenden. - Setzen Sie dann noch ein Kreuzchen bei Nur-Lesen, falls Ihre Samba-Tänzer gern mal aus der Reihe tanzen. Der Klick auf Beenden richtet den Samba-Server ein.
Um den Server manuell zu starten (was sich empfiehlt, wenn Sie ihn nur temporär nutzen), drücken Sie [Alt]+[F2], wodurch das Schnellstartfenster erscheint. Hier geben Sie konsole ein, um ein Terminal aufzurufen. Über su und das Root-Passwort erlangen Sie Administratorenrechte.
Zunächst richten Sie einen speziellen Samba-Benutzer ein, mit dessen Anmeldedaten sich die anderen Anwender im Netz dann bei Ihrem Samba-Server anmelden. Der Benutzer muss bereits auf Ihrem OpenSuse-System existieren, und es darf nicht der Root-Benutzer sein. Am besten verwenden Sie Ihren gewöhnlichen Benutzernamen (hier im Beispiel kkissling) und geben dann Folgendes ein:
smbpasswd -a kkissling
Das Programm smbpasswd erzeugt dank der Option -a einen neuen Samba-Anwender. Geben Sie nun zweimal dasselbe Passwort ein, das von Ihrem gewöhnlichen User-Passwort abweichen sollte – andernfalls greifen die anderen Benutzern womöglich auf Ihr Linux-Home-Verzeichnis zu.
Nun tanzen Sie Samba:
rcsmb start && rcnmb start
Der erste Befehl aktiviert den Samba-Server (rcsmb start). Läuft dieser – und nur dann (dafür sorgt der Operator &&), – startet der Befehl einen Dienst zum Auflösen von NetBIOS-Namen (rcnmb start). Nun sollten die Netzwerknutzer die Freigabe sehen. Über
rcsmb stop && rcnmb stop
beenden Sie die Samba-Dienste später wieder. Ein Tipp noch: Verändern Sie unter OpenSuse via YaST die Samba-Einstellungen, müssen Sie die beiden Serverdienste beenden und erneut starten.
Tanz den Kubuntu
Unter Kubuntu 8.04 installieren Sie über Adept (unter Startmenü / System / Adept Manager) zunächst die Pakete samba und samba-common. Anschließend öffnen Sie auch hier über [Alt]+[F2] ein Schnellstartfenster und geben kdesu kate und das Root-Passwort ein, um den Editor Kate mit Root-Rechten aufzurufen. Öffnen Sie darin nun die Datei /etc/samba/smb.conf und speichern Sie diese im selben Ordner unter dem Namen smb.conf.BACKUP. So greifen Sie im Notfall auf eine frische Samba-Konfigurationsdatei zurück.
Nun öffnen Sie erneut die Datei smb.conf und ändern den Eintrag workgroup = MSHOME zu workgroup = TUXNET oder wie Ihre netzwerkübergreifende Arbeitsgruppe heißen soll. Um das Anmelden über einen Samba-Benutzer zu erzwingen, entfernen Sie weiter unten in der Datei im Bereich Authentication das Semikolon (;)vor security = user. An das Ende der Datei gehören die Daten aus Listing 1 (Abbildung 6):
[FREIGABE] path = /home/kkissling/freigabe read only = no valid users = kkissling

Abbildung 6: Die Konfigurationsdatei öffnen Sie mit Kate und bearbeiten sie ein wenig, indem Sie am Ende diese vier Zeilen einfügen.
Die Freigabe trägt nun den Namen [FREIGABE]. Sie geben neben path den absoluten Pfad zum Verzeichnis ein, das Sie im Netzwerk anbieten (hier heißt es freigabe). Setzen Sie den Parameter read only auf no, kann der Besucher kkissling im Verzeichnis auch Dateien ablegen. Dieser kommt momentan dank valid users als einziger Nutzer an den Ordner. Sie ergänzen weitere Anwender, indem Sie die Zeile erweitern:
valid users = kkissling user2 user3
Vergessen Sie nicht: user2 und user3 müssen auf Ihrem Kubuntu-System ebenso existieren, wie die gleichnamigen Samba-Nutzer. Apropos: Zwar existiert bisher ein Systembenutzer kkissling, aber der passende Samba-Nutzer fehlt noch. Daher öffnen Sie über [Alt]+[F2] und die Eingabe von konsole eine ebensolche und legen den Samba-Nutzer kkissling an:
sudo smbpasswd -a kkissling
Geben Sie erst Ihr Benutzerpasswort ein und dann doppelt das Passwort für den zukünftigen Samba-User. Den Samba-Server rufen Sie auf der Konsole über
sudo /etc/init.d/samba start
auf und probieren, ob Sie die Freigabe von anderen Rechnern aus erreichen. Unter Ubuntu funktioniert das Ganze übrigens auf dieselbe Weise.
Windows XP
Wollen Sie von Windows XP aus nicht nur auf Linux-Rechner zugreifen, sondern auch dort Ordner freigeben, haben Sie zwei Möglichkeiten: Entweder verschieben Sie den passenden Ordner einfach in ein für alle erreichbares Verzeichnis, oder Sie richten ein kleines Heimnetzwerk ein.
Im ersten Fall rufen Sie zunächst in der Systemsteuerung den Punkt System auf. Im Reiter Computername klicken Sie auf Netzwerkkennung und dann auf Dieser Computer gehört zu einem Firmennetzwerk. Im nächsten Fenster wählen Sie Es wird ein Netzwerk ohne Domäne verwendet und geben dann als Arbeitsgruppenname etwa das schon erwähnte TUXNET an. Sie beschließen die Konfiguration über Fertig stellen und starten dann Windows neu. Alternativ passen Sie den Namen der Arbeitsgruppe einfach unter Linux an die Windows-Arbeitsgruppe an.
Im nächsten Schritt justieren Sie die interne Firewall. In der Systemsteuerung wählen Sie dazu Windows-Firewall. Wenn die Firewall Aktiv ist und kein Häkchen bei Keine Ausnahmen zulassen steht, wechseln Sie zum Reiter Ausnahmen, setzen ein Häkchen bei Datei- und Druckerfreigabe und verlassen den Dialog über OK. Bei den meisten Windows-Rechnern ist dieser Schritt allerdings nicht notwendig – weil es das Häkchen bereits gibt oder die Firewall nicht läuft.
Nun öffnen Sie den Windows Explorer und schieben den freizugebenden Ordner per Drag & Drop in das Verzeichnis C:\Dokumente und Einstellungen\All Users bzw. in Gemeinsame Ordner. Sie klicken mit der rechten Maustaste auf den Ordner, wählen Freigabe und Sicherheit aus. Dann setzen Sie ein Kreuzchen bei Netzwerkbenutzer dürfen Dateien verändern, geben noch einen Freigabenamen ein und kreuzen bei Bedarf die Option Netzwerkbenutzer dürfen Dateien verändern an. Nach einem abschließenden Klick auf OK steht der Ordner im Netzwerk. Denken Sie daran: [F5] ist Ihr Freund – unter Umständen müssen Sie die Ordneransicht mehrmals aktualisieren.
Windows-Heimnetz
Führt der obige Weg nicht zum Erfolg, richten Sie alternativ ein Heimnetzwerk ein. Wählen Sie Start / Systemsteuerung / Netzverbindungen und dann Ein Heim- oder ein kleines Firmennetzwerk einrichten. Klicken Sie zweimal auf Weiter und dann auf die Option Andere und dann die für Ihr Netzwerk passende der folgenden drei Optionen. Sie geben nun eine Computerbeschreibung (etwa “Rechner Schlafzimmer”) und einen Computernamen an (Abbildung 7). Erst dann tragen Sie – in Großbuchstaben – einen Arbeitsgruppennamen ein, z. B. TUXNET. Die nächsten Klicks auf Weiter und dann auf Nur den Assistenten fertig stellen […] beschließen die Prozedur – starten Sie den Rechner wie gewohnt neu. Nun machen Sie den passenden Ordner auf die oben erwähnte Weise über Freigabe und Sicherheit im Netzwerk sichtbar – und schieben beim anschließenden Dateientausch eine CD mit Samba-Musik in den Player.

Abbildung 7: Eine der zwei Methoden, um unter Windows XP eine Dateifreigabe zu erreichen, ist das Einrichten eines Heimnetzwerks.
Glossar
-
SSH
-
Secure Shell nennt sich ein Programm, mit dem zwei Rechner in einem Netzwerk über das gleichnamige SSH-Protokoll sicher miteinander kommunizieren. Es funktioniert plattformübergreifend nach dem Client-Server-Prinzip.
-
NFS
-
Das Network File System ist ein Dateisystem, mit dem Sie über ein Netzwerk auf Ordner fremder Rechner zugreifen. Mit diesen arbeiten Sie dann wie mit einem lokalen Verzeichnis. Auch Ressourcen von Windows-Servern lassen sich per NFS einbinden.
-
DHCP
-
Moderne Router und Switches weisen den Rechnern in einem Netzwerk über das Dynamic Host Configuration Protocol automatisch IP-Adressen zu.
[1] Via Samba einen Drucker teilen, Tim Schürmann: “Einer für alle”, LinuxUser 11/2005, S. 58 ff., http://www.linux-user.de/ausgabe/2005/11/058-cups/index.html
[2] Ein Netzwerk manuell einrichten, Marcel Hilzinger: “Vor lauter Bäumen”, EasyLinux 02/2007, S. 20 ff.


