<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>SMB HOWTO: Eseguire i demoni</TITLE> <LINK HREF="SMB-HOWTO-6.html" REL=next> <LINK HREF="SMB-HOWTO-4.html" REL=previous> <LINK HREF="SMB-HOWTO.html#toc5" REL=contents> </HEAD> <BODY> <A HREF="SMB-HOWTO-6.html">Avanti</A> <A HREF="SMB-HOWTO-4.html">Indietro</A> <A HREF="SMB-HOWTO.html#toc5">Indice</A> <HR> <H2><A NAME="sec-daemons"></A> <A NAME="s5">5. Eseguire i demoni</A></H2> <P>I due demoni SMB sono: <CODE>/usr/sbin/smbd</CODE> e <CODE>/usr/sbin/nmbd</CODE>. Nella maggior parte delle distribuzioni, questi possono essere fatti partire, interrompere o riavviare attraverso script di avvio come <CODE>/etc/rc.d/init.d/smb</CODE> e collegati in modo simbolico agli appropriati runlevel. <P>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. <P>In entrambi i casi, è necessario verificare che il file <CODE>/etc/services</CODE> presenti linee simili a queste: <P> <BLOCKQUOTE><CODE> <HR> <PRE> 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 </PRE> <HR> </CODE></BLOCKQUOTE> <P>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 <CODE>/etc/services</CODE> non presenti tali linee. <P>Per eseguire i demoni da <CODE>inetd</CODE>, si deve aggiungere nel file di configurazione, <CODE>/etc/inetd.conf</CODE>: <P> <BLOCKQUOTE><CODE> <HR> <PRE> # 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 </PRE> <HR> </CODE></BLOCKQUOTE> <P>Quindi far ripartire il demone di <CODE>inetd</CODE> con il comando: <P> <HR> <PRE> kill -HUP `cat /var/run/inetd.pid` </PRE> <HR> <P>Per eseguire i demoni dagli script di inizializzazione del sistema, si possono mettere le istruzioni seguenti in un file chiamato <CODE>/etc/rc.d/init.d/smb</CODE> (nella maggior parte delle distribuzioni) e fare collegamenti simbolici a file indicati nei commenti: <P> <BLOCKQUOTE><CODE> <HR> <PRE> #!/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 </PRE> <HR> </CODE></BLOCKQUOTE> <P>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. <P> <HR> <A HREF="SMB-HOWTO-6.html">Avanti</A> <A HREF="SMB-HOWTO-4.html">Indietro</A> <A HREF="SMB-HOWTO.html#toc5">Indice</A> </BODY> </HTML>