Вперед Назад Содержание

4. Запуск демонов

Есть два демона SMB /usr/sbin/smbd и /usr/sbin/nmbd.

Вы можете запустить демоны Samba из inetd или как автономные процессы. Samba будет отвечать чуть быстрее когда она запущена как автономный процесс, чем в случае когда она запускается из inetd.

В некоторых случаях вы должны проверить наличие в файле /etc/services примерно таких строк:


netbios-ns      137/tcp         nbns
netbios-ns      137/udp         nbns
netbios-dgm     138/tcp         nbdgm
netbios-dgm     138/udp         nbdgm
netbios-ssn     139/tcp         nbssn

Убедитесь, что все они не закоментированы. В зависимости от вашего дистрибутива, вам может даже нужно будет добавить их в этот файл. Samba не сможет привязаться к соответствующим портам пока этих строк не будет в файле /etc/services.

Для запуска демонов из inetd, поместите следующие строки в конфигурационный файл inetd, /etc/inetd.conf:


    # SAMBA NetBIOS services (for PC file and print sharing)
    netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd
    netbios-ns dgram udp wait root /usr/sbin/nmbd nmbd

Затем перезапустите демон inetd выполнив команду:


    kill -HUP 1 `cat /var/run/inetd.pid`

Для запуска демонов из системных стартовых скриптов, поместите следующий скрипт в файл /etc/rc.d/init.d/smb (для дистрибутива RedHat) и создайте на него символические ссылки с именами указанными в комментариях:


    #!/bin/sh

    #
    # /etc/rc.d/init.d/smb - запускает и останавливает сервисы SMB
    #
    # Следующие файлы должны быть символическими ссылками на этот файл:
    # symlinks: 
    #           /etc/rc.d/rc1.d/K35smb  (Убивает сервисы SMB при выключении
    #           /etc/rc.d/rc3.d/S91smb  (Запускает сервисы SMB в многопользовательском режиме)
    #           /etc/rc.d/rc6.d/K35smb  (Убивает сервисы SMB при перезагрузке)
    #

    # Source function library.
    . /etc/rc.d/init.d/functions

    # Source networking configuration.
    . /etc/sysconfig/network

    # Check that networking is up.
    [ ${NETWORKING} = "no" ] && exit 0

    # See how we were called.
    case "$1" in
      start)
        echo -n "Starting SMB services: "
        daemon smbd -D  
        daemon nmbd -D 
        echo
        touch /var/lock/subsys/smb
        ;;
      stop)
        echo -n "Shutting down SMB services: "
        killproc smbd
        killproc nmbd
        rm -f /var/lock/subsys/smb
        echo ""
        ;;
      *)
        echo "Usage: smb {start|stop}"
        exit 1
    esac

Если при старте Samba вы получаете сообщение в котором говорится, что демон не может подключится к порту 139, то вероятно у вас уже есть запущенные процессы Samba, которые не были завершены. Посмотрите список процессов (используя команду 'ps auxww | grep mbd') для того, чтобы определить есть ли еще запущенные сервисы Samba.


Вперед Назад Содержание