Using Samba

Using Samba

Robert Eckstein, David Collier-Brown, Peter Kelly
1st Edition November 1999
1-56592-449-5, Order Number: 4495
416 pages, $34.95

Buy the hardcopy

Inhaltsverzeichnis


Previous: 2.4 Eine elementare Samba-Konfigurationsdatei Kapitel 2
Samba auf einem Unix-System installieren
Next: 2.6 Die Samba-Dämonen testen
 

2.5 Die Samba-Dämonen starten

Es gibt zwei Samba-Prozesse, smbd und nmbd, die laufen müssen, damit Samba korrekt arbeitet. Sie können auf dreierlei Arten gestartet werden:

2.5.1 Starten der Dämonen von Hand aus

Wenn du es eilig hast, kannst du die Samba-Dämonen per Hand starten. Gib einfach die folgenden Kommandos als Root ein:

# /usr/local/samba/bin/smbd -D
# /usr/local/samba/bin/nmbd -D

Sogleich wird Samba auf deinem System laufen und bereit sein, Verbindungen anzunehmen.

2.5.2 Stand-alone Dämonen

Um die Samba-Prozesse als stand-alone Dämonen zu betreiben, musst du die in der vorhergehenden Sektion angeführten Kommandos in deine Standard-Unix-Startskripten eingeben. Das variiert abhängig davon, ob du ein BSD-artiges Unix-System oder ein System V Unix besitzt.

2.5.2.1 BSD Unix

Bei einem BSD-artigen Unix musst du zur rc.local -Datei den folgenden Code hinzufügen, den man typischerweise im /etc oder /etc/rc.d -Verzeichnis findet:

if [ -x /usr/local/samba/bin/smbd]; then
	echo "Starting smbd..."
	/usr/local/samba/bin/smbd -D
	echo "Starting nmbd..."
	/usr/local/samba/bin/nmbd -D
fi

Dieser Code ist sehr einfach, er prüft, ob die smbd -Datei Freigaben ausgeführt hat, und wenn sie das tut, startet er jeden Samba-Dämon beim Booten des Systems.

2.5.2.2 System V Unix

Beim System V können die Dinge etwas komplizierter werden. Das System V verwendet typischerweise Skripts zum Starten und Stoppen der Dämonen auf dem System. Daher musst du Samba beibringen, wie es beim Starten und Stoppen vorgehen soll. Du kannst die Inhalte des Verzeichnisses /etc/rc.local modifizieren und etwas hinzufügen, ähnlich dem folgenden Programm namens smb:

#!/bin/sh

# Contains the "killproc" function on Red Hat Linux
./etc/rc.d/init.d/functions

PATH="/usr/local/samba/bin:$PATH"

case $1 in 
	'start')
		echo "Starting smbd..."
		smbd -D
		echo "Starting nmbd..."
		nmbd -D
		;;
	'stop')
		echo "Stopping smbd and nmbd..."
		killproc smbd
		killproc nmbd
		rm -f /usr/local/samba/var/locks/smbd.pid
		rm -f /usr/local/samba/var/locks/nmbd.pid
		;;
	*)
		echo "usage: smb {start|stop}"
		;;
esac

Mit diesem Skript kannst du den SMB-Dienst mit den folgenden Kommandos starten und stoppen:

# /etc/rc.local/smb start
Starting smbd...
Starting nmbd...
# /etc/rc.local/smb stop
Stopping smbd and nmbd...

2.5.3 Start über Inetd

Der inetd -Dämon ist ein Internet-"Super-Dämon" des Unix Systems. Er hört auf in /etc/services definierten TCP-Ports und führt das passende Programm für jeden Port aus, der in /etc/inetd.conf festgelegt ist. Der Vorteil dieses Schemas ist, dass du eine große Zahl Dämonen haben kannst, um Anfragen zu beantworten, aber sie müssen nicht alle laufen. An ihrer Stelle horcht der inetd -Dämon. Der Nachteil ist wenig Platz zum Erzeugen eines neuen Dämon-Prozesses und die Tatsache, dass du zwei Dateien editieren musst, um Dinge durchzuführen. Das ist praktisch, wenn du nur einen oder zwei User hast oder deine Maschine schon zu viele Dämonen hat. Es ist auch leichter, ein Upgrade durchzuführen, ohne eine bestehende Verbindung zu stören.

Wenn du über den inetd starten willst, öffne zuerst /etc/services in deinem Texteditor. Wenn du sie noch nicht eingetragen hast, ergänze die folgenden zwei Zeilen:

netbios-ssn     139/tcp
netbios-ns      137/udp

Als Nächstes editiere /etc/inetd.conf. Suche die folgenden zwei Zeilen und füge sie hinzu, wenn sie nicht existieren. Wenn du bereits smbd- und nmbd-Zeilen in der Datei hast, editiere sie, damit sie auf die neuen smbd und nmbd hinweisen, die du installiert hast. Deine Unix-Version mag eine geringfügig andere Syntax in dieser Datei verwenden; benütz die vorliegenden Einträge und die inetd.conf -man-Page als Hilfe:

netbios-ssn stream tcp nowait root /usr/local/samba/bin/smbd smbd 
netbios-ns  dgram  udp wait   root /usr/local/samba/bin/nmbd nmbd

Zum Schluss beende alle smbd oder nmbd -Prozesse und sende dem inetd-Prozess ein Hangup- (HUP) Signal. (Der inetd-Dämon liest bei einem HUP-Signal seine Konfigurationsdatei wieder ein.) Um dies zu tun, finde mit dem ps -Kommando seine Prozess-ID heraus, dann zeige sie mit dem folgenden Kommando an:

# kill -HUP process_id

Danach sollte Samba aktiv sein und laufen.


Previous: 2.4 Eine elementare Samba-Konfigurationsdatei Next: 2.6 Die Samba-Dämonen testen
2.4 Eine elementare Samba-Konfigurationsdatei Buch-Index (engl.) 2.6 Die Samba-Dämonen testen

O'Reilly Home | O'Reilly Bookstores | How to Order | O'Reilly Contacts
International | About O'Reilly | Affiliated Companies

© 1999, O'Reilly & Associates, Inc.