[ Samba のインストール ] [FreeBSDページに戻る] [HOMEに戻る]
samba は、Windows 95/98 や NT
等とのファイル共有を提供するサービスです。
詳細は、http://samba.bento.ad.jp/
を参照してください。
[01] samba の入手
FreeBSD の CD-ROM をお持ちの人は、/packages/All
にある samba-1.9.18.10.tgz
などを使用しますので、フォルダ(
/usr/local/packages )を作って、そこへ入れて
おきます。
無い場合は、ftp.freebsd.org/pub/FreeBSD/packages-2.2.8
等から最新の samba-?.?.?
をダウンロードして、ローカルのフォルダへ持ってくる。
[02] samba のインストール
スーパーユーザー(su)となって、samba-1.9.18.10.tgz
のあるディレクトリへ移り
% pkg_add ja-samba-1.9.18.10.tgz
とすると、勝手にインストールしてくれます。
[03] smb.conf の作成
/usr/local/etc に smb.conf.default
ができていますので、これを smb.conf にコピー
しておきます。 % cp /usr/local/etc/smb.conf.default
smb.conf
コピーした smb.conf をエディタで開き、以下のように変更します。
(例) [global] workgroup = WORKGROUP # ドメイン名 server string = Samba %v (file server) # コメント hosts allow = 172.16.94. 172.16.43. 172.16.49. # 許可サブネット log file = /usr/local/etc/samba/log.%m # max log size = 1024 # security = user # password level = 8 # socket options = TCP_NODELAY # interfaces = 172.16.94.201/24 # このマシンのIP remote announce = 172.16.94.255/WORKGROUP # ブロードキャスト local master = no # os level = 33 # domain master = no # preferred master = no # wins support = yes # WINS とする場合 dns proxy = no # preserve case = yes # short preserve case = yes # default case = lower # client code page=932 # 日本語表示のため coding system=cap # 〃 ; coding system = sjis # lock directory = /usr/local/etc/samba/locks # hide dot files = yes # 特殊ファイル非表示 browseable = yes # guest account = nobody # status = yes # smbrun = /usr/local/bin/smbrun # username map = /usr/local/etc/usermap # [homes] comment = Home Directories browseable = no guest ok = no read only = no create mode = 0775 [html] # ここは、共有させたいディレクトリの名称 comment = HomePage Data # 表示させるコメント path = /html # 実際の共有ディレクトリ browseable = yes # only guest = no # create mode = 0775 # valid users = @www # グループ www の人のみ使用可能 writable = no # write list = @www # printable = no #
[04] usermap の作成
/usr/local/etc に usermap を作成する。
これは、Windows 95/98
などのネットワークログイン時のアカウント名と
FreeBSD 上
のアカウント名が異なる場合にも対応できるようにするためです。
以下の例では、= の右側の名前が Windows 等のログイン名です。
(例) tomizawa = tommy,tomi username = windowsuser,ntuser
[05] samba ディレクトリの作成
/usr/local/etc の中に samba ディレクトリを作成する。
% mkdir /usr/local/etc/samba
作成した後に、書き込み属性を付けておく。
% chmod ugo+w /usr/local/etc/samba
[06] inetd の編集
samba を起動するには、inetd によって動かすようにします。
/etc/inetd.conf を vi で開き、最後の方にある以下の行の先頭の # を削除する。
netbios-ssn stream tcp nowait root /usr/local/sbin/smbd smbd netbios-ns dgram udp wait root /usr/local/sbin/nmbd nmbd
[07] rc.d の確認
/usr/local/etc/rc.d の中に samba.sh.sample
というファイルがあったら
それを実行しないように、別の場所へ移動しておく。
% mv samba.sh.sample ../
注)デーモンとして起動させたい場合は、[06]の
inetd.conf はコメントアウト
しておき、このシェルスクリプトで起動するようにしておく。
その場合は、 samba.sh.default を samba.sh として名前を変更しておく。
[08] inetd の再起動
inetd で samba を起動させるためには、一度 reboot
するか、inetd のみを再起動
させればよい。
% ps -aux | grep inetd で ID を確認し、% kill -HUP (inetd-ID) を実行。
[09] Windows からのアクセス
上記の設定で samba を起動後に、Windows 9x/NT
等から、ネットワークコンピュータ
を開いたときに、samba
が起動している端末が出てくるかを確認する。
出てこない場合、設定を見直してみてください。
Wins サーバーとして、他に NT
などが動いている場合は、そこまで情報が伝播するのに
多少時間がかかっているのかもしれません。
自ホスト(samba)の Wins support = yes
にした場合は、hosts 又は DNS の設定を見直し
て見てください。
うまく端末が出てきたら、それをダブルクリックして開いてみて、共有設定したフォルダ
が見られればOKです。
ただし、ここまでの設定では Windows 95 の OSR 2
以降のクライアントからは、パス
ワードが違う等のメッセージが出て見られません。
Windows 95 OSR2.0
以降、ネットワークパスワード送信には、エンコードを行うように
修正されたため、samba
側がそのパスワードを認識できなくなっています。
これを防ぐためには2つの方法があります。
1つは、Windows
系のクライアント側を、従来通りプレーンテキスト形式で送信する
ようにすることです。
これには、samba
をインストールした後にできる
/usr/local/share/doc/samba の中に
NT4_PlainPassword.reg (Windows NT 4.0 用)
Win95_PlainPassword.reg (Windows 9x 用)
というファイルがありますので、このファイルをクライアント側にコピーしてきて
ダブルクリックすれば、レジストリが修正され、再起動後にプレーンテキスト形式の
送信方法に変更されます。
* 最新の samba には Win 98 や Win 2000 用が入っています。
もうひとつの方法は、samba 側を encrypt password 方式にする方法です。
これには、smb.conf の [grobal] セクションの中に
encrypt password = yes という
行を追加してください。
次に、% smbpasswd
コマンドで、それぞれのユーザーのパスワードを設定する必要が
あります。
% smbpasswd (username) とし、 username
に対するパスワードを設定してあげれば
samba もしくは inetd
の再起動後にアクセスが可能となります。