Inhalt

4. Das Starten der Daemonen

Die beiden SMB-Daemonen sind /usr/sbin/smbd und /usr/sbin/nmbd. Sie können beide mit dem Programm inetd oder als einzelne Prozesse gestartet werden. Wenn man den Rechner dauerhaft als Dateiserver konfigurieren will, dann sollten beide so von dem Programm inetd gestartet werden, daß sie automatisch neu gestartet werden, falls sie abstürzen sollten. Wenn man die SMB-Unterstützung nur gelegentlich nutzen will oder nur als Hilfe für die Systemadministration benötigt, dann können beide durch ein /etc/rc.d/init.d Skript oder auch unmittelbar durch die Eingabe von smbd und nmbd gestartet werden.

Um die Daemonen mit dem Programm inetd starten zu können, sind in die Konfigurationsdatei /etc/inetd.conf die nachfolgenden Zeilen einzutragen:

# SAMBA NetBIOS Dienste (für Datei- und Druckersharing)
netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd
netbios-ns  dgram  udp wait   root /usr/sbin/nmbd nmbd

Dann ist der inetd-Daemon erneut aufzurufen mit:

kill -HUP 1

Um die beiden Daemonen beim Hochfahren des Systems aufzurufen, ist das nachfolgende Skript als Datei /etc/rc.d/init.d/smb zu speichern und ein symbolischer Link auf die in den Kommentaren spezifizierten Dateien anzulegen:

#!/bin/sh

# /etc/rc.d/init.d/smb - Startet und beendet SMB Dienste.
#
# Die folgenden Dateien sollten symbolische Links auf
# diese Datei sein:
#
#   /etc/rc.d/rc1.d/K35smb  (Beenden bei einem Shutdown)
#   /etc/rc.d/rc3.d/S91smb  (Starten im Multiuser Modus)
#   /etc/rc.d/rc6.d/K35smb  (Beenden bei einem Reboot)
#
# Source Funktionsbibliothek.
. /etc/rc.d/init.d/functions

# Source Netzwerkkonfiguration.
. /etc/sysconfig/network

# Überprüfe, ob das Netzwerk läuft.
[ ${NETWORKING} = "no" ] && exit 0

# Wie wurde dieses Skript aufgerufen?
case "$1" in
  start)
    echo -n "Starte SMB Dienste: "
    daemon smbd -D
    daemon nmbd -D
    echo
    touch /var/lock/subsys/smb
    ;;
  stop)
    echo -n "Beende SMB Dienste: "
    killproc smbd
    killproc nmbd
    rm -f /var/lock/subsys/smb
    echo ""
    ;;
  *)
    echo "Syntax: smb {start|stop}"
    exit 1
esac


Inhalt