I due demoni SMB sono: /usr/sbin/smbd
e /usr/sbin/nmbd
.
Nella maggior parte delle distribuzioni, questi possono essere fatti
partire, interrompere o riavviare attraverso script di avvio come
/etc/rc.d/init.d/smb
e collegati in modo simbolico agli
appropriati runlevel.
Nel caso si decida di non usare i script di avvio, è possibile eseguire i demoni di Samba da inetd o come singoli processi. Samba risponderà leggermente più velocemente come demone isolato rispetto a quando eseguito tramite inetd.
In entrambi i casi, è necessario verificare che il file
/etc/services
presenti linee simili a queste:
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
Si faccia attenzione che non siano commentate. A seconda della
distribuzione usata, potrebbe anche essere necessario aggiungerle.
Samba non sarà in grado di collegarsi alle porte appropriate a meno che
il file /etc/services
non presenti tali linee.
Per eseguire i demoni da inetd
, si deve aggiungere nel file di
configurazione, /etc/inetd.conf
:
# Servizi NetBIOS SAMBA (per condivisione di file e stampanti con PC)
netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd
netbios-ns dgram udp wait root /usr/sbin/nmbd nmbd
Quindi far ripartire il demone di inetd
con il comando:
kill -HUP `cat /var/run/inetd.pid`
Per eseguire i demoni dagli script di inizializzazione del sistema, si
possono mettere le istruzioni seguenti in un file chiamato
/etc/rc.d/init.d/smb
(nella maggior parte delle distribuzioni)
e fare collegamenti simbolici a file indicati nei commenti:
#!/bin/sh
#
# /etc/rc.d/init.d/smb - inizia e termina i servizi SMB.
#
# file che seguono devono essere link simbolici a questo file:
# symlinks: /etc/rc.d/rc1.d/K35smb (termina i servizi SMB durante
# shutdown)
# /etc/rc.d/rc3.d/S91smb (inizia i servizi SMB in
# multiuser mode)
# /etc/rc.d/rc6.d/K35smb (Termina i servizi SMB prima
# di reboot)
#
# Sorgente per funzioni di libreria.
. /etc/rc.d/init.d/functions
# Sorgente per la configurazione di rete.
. /etc/sysconfig/network
# Verifica che la rete sia configurata.
[ ${NETWORKING} = "no" ] && exit 0
# Controlla il tipo di chiamata.
case "$1" in
start)
echo -n "Attivati servizi SMB: "
daemon smbd -D
daemon nmbd -D
echo
touch /var/lock/subsys/smb
;;
stop)
echo -n "Terminati servizi SMB: "
killproc smbd
killproc nmbd
rm -f /var/lock/subsys/smb
echo ""
;;
*)
echo "Uso: smb {start|stop}"
exit 1
esac
Se all'avvio di Samba si presenta un errore che segnala l'impossibilità da parte del demone a collegarsi alla porta 139, allora probabilmente è presente in esecuzione un altro processo Samba che non è stato ancora interrotto. Verificare la lista dei processi (con 'ps auxww | grep mbd') per determinare se un altro servizio Samba è in esecuzione.