SMB のデーモンは /usr/sbin/smbd
と /usr/sbin/nmbd
の
2 つです。
Samba のデーモンを実行するやりかたは 2 つあります。inetd
から起動
する方法と、スタンドアローンのプロセスとして起動する方法です。専用のファ
イルサーバとして用いる場合は inetd
から起動する方が良いでしょう。
そうすれば何らかの理由でこれらのデーモンプロセスが死んでも、次のリクエ
ストによって再実行されます。SMB サーバサービスを時々しか利用しない(シ
ステム管理のときだけとか)ならば、/etc/rc.d/init.d
スクリプト
から実行すると良いでしょう。必要なときだけ手動で実行しても良いでしょう。
===訳注===
スピードの点からは、デーモンプロセスの方がわずかながら有利という意見も あります。また、訳者のホストで 3 ヶ月ほど Samba を使用した間、落ちたこ とはありませんでした。
==訳注終==
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 <pid of inetd>
<pid of inetd>
には inetd
のプロセス ID を入れてく
ださい。ps
コマンドで確認するか、"cat
/var/run/inetd.pid"
などでもわかります。
デーモンをシステムの起動スクリプトから実行する場合は、以下の内容を
/etc/rc.d/init.d/smb
として作製し、スクリプト中のコメントで指
定されているファイルへのシンボリックリンクを作ってください。
#!/bin/sh # # /etc/rc.d/init.d/smb - starts and stops SMB services. # # The following files should be synbolic links to this file: # symlinks: /etc/rc.d/rc1.d/K35smb (Kills SMB services on shutdown) # /etc/rc.d/rc3.d/S91smb (Starts SMB services in multiuser mode) # /etc/rc.d/rc6.d/K35smb (Kills SMB services on reboot) # # 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
===訳注===
Slackware の場合は、/etc/rc.d/rc.local
に以下のような行を追加
しておけば良いでしょう。
if [ -f /usr/sbin/nmbd ]; then echo "SAMBA servers" /usr/sbin/smbd -D /usr/sbin/nmbd -D fi
==訳注終==